Post AqoAvlXJS7mo3LFw0W by foone@digipres.club
 (DIR) More posts by foone@digipres.club
 (DIR) Post #AqnJupSm4XhiN5nkn2 by foone@digipres.club
       2025-02-05T02:35:35Z
       
       1 likes, 0 repeats
       
       I'm hacking on Jurassic Park (SNES) (for the usual reasons) and it turns out this is one of the weird games that stores your health not as a number that goes down from some maximum, but as a number that counts up
       
 (DIR) Post #AqnKjDWKtwmNSnUi3s by foone@digipres.club
       2025-02-05T02:44:41Z
       
       1 likes, 0 repeats
       
       it's also running in a Fun video mode: 512x224! This gets stretched out to the normal aspect ratio (8:7) but it does mean the game is effectively running with pixels that are twice as tell as they are wide.
       
 (DIR) Post #AqnL6xXHz2B6q1GFua by foone@digipres.club
       2025-02-05T02:48:58Z
       
       1 likes, 0 repeats
       
       The game doesn't look like it's using super-tall pixels, though. These look pretty square to me.This is for a funny reason...
       
 (DIR) Post #AqnLIfrFXHWNUABRom by foone@digipres.club
       2025-02-05T02:51:04Z
       
       1 likes, 0 repeats
       
       If we look at a screenshot without aspect ratio correction, you'll notice that EVERY PIXEL IS DOUBLE WIDE.
       
 (DIR) Post #AqnLUvLdllod0DEw40 by foone@digipres.club
       2025-02-05T02:53:17Z
       
       1 likes, 0 repeats
       
       So they set it up so that every pixel is double-wide, then set a high-resolution width of the screen (so it runs at 512 instead of 256)Doesn't this seem like just running at 256x224 with extra steps?
       
 (DIR) Post #AqnLr1jQiQsJAiuHLc by foone@digipres.club
       2025-02-05T02:57:19Z
       
       3 likes, 4 repeats
       
       it's actually to enable a trick to get pseudo-transparency. The backgrounds & sprites are double width, but the UI isn't, because it only appears on odd-numbered columns of the display.
       
 (DIR) Post #AqnLvv7giLJg7haQj2 by foone@digipres.club
       2025-02-05T02:58:09Z
       
       1 likes, 0 repeats
       
       A zoom in
       
 (DIR) Post #AqnLyn514gwa2xhoH2 by foone@digipres.club
       2025-02-05T02:58:20Z
       
       1 likes, 0 repeats
       
       on a relatively blurry CRT this effect probably looked halfway decent
       
 (DIR) Post #AqnMktoVLHBMpZvFBI by SeasonsChange@retro.pizza
       2025-02-05T03:07:20Z
       
       0 likes, 0 repeats
       
       @foone Yup I remember this vividly! Especially the sound effects, like when the modals would pop up..."Mr Grant!"I think one of the few things holding this game back from being "great" is being unable to save your progress and come back to it later.
       
 (DIR) Post #AqnMuKiMh6rsrwY6KW by tekhedd@byteheaven.net
       2025-02-05T03:08:59Z
       
       0 likes, 0 repeats
       
       @foone TBH it looks pretty good on my cell without glasses. Don't forget that CRTs were also tiny by modern standards. 😁
       
 (DIR) Post #AqnOJxiCwJw50lGBsG by gregly@retro.pizza
       2025-02-05T03:24:49Z
       
       0 likes, 0 repeats
       
       @foone At 512 pixels per line I wonder if NTSC artifact color was an issue. The 10.74MHz dot clock (according to pineight.com) is 3x the color subcarrier frequency so I’d expect this effect to result in some banding on composite displays, no?
       
 (DIR) Post #AqnP2dAe9syYKorV8S by foone@digipres.club
       2025-02-05T03:32:57Z
       
       1 likes, 0 repeats
       
       This fucker seems to encode each portrait with a separate palette. That's especially annoying because ALL THESE PORTRAITS ARE GREYSCALE
       
 (DIR) Post #AqnaPDzn1Y9aPalAi8 by foone@digipres.club
       2025-02-05T05:40:20Z
       
       0 likes, 0 repeats
       
       @soviut I don't think so, it seems to load a different palette for each layer, so that shouldn't be needed
       
 (DIR) Post #Aqncrke9QD1ph4MvRY by bmartin427@techhub.social
       2025-02-05T06:07:46Z
       
       0 likes, 0 repeats
       
       @foone Any idea why they did this instead of using the actual SNES transparency?
       
 (DIR) Post #Aqnd83gwNeyjOURvea by foone@digipres.club
       2025-02-05T06:10:47Z
       
       0 likes, 0 repeats
       
       @bmartin427 I think this is more flexible than the SNES's built in transparency
       
 (DIR) Post #AqnfkKf1wCWKw3vxzc by gkrnours@mastodon.gamedev.place
       2025-02-05T06:40:01Z
       
       0 likes, 0 repeats
       
       @foone in small thumbnail on smartphone too
       
 (DIR) Post #AqnmCtWCWyyqsTo5h2 by dev_ric@fosstodon.org
       2025-02-05T07:52:26Z
       
       0 likes, 0 repeats
       
       @foone back in the 90s when I was just mentally deconstructing the games I played and learning to code by recreating bits of them, I saw transparency for the first time in, I think, the park advisor speech bubble things in Theme Park. I had no idea how they'd done it - alpha channels weren't a thing in anything I used back then, and just adding RGB values of 2 colours obviously gave weird results. So this is what I ended up doing - skipping even pixels of odd rows and odd pixels of even rows. 😁
       
 (DIR) Post #AqnnpkTwA7ao6Dq4nY by exec@furry.engineer
       2025-02-05T08:10:36Z
       
       0 likes, 0 repeats
       
       @foone In modern times Final Fantasy XIV actually uses the same thing to achieve cheap transparency (albeit with 3D models):
       
 (DIR) Post #AqnpMYKGTkSbuOWLnE by foone@digipres.club
       2025-02-05T08:27:55Z
       
       0 likes, 0 repeats
       
       @dev_ric which version was that? PC or genesis or?
       
 (DIR) Post #AqnpuMnTqhEjzyJHKS by dev_ric@fosstodon.org
       2025-02-05T08:33:57Z
       
       0 likes, 0 repeats
       
       @foone I had the Jaguar version, but looking at screenshots now, it didn't have transparent speech bubbles so I must be misremembering. It was definitely, 100%, bottom of the screen speech bubbles in something though, that I'd seen and wanted to replicate.As a programmer I only had a PC with QB, and MS Paint to play with, so transparency in any format was mind blowing to me!
       
 (DIR) Post #AqnsPDhlu2PsgYTmsq by JoshJers@peoplemaking.games
       2025-02-05T09:01:43Z
       
       0 likes, 0 repeats
       
       @foone Yep! The stripes are at a higher frequency than the NTSC color carrier wave, so via component cables (or using the RF modulator), but because there *is* color information there, it blends together in not-quite-true-alpha-blending ways to something that very much approximates it, thanks to the need to separate chroma/luma.Here's some examples run through my NTSC filter.The stripes would have been visible if using S-Video (or RGB), however. No chroma/luma crosstalk in those.
       
 (DIR) Post #Aqny6HBNLh9ph3g0Tw by jesusmargar@mastodon.social
       2025-02-05T10:05:34Z
       
       0 likes, 0 repeats
       
       @foone what are the reasons?
       
 (DIR) Post #Aqo1yfNltElkFS6Lzs by deetwenty@todon.nl
       2025-02-05T10:49:09Z
       
       0 likes, 0 repeats
       
       @foone Even on a modern (reasonable high DPI) screen it doesn't look bad (can even see how in certain context it might be aesthetically more appropriate), it is just a lot clearer to see how it was done, and certainly not how it would be done today.
       
 (DIR) Post #Aqo2XLtgKNmpx1ZCEK by foone@digipres.club
       2025-02-05T10:55:29Z
       
       0 likes, 0 repeats
       
       you're not my dad, don't tell me how to live my life
       
 (DIR) Post #AqoACzkRlaqF6C3E4e by foone@digipres.club
       2025-02-05T12:21:20Z
       
       0 likes, 0 repeats
       
       I've got a partial disassembly project and I still haven't figured out how to inject text into this or extract the font! https://github.com/Yoshifanatic1/Jurassic-Park-1-SNES-disassembly
       
 (DIR) Post #AqoAvlXJS7mo3LFw0W by foone@digipres.club
       2025-02-05T12:29:34Z
       
       0 likes, 0 repeats
       
       I'M NOT LEARNING 65C816 ASSEMBLY JUST TO FIGURE OUT HOW THIS GAME DOES TEXT BOXES
       
 (DIR) Post #AqoBHn5YMVEbEom3O4 by timmy@goblin.camp
       2025-02-05T12:33:32Z
       
       0 likes, 0 repeats
       
       @foone from memory from when i was like 8, yeah it did
       
 (DIR) Post #AqoC3mqYZ3WeO6e6BU by gabe@mendeddrum.org
       2025-02-05T12:41:41Z
       
       0 likes, 0 repeats
       
       @foone you know you will.
       
 (DIR) Post #AqoF7Uh0Ioev6YdYGm by lritter@mastodon.gamedev.place
       2025-02-05T12:52:33Z
       
       0 likes, 0 repeats
       
       @foone come on! one more lookup table!
       
 (DIR) Post #AqoF7VgKcniQAlKWrQ by foone@digipres.club
       2025-02-05T13:16:22Z
       
       0 likes, 0 repeats
       
       @lritter IT'S LOOKUP TABLES ALL THE WAY DOWN
       
 (DIR) Post #AqoFF9MtTBoFHjshN2 by lritter@mastodon.gamedev.place
       2025-02-05T13:17:46Z
       
       0 likes, 0 repeats
       
       @foone a common misconception. it's only 2**31 lookup tables the way down.
       
 (DIR) Post #AqoMREEftjXZXFk9oW by ann3nova@corteximplant.com
       2025-02-05T14:38:18Z
       
       0 likes, 0 repeats
       
       @foone Narrator: She did.
       
 (DIR) Post #AqoODlrGIHL5fRVEtU by NuclearOatmeal@beige.party
       2025-02-05T14:58:18Z
       
       0 likes, 0 repeats
       
       @foone Narrator: Foone later created a 63 post thread about learning 65C816 assembly, with screenshots, source listings, and ridiculous criticisms and occasional praise and introspection about the language.
       
 (DIR) Post #AqoXKMPyB3rmNexDlY by curtmack@floss.social
       2025-02-05T16:40:28Z
       
       0 likes, 0 repeats
       
       @foone @bmartin427Standard SNES transparency is just a color average between the main screen and sub screen. It takes two whole screens of input, so transparency doesn't apply. If they used that for this screen, then the entire background layer would be averaged with color 0. To only cover part of the (e.g. for water effects), games use windowing. 1/2
       
 (DIR) Post #AqoyS3FQ26ri0KuXQm by curtmack@floss.social
       2025-02-05T16:41:54Z
       
       0 likes, 0 repeats
       
       @foone @bmartin427The SNES has two windows, each of which only has "left edge" and "right edge" registers. To get windows of arbitrary shapes, you have to set up an HDMA list to change those registers at each scanline, like an Atari 2600 game racing the beam. So if your graphics already have the transparency you want, and especially if there are more complex shapes than SNES windows can produce, doing this with the pseudo-hires setting is preferred. 2/2
       
 (DIR) Post #AqoyS46aqPOqfFn0JU by foone@digipres.club
       2025-02-05T21:44:12Z
       
       0 likes, 0 repeats
       
       @curtmack @bmartin427 the odd thing is that they're doing it horizontally, not vertically? it seems like vertically would be easier
       
 (DIR) Post #AqoySAKHiPutxSF1UG by curtmack@floss.social
       2025-02-05T16:50:19Z
       
       0 likes, 0 repeats
       
       @foone @bmartin427 All that said, there aren't many games that do this! I only knew of Kirby's Dream Land 3 before reading this thread. Most of the time when you see transparency in a SNES game, it really is color averaging.(I'm at work and can't find a good screenshot, but Kirby's Dream Land 3 uses the effect for foreground plants and water.)
       
 (DIR) Post #AqozM8JCP4rTuwQ9YG by curtmack@floss.social
       2025-02-05T21:54:31Z
       
       0 likes, 0 repeats
       
       @foone @bmartin427 It's a built-in feature of the SNES. If you enable hi-res in a graphics mode that doesn't support real hi-res grahpics, then you get this "pseudo hi-res" mode, which interleaves the main and sub screens in columns rather than compositing them through the color math system.To get the pseudotransparency effect, you enable all of the solid graphics layers in both the main and sub screens, then enable the transparent layer in only the sub screen.
       
 (DIR) Post #AqozPLviDUuX20yDi4 by foone@digipres.club
       2025-02-05T21:55:08Z
       
       0 likes, 0 repeats
       
       @curtmack @bmartin427 ahh, cool!