Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
Posted on 19-04-17, 02:13 in SNES HD mode 7
Full mod

Post: #221 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
I was reading the Reddit thread, and apparently for games that don't just project a single square (like Super Castlevania has that inside-a-barrel section) you need to turn off an option named something like "Optimize for 3D perspective", and people suggest that it's actually an option from base bsnes, not an option added by the HD patch. However, I can't see such an option in my bsnes v107.1 build, so I'm not quite sure what's going on.

> It didn't make a large difference, so I just filed it as a novelty option and moved on.

I guess you were doubling the resolution along the already-higher-resolution axis, improving the best-case and average-case while the worst-case stayed the same. Although it would be more of a hack than double-res output, quadruple-res output (i.e. hi-res, interlaced) might have been kind of cool. Not as cool as 16× output, but on the other hand I guess 16× output implies 16× software scaling, and that's *not* cool, especially if we're talking about a CPU sitting directly on my lap.

The ending of the words is ALMSIVI.
Posted on 19-04-17, 04:49 in SNES HD mode 7 (revision 1)
Full mod

Post: #222 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
> I need to undertand what his 3D perspective setting does now.

I'm guessing it's related to the way it interpolates new scanlines between each row. If you want to interpolate HD scanlines between two SNES scanlines, you need to know the configuration the game used for the upper and lower SNES scanlines to do the interpolation. However, that would require letting SNES emulation advance to the next scanline before you've drawn the previous one, and that might have implications for sprite rendering, etc. Instead, when you're rendering an interpolated scanline, you need to extrapolate the settings based on the previous two scanlines, and there are probably different ways to extrapolate depending on whether you assume it's a 3D perspective or not.

EDIT: I made an imgur gallery to demonstrate the effect of the "Optimize psuedo 3D perspective" option.

The ending of the words is ALMSIVI.
Posted on 19-04-17, 07:08 in SNES HD mode 7
Full mod

Post: #223 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
> Now I'm curious what Hyperzone does that is unusual.

My guess: It changes the tilemap every couple of frames, which would require reapplying HQ2x to the 1024×1024 Mode 7 background, bringing the PC CPU to its knees.

The ending of the words is ALMSIVI.
Posted on 19-04-18, 02:01 in SNES HD mode 7
Full mod

Post: #224 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
Posted by hunterk
For anyone who knows: what size is the final framebuffer that's coming out? it's not still 512x480, is it? That is, is it scaling up with the mode7?

There's a slider so you can pick your output resolution: 1× (disabled), 2× (480p), 3× (720p), 4× (960p). It defaults to 960p.

The ending of the words is ALMSIVI.
Posted on 19-04-18, 03:11 in SNES HD mode 7
Full mod

Post: #225 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
Somebody in the Reddit thread posted screenshots of Super Soccer, which happens to be another good example of what the Assume 3D Perspective option does.

The ending of the words is ALMSIVI.
Posted on 19-04-18, 10:53 in SNES HD mode 7 (revision 1)
Full mod

Post: #226 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
I got it to crash. Steps to reproduce:

- Boot Super Mario Kart
- Start a 1P time trial as Mario, on Mario Circuit 1
- when Lakitu shows with the traffic light, open Emulation settings, turn the scale from 240p up to 480p and untick "Perspective correction"

Backtrace:

terminate called after throwing an instance of 'nall::array<nall::Natural<15u> [256]>::operator[](unsigned int)::out_of_bounds'

Thread 1 "bsnes" received signal SIGABRT, Aborted.
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
50 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0 0x00007ffff61698bb in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1 0x00007ffff6154535 in __GI_abort () at abort.c:79
#2 0x00007ffff6570983 in () at /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#3 0x00007ffff65768c6 in () at /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4 0x00007ffff65759d9 in () at /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#5 0x00007ffff65762d5 in __gxx_personality_v0 () at /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#6 0x00007ffff6326e33 in () at /lib/x86_64-linux-gnu/libgcc_s.so.1
#7 0x00007ffff6327391 in _Unwind_RaiseException () at /lib/x86_64-linux-gnu/libgcc_s.so.1
#8 0x00007ffff6576b27 in __cxa_throw () at /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#9 0x000055555568bc6d in SuperFamicom::PPUfast::Line::renderMode7HD(SuperFamicom::PPUfast::IO::Background&, unsigned int) ()
#10 0x000055555568bfd5 in SuperFamicom::PPUfast::Line::renderMode7(SuperFamicom::PPUfast::IO::Background&, unsigned int) ()
#11 0x000055555568c7c3 in SuperFamicom::PPUfast::Line::renderBackground(SuperFamicom::PPUfast::IO::Background&, unsigned int) ()
#12 0x000055555568f79d in SuperFamicom::PPUfast::Line::render() ()
#13 0x000055555568fa90 in SuperFamicom::PPUfast::Line::flush() [clone ._omp_fn.0] ()
#14 0x00007ffff633de0f in GOMP_parallel () at /usr/lib/x86_64-linux-gnu/libgomp.so.1
#15 0x0000555555689998 in SuperFamicom::PPUfast::Line::flush() ()
#16 0x000055555568ff67 in SuperFamicom::PPUfast::writeIO(nall::Natural<24u>, nall::Natural<8u>) ()
#17 0x00005555556966e0 in nall::function<void (nall::Natural<24u>, nall::Natural<8u>)>::member<SuperFamicom::PPUfast>::operator()(nall::Natural<24u>, nall::Natural<8u>) const ()
#18 0x000055555567722f in SuperFamicom::CPU::dmaRun() ()
#19 0x0000555555677af8 in SuperFamicom::CPU::read(nall::Natural<24u>) ()
#20 0x000055555574c56c in Processor::WDC65816::instructionResetP() ()
#21 0x000055555574e317 in Processor::WDC65816::instruction() ()
#22 0x000055555567572f in SuperFamicom::CPU::main() ()
#23 0x0000555555675907 in SuperFamicom::CPU::Enter() ()
#24 0x0000555555631420 in crash ()
#25 0x0000000000000000 in ()


On the track-select screen, I can switch between resolutions and toggle "Perspective correction" with impunity. Once I reach the actual time trial, I can still switch resolutions but the moment I touch "toggle perspective", boom!

> I think the perspective option can be enhanced in the future to detect when a frame isn't really in perspective, and to disable the option for said frames. Could even design it to split the frame into multiple chunks, so eg Terranigma can be made to look good. Probably won't be trivial, though. Certainly it's above my head, mathematically.

How about using a moving average of the parameters to detect perspective changes?

- from the third to the last scanline, extrapolate from the previous two scanlines to predict the current scanline
- if the predicted value of any parameter is (configurable threshold) different from the recorded value, this scanline is the beginning of a new chunk
- once the screen is divided into chunks, treat each chunk like the current code treats the whole screen
- for interpolated scanlines between chunks, you could just leave them black, or use the extrapolated values from the previous two scanlines, or just treat that as a very tiny chunk and interpolate between the previous and next scanlines.

You don't want to make the threshold too small, or you'll reproduce the rounding errors of the original hardware too closely. You don't want to make the threshold too large, or a "curved" effect like Terranimga would wind up broken into straight segments. Hopefully there's some sensible value that works acceptably well for all games.

EDIT: /u/geearf on Reddit points out that the bsnes makefile has copied higan's "do not run make install as root" message, but (unlike higan) bsnes does not actually have any writable resources, so it should be fine to "make install" as root.

The ending of the words is ALMSIVI.
Posted on 19-04-26, 13:38 in bsnes v107.1 on macOS
Full mod

Post: #227 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
It seems the number of people with both macOS C++ development experience and SNES emulation interest is very close to zero, at least around here.

Maybe you could look on a macOS emulation forum?

The ending of the words is ALMSIVI.
Posted on 19-04-27, 04:08 in SNES HD mode 7
Full mod

Post: #228 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
I've started tracking DerKoun's releases in a branch of the unofficial higan repo, so (for example) you can review the actual beta 4 changes instead of the complete copies of modified files in the official release archive.

The ending of the words is ALMSIVI.
Posted on 19-04-27, 09:52 in romrenamer, a command-line tool for renaming with DAT files (revision 1)
Full mod

Post: #229 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
I love that No-Intro provides DAT files for all the systems they catalogue, but so far as I know the only programs for working with DAT files (certainly the most common) are CLRMamePro and RomManager, both Windows-only GUI tools. I've often wanted to look up a file or set of files in the latest No-Intro DAT file, but doing it manually is super-tedious, so I wrote my own tool, romrenamer.

All the details are in the README there, but the short version is:
romrenamer path/to/some.dat source/files/ destination/
Make sure all source files are uncompressed. Despite having "renamer" in the name, it doesn't actually *move* recognised files to the destination, it hard-links them (if possible) so it shouldn't use as much disk-space as a whole second copy of the files.

It's written in Rust, but if you don't have a Rust compiler handy, there's pre-built binaries for Linux x86_64 and for Windows x86_64.

The ending of the words is ALMSIVI.
Full mod

Post: #230 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
You handled XML files in shell and awk? You're braver than I thought.

I don't see any "ln", though, so hard-linking is still romrenamer's special feature. :)

I don't remember that particular trick, but I guess it was eight years ago. Glad to be of assistance, I guess?

The ending of the words is ALMSIVI.
Full mod

Post: #231 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
I mean, you can statically link with a library built with a weird configuration just as easily as dynamically linking.

The ending of the words is ALMSIVI.
Posted on 19-04-30, 01:59 in Conflicted bsz files [bsnes]
Full mod

Post: #232 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
Are your save-states stored somewhere that's managed by a synchronisation tool, like Google Drive, Dropbox, or SyncThing?

The ending of the words is ALMSIVI.
Posted on 19-05-05, 08:54 in I have yet to have never seen it all.
Full mod

Post: #234 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
Like KoiMaxx says, such things have been *possible* for a long time, but now they are becoming *easy*. Also, there's a difference between seeing somebody allegedly in a compromising situation, which takes some effort and stage-management to get all the right clues in-frame and tell the right story, and seeing somebody straight up "say" something in their own voice.

If you wanted to convince people that, say, NASA faked the moon landings, imagine how difficult it would be to even draw a *cartoon* that unambigously depicted NASA's complicity, versus a five-second video of the head of NASA in 1969 saying "The moon landings? Yeah, totally fake."

The ending of the words is ALMSIVI.
Posted on 19-05-05, 11:39 in Mozilla, *sigh*
Full mod

Post: #235 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
So I woke up yesterday to cries of "oh no, all our add-ons are disabled", and talk of the magic incantation that only works on Beta or Nightly channels. I deliberately didn't invoke that incantation, even though I'm on nightly, because I wanted to see what the fuss was all about.

It turns out, about 4PM Tree Style Tab disappeared, and an hour or two later it re-appeared. That was about it.

Actually, it seems that in addition, all my search engines have been removed, except for (for some reason) Amazon.com. That's going to get annoying. Oh well, I'm sure it'll be fixed in a few days' time.

Lots of people have been proclaiming the DEATH OF MOZILLA over the past day or so, which I think is a ridiculous overreaction to being mildly inconvenienced for a day or so. On the other hand, this is definitely a dent in their reputation, and Mozilla's reputation is the one place where Google can't beat them by just throwing money at the problem. I'm going to be very, very interested in the post-mortem analysis when it gets released - it better be a pretty wild chain of unlikely circumstances.

> What do you mean by "toolbar+address/search bar"?

"toolbar+address/search bar" is not the feature, the feature is that tomman wants the toolbar to appear above the tab-strip instead of below it.

Seems pretty minor to me, but people like what they're used to, I guess.

> Mozilla doesn't want any new competitors because they'd primarily threaten them, and they believe themselves to have a duty to strive to hold a position of monopoly (which, incidentally, is not even wrong).

[citation needed]

Pretty sure when Chrome first appeared on the scene, Mozilla welcomed the competition, even though Firefox was still fighting against IE at the time. Mozilla specifically does *not* strive to hold a position of monopoly, although I guess you could argue they strive to hold a position of... oligopoly?

> The only hope for the future of the web (lol, who am I kidding) is that Mozilla shoot themselves in the foot by accidentally making their browser too simple, so that they again fall victim to the downsides of open source.

I think you're confusing two ideas - if Mozilla makes their browser *UI* too simple, so that people are inspired to create forks with a more flexible UI, that doesn't make the browser *engine* simple, and the browser engine is where most of the engineering effort goes. If Mozilla made their browser engine too simple, it wouldn't render websites correctly, or at least not efficiently and correctly.

The ending of the words is ALMSIVI.
Posted on 19-05-06, 07:50 in I have yet to have never seen it all.
Full mod

Post: #236 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
> People rarely believe detached pictures without context, so why would they for videos? Even an audio recording of the head of NASA in 1969 saying "The moon landings? Yeah, totally fake." would be a bombshell if it were proven to be legitimate, and having a pretty video wouldn't do much to make it more believable.

The point is, videos provide their own context. If your video of some random guy saying "The moon landings were totally faked" isn't convincing enough, you can add a chevron bar across the bottom saying "Walter P. Kirkudbright, NASA Chief Scientist", have him standing next to somebody more recognisable who *was* around in that era like a TV news anchor... the options are much wider than a single static image would allow.

And as for people believing pretty videos, Captain Disillusion has been debunking viral videos on YouTube for a decade, and that's just goofy magic tricks and fake products done with prosumer software like Adobe AfterEffects, nothing requiring a fancy machine-learning setup.

Nobody's saying that deceit was never previously possible, or even that undetectable deceit was never previously possible. The issue is that plausible deceit is getting a whole lot cheaper, and when a technology that used to be useful-but-expensive becomes useful-and-cheap, you always get flocks of inventive and creative people coming up with new and surprising uses for it.

The ending of the words is ALMSIVI.
Posted on 19-05-07, 07:25 in I have yet to have never seen it all.
Full mod

Post: #237 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
Announcing Windows Subsystem for Linux 2

Where the first iteration of WSL was a compatibility layer for Linux binaries on top of the NT kernel (a little bit like Wine, or the Linux binary emulation that some of the BSDs have), WSL2 is a lightweight VM running a customised Linux kernel.

We’ll be building the kernel in house from the latest stable branch, based on the source available at kernel.org. In initial builds we will ship version 4.19 of the kernel.


Does anybody else remember Steve Ballmer saying Linux is a cancer? Granted, it was nearly twenty years ago, but... man, times sure do change.

The ending of the words is ALMSIVI.
Posted on 19-05-07, 09:12 in Mozilla, *sigh*
Full mod

Post: #238 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
Posted by sureanem
Mozilla considers themselves to be good (virtuous, moral), not only in the sense of making good browsers but also as a wider social mission (spreading open source, etc). So if Mozilla would have a monopoly (or, say, 80% control), they could for instance force projects like DRM to be dead on arrival. Thus, they, like any other organization in that position, do (and have the moral duty to) strive to obtain a position of monopoly, while vigorously claiming they don't, in order to easier obtain said monopoly.

Making something happen is harder than stopping something from happening. Making something happen requires everything to go right, but preventing something only requires one thing to go wrong. Mozilla would need monopoly-tier power to enforce good things, but preventing bad things like DRM requires much less power.

For example, one of the reasons for Chrome's success is that at the time it was introduced, Firefox had already achieved comfortable market share and Mozilla had started diverting resources to their wider social mission instead of putting everything into improving the browser. Looking at browser market share in 2008 on Wikipedia, when Chrome was introduced in 2008 Firefox had around 25-30% market share, and peaked in 2009 at around 30-35%. So apparently Mozilla was perfectly happy with a *way* lower market share than monopoly control.

Of course, Mozilla would never do this because they are controlled by Google and because they might even believe, as you suggested, that the means justify the ends. At any rate they seem conflict-averse (and according to the former Mozilla VP, incompetent), and as such would have no interest in improving things if it were to cause any conflict, and would rather just watch the slow decline of the web, look out for their own, and constantly point out that the choices they made were the virtuous ones.

Man, if Mozilla were happy to collect a Google paycheck and watch the slow decline of the Web, we'd all still be using SeaMonkey on the few sites that weren't entirely rendered by ActiveX controls. Heck, just look at how often and repeatedly Mozilla's tried to find *some* non-Google-based way to finance themselves without getting screamed at by the Slashdot crowd.

I think that if one is interested in fostering competition in the browser market, the best choice would be to go with Brave, not because it is technologically any different, but because it at least attempts to secure new sources of funding for itself and is not too tightly bound to either project. That it's utter garbage doesn't matter so much, since it at some point in the future might improve and because Brendan Eich is CEO of it.


Because Brave is based on Chromium, pretty much anything that works in Chrome will work fine in Brave, and Brave automatically picks up any compatibility changes Chrome makes. That's not exactly *competition* in the browser market.

Brave *is* very interesting for competition in the *website* market, since it's one of the few funding models that's distinctly different from advertising. But it doesn't help the browser market any more than Dell buying CPUs from Intel helps competition in the CPU market.

Posted by CaptainJistuce
Except with their ad network, where they've been hyping Chrome for years.

That's what I mean. Mozilla has the whole "wholly owned by a non-profit" thing which they hype. All Google's advertising dollars can't make that not true, or somehow make it true of Google too.

The ending of the words is ALMSIVI.
Posted on 19-05-07, 10:27 in Mozilla, *sigh*
Full mod

Post: #239 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
If I'm reading this Wikipedia page correctly, the "profit" in "non-profit" means "money extracted from the organisation and paid to investors", it doesn't mean "income in excess of expenses". For example, if/when the for-profit Mozilla Corporation makes money, it pays the excess as dividends to its investor/shareholder, the Mozilla Foundation. If/when the Mozilla Foundation makes money, it's not allowed to give the money away, it has to be spent to advance the Foundation's cause.

The ending of the words is ALMSIVI.
Posted on 19-05-08, 08:59 in Mozilla, *sigh*
Full mod

Post: #240 of 443
Since: 10-30-18

Last post: 863 days
Last view: 60 days
Posted by sureanem
But in retrospect, you'd agree it was a mistake to divert resources, yeah?
Mozilla clearly didn't have enough power to prevent DRM now, for instance. So it'd have been a much better idea to cut the ballast when the going got tough.

In retrospect, Mozilla squandered some of Firefox's head-start against Chrome, yes. But since Chrome was top-secret at the time, it's hard to blame them.

Again according to Wikipedia, Firefox started shipping the EME DRM plugin in mid 2016, and according to Wikipedia's historical browser stats, Firefox had about 15-20% market share at the time. So clearly that is Not Enough.

I don't think they need to find alternative funding sources. They earn half a billion a year. If they'd slim down their organization, they could save the excess and be independent in just a few years.

Mozilla positions Firefox as "the trustworthy browser that doesn't invade your privacy", which is a good thing. But Firefox is funded by Google invading Google users' privacy, and many Firefox users are also Google users, so reality is a bit murkier than the Firefox marketing material would have you believe. I don't blame them at all for wanting to diversify their income sources at all.

As for slimming the organisation, they probably could do that if they were going to be Just A Browser Vendor, but this is the ol' non-profit optimism in practice: Mozilla don't see themselves as a browser vendor, they're a non-profit who want to *use* the browser achieve their real goals. From that point of view, slimming down operations to the point where they could maintain/develop Firefox indefinitely would be just as much a failure as going broke would be.

Also, Mozilla has rejected alternative funding sources. They started blocking cryptominers by default, which raises the question, why still allow ads? With cryptominers, there's no tracking or Google, just you, your CPU, and some incredibly shady company in Germany that at least doesn't track you. No website can get suspended from Monero mining, while websites can and do get suspended from AdSense due to pornographic content, political reasons, quarrels with Google, etc. This goes for the really sleazy ad providers too (e.g. the ones that the likes of The Pirate Bay use)

So... you're proposing that Firefox charge cryptomining companies to run miners or Firefox users' computers? Why bother doing mining in JS/WebGL then, when it could be built right into Firefox?

Of course, the real issue is that advertising costs users "attention", which is a nebulous, hard-to-measure thing so people can't get too annoyed about. Cryptomining drains users' batteries, which is very clearly measured in cents-per-kilowatt-hour. Battery power is already a scarce resource for most users, so they'd be doubly annoyed at Firefox consuming more than necessary.

The only answer I can come up with is that Google threatened them into cutting their competition out. I mean, they could at least cut a deal with whatever other ad providers that aren't Google there are (Yandex?) to allow them but block Google, ostensibly due to privacy reasons.

I think we've had this discussion before, but Google is just the middleman that rakes in the cash, there's a huge constellation of advertisers and advertising service providers and advertising industry organisations that would take a built-in adblocker as a declaration of war.

It's very tempting to say "this advertising ecosystem is poisoning the ecosystem, let's starve it to death so people will invent some healthier model" but even if Mozilla were big enough to make that happen, "carrot and stick" is always more effective than "stick" alone.

The ending of the words is ALMSIVI.
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
    Main » Screwtape » List of posts
    Yes, it's an ad.