Remix.run Logo
Larrikin 3 days ago

Are there any pictures or video of it running? I understand why they are not on the GitHub page

platevoltage 3 days ago | parent | next [-]

here's another video that showed good gameplay shots that I happened to see last night.

https://www.youtube.com/watch?v=kscCFfXecTI

ginko 3 days ago | parent | next [-]

The distorted textures and weird triangle clipping issues are exactly what you'd expect from an unoptimized port to a platform that doesn't support perspective correct texturing or depth testing.

LarsDu88 3 days ago | parent | next [-]

John carmack complained about this same issue for the Playstation DOOM port: page 337 https://fabiensanglard.net/b/gebbdoom.pdf

Playstation rendered with affine texturing which made it impossible to get perspective correct rendering without hacks. The porting team ultimately did a very interesting hack where they would use polygons to render 1 pixel wide strips effectively simulating how non-hardware (that is CPU-based/integer) acclerated rendering was done on the PC.

jml7c5 3 days ago | parent [-]

That link gives a 403 for me, presumably because fabiensanglard.net disabled hotlinking.

For others who run into the same problem, the file can be accessed via https://fabiensanglard.net/gebbdoom/index.html#:~:text=High%... . (I've highlighted the link to click.)

bluedino 3 days ago | parent | prev | next [-]

It looks pretty decent but seeing the texture warping and glitching reminds me of why I was team N64

krispyfi 3 days ago | parent | next [-]

I had the opposite reaction. As someone who was on team PSX, the wobbly jank is pleasingly nostalgic. Didn't someone say that the limitations and artifacts of the obsolete media of the past become the sought-after aesthetics of the future?

mpyne 3 days ago | parent | next [-]

They are certainly sometimes a key part of the retro look that makes things nostalgic.

But even during the PSX era I found it distracting and annoying to look at so I can't say I have any nostalgia for it even now in the way I do for N64-style low-poly 3-D games or good pixel art.

nmz 2 days ago | parent | prev | next [-]

This is all subjective so I suppose I should add an IMO, Even back then many games were preferable on the N64 like megaman legends, what the PS1 offered that was superior was storage, which allowed for more music and FMVs, and also allowed for voice acting and probably why MGS is still talked about to this day, my guess is the lack of detail helps immersion the same way you would read a novel, and I imagine the PS1 with its storage would've been the perfect vehicle for Visual Novels, but that still is not popular anywhere but Japan.

Even with realism, ports to dreamcast were better overall and considering the latest port of Final Fantasy Tactics does not emulate any of its PS1 limitations, I don't think a lot of people strive/like the aesthetic.

eru 2 days ago | parent | next [-]

> [...] and I imagine the PS1 with its storage would've been the perfect vehicle for Visual Novels, but that still is not popular anywhere but Japan.

I guess you can pretend that the JRPG or Resident Evil are Visual Novels with some action game play (or turn based combat) thrown in?

nmz 2 days ago | parent [-]

That's what I do with sons of liberty

ginko 2 days ago | parent | prev [-]

>Even back then many games were preferable on the N64 like megaman legends

Huh, I generally see megaman legends cited as an example where the PSX version looks better due to the crisper textures.

https://www.youtube.com/watch?v=J6lravGmPPQ

nmz 2 days ago | parent [-]

I stand corrected.

ginko 2 days ago | parent | prev [-]

As someone who was team N64 I do agree PSX has more of a "trademark look" compared to the N64 which is pretty much just a very limited version of a modern graphics rasterizer.

segmondy 3 days ago | parent | prev | next [-]

psx is r3000, n64 is r4300 a much faster and capable cpu.

mghackerlady 2 days ago | parent | prev | next [-]

Personally I'd take it over the N64s muddy textures, the playstations wobbly but I can at least make out what something's supposed to be

01HNNWZ0MV43FF 3 days ago | parent | prev [-]

The N64 definitely has the nicer GPU of the two. An N64 with a CD-ROM drive would have been amazing.

president_zippy 2 days ago | parent | next [-]

That "expansion pak" RDRAM upgrade was designed to give the N64DD enough buffer space so devs could continue using about 4MB of RAM for everything else, so I can't imagine how expensive the N64 would have been if they had to ship it with 8MB of RDRAM to maintain the same standard of visual quality and a 2X CD-ROM drive.

Then again, the good games would have been $50 instead of $70, and there would have been a lot more developers willing to pay $0.20 per unit to ship games than $20 per unit for the common 12MB and 16MB ROM chips.

However, I don't know if Ocarina of Time or Majora's Mask would have worked as well without that ability to load entire scenes in < 500ms. Diddy Kong Racing and Indiana Jones & The Infernal Machine relied on the ability to stream data from the cartridge in real time to smoothly transition between scenes/areas. DKR only used it in the overworld AFAIK, but it was still impressive.

Not saying you're wrong, just that I'm glad things turned out the way they did because Ocarina and Majora's Mask likely could not have been done on a Saturn or PS1 beefed up with the N64's GPU.

I could be wrong, and some experienced romhackers could conjure up enough clever optimizations to make a faithful PS1 port of Ocarina of Time that doesn't have noticeable load times, but it would have been the result of years of research with no deadline pressure. I admit I'm just speculating, but not in a presumptuous and baseless way.

greeniskool 2 days ago | parent | prev | next [-]

There was actually an unauthorized third-party CD-ROM drive for it, the Bung Doctor V64[1]. It didn't actually expand the available ROM space beyond what was possible with cartidges, but its still interesting in that it was allegedly used by licensed Nintendo devs as a lower-cost alternative to the devkits officially provided to them.

[1] https://en.wikipedia.org/wiki/Doctor_V64

mghackerlady 2 days ago | parent [-]

not allegedly, iirc the turok devs used one

klipklop 3 days ago | parent | prev [-]

And a bit more texture memory!

redox99 3 days ago | parent | next [-]

The RAMBUS speed is the main issue. The RDP can literally be stalled over 70% of the time waiting for memory. It's extremely flawed.

They could have used SDRAM and it would perform so much better, and I believe the cost is around the same.

If you wanted to cut something, cut the antialiasing. While very cool, it is a bit wasted on CRTs. Worst of all, for some reason they have this blur filter which smears the picture horizontally. Luckily it can be deblured by appliying the inverse operation.

eru 2 days ago | parent [-]

Would SDRAM have been faster and cheaper? Why did they pick RAMBUS?

redox99 2 days ago | parent [-]

I think the main reason is that when they architected it, RDRAM seemed like the better choice based on price and bandwidth at that time, and they underestimated the performance issues it would cause (RDRAM has amazing bandwidth but atrocious latency).

By the time the N64 launched, SDRAM was better and cheaper, and they considered it was too late to make the switch. Allegedly SGI wanted to make changes but Nintendo refused.

Basically they made the wrong bet and didn't want to change it closer to release.

eru 2 days ago | parent [-]

Thanks!

OK, I also just read that basically Nintendo bet on ram bandwidth, but ignored latency.

A more general lesson: Nintendo bet on cutting edge, speculative technology with RDRAM, instead of concentrating on 'Lateral Thinking with Withered Technology'.

president_zippy 3 days ago | parent | prev [-]

The whole thing about the texture cache being the worst design decision in the N64 just gets parroted so much, but nobody can cogently explain which corner should have been cut instead to fit the budget.

indigo945 2 days ago | parent | next [-]

The N64's CPU, with pretty much every single game released on the platform, is just sitting there idling along at maybe 30% load tops, and usually less than that. It's a 64 bit CPU, but Nintendo's official SDK doesn't even support doubles or uint64!

Of course, Nintendo clearly cared about the CPU a lot for marketing purposes (it's in the console's name), but from a purely technological perspective, it is wasteful. Most of the actual compute is done on the RSP anyway. So, getting a much smaller CPU would have been a big corner to cut, that could have saved enough resources to increase the texture cache to a useful resolution like 128x128 or so.

It should be noted, though, that the N64 was designed with multitexturing capabilities, which would have helped with the mushy colors had games actually taken advantage of it (but they didn't, which here again, the Nintendo SDK is to blame for).

eru 2 days ago | parent | next [-]

> It's a 64 bit CPU, [...]

Only really in the marketing material. It's a bit like calling a 386 with an arithmetic co-processor an 80 bit machine, when it was still clearly a 32 bit machine by all metrics that matter.

However, I agree in general that the N64 CPU sits idle a lot of the time. It's overspecced compared to the rest of the system.

malucart 2 days ago | parent [-]

no, it really is a true 64 bit CPU. it's just that that fact is useless and it usually runs in 32 bit mode because games don't need that.

indigo945 2 days ago | parent | next [-]

Yes. Although people like to point out that on the N64's CPU the external data bus is restricted to 32 bits, that's irrelevant in practice. The real limitation is the RDRAM's data bus, which is only 9 bits wide (of which the CPU uses 8 bits). The problem is that the rest of the system simply cannot match the overspecced CPU.

eru 2 days ago | parent | prev [-]

I wonder what the maximum addressable memory of the N64 is?

Of course, even 32 bit are massively more than they actually need for the paltry amount of memory they actually get, even if you map ROM and various devices into the same virtual address space.

pezezin 2 days ago | parent | prev [-]

> So, getting a much smaller CPU would have been a big corner to cut, that could have saved enough resources to increase the texture cache to a useful resolution like 128x128 or so.

How? The texture RAM (TMEM) is in the RSP, not in the CPU.

indigo945 2 days ago | parent [-]

How is that relevant? "Resources" really just means money, which can be allocated between different items on the BoM at-will. The N64's chips are all (more or less) bespoke, so the functionality of each individual part is completely under Nintendo's control. Spend less on the CPU, and you suddenly have money left to spend on the RSP. (And on the RDP, which contains the TMEM -- it lives on the same chip as the RSP, but is a distinct thing. I assume you know this, but just to add to the discussion for readers - the RSP is the N64's SIMD coprocessing unit, which most games use to perform vertex shading, whereas the RDP is the actual rasterization and texturing hardware.)

pezezin 2 days ago | parent | next [-]

You are right about the RSP/RDP distinction. My point is that removing transistors from one chip doesn't magically let you add more transistors to another chip, that's not how IC fabrication works. And the CPU was not a custom design, it was a VR4300 licensed by NEC from the original R4300.

Anyway, the real problem is that TMEM was not a hardware-managed cache, but a scratchpad RAM fully under the control of the programmer, which meant that the whole texture had to fit under a meagre 4 kB of RAM! It is the same mistake that Sony and IBM later made with the Cell.

mrguyorama 2 days ago | parent | prev [-]

Realistically it wasn't even "We only have X dollars to spend". They needed the console to have a final budget and they really could have "just" added more transistors dedicated to that texture unit without significantly altering prices or profit.

But hardware was actively transitioning and what we "knew" one year was gone the next and Nintendo was lucky to have made enough right choices to support enough good games to survive the transition. They just got some bets wrong and calculated some tradeoffs poorly.

For example, almost everything Kaze is showing off, all the optimizations were technically doable on original hardware, but devs were crunching to meet deadlines and nobody even thought to wonder whether "lets put a texture on this cube" needed another ten hours of engineering time to optimize. Cartridges needed to be constructed by Christmas. A lot of games made optimization tradeoffs that were just wrong, and didn't test them to find out. Like the HellDivers 2 game size issue.

Sega meanwhile flubbed the transition like four different ways and died. Now they have the blue hedgehog hooked up to a milking machine. Their various transition consoles are hilariously bad. "Our cpu and rasterizer can't actually do real polygon rendering and can't fake it fast enough to do 3D graphics anyway. Oh, well what about two of them?"

eru 2 days ago | parent | prev | next [-]

You could have saved a lot of money by using CDs instead of cartridges.

If you sell games for roughly the same amount as before (or even a bit cheaper), you have extra surplus you can use to subsidise the cost of the console a bit.

Effectively, you'd be cutting a corner on worse load times, I guess?

Keep in mind that the above ignores questions of piracy. I don't know what the actual impact of a CD based solution would have been, but I can tell for sure that the officials at Nintendo thought it would have made a difference when they made their decision.

dole 2 days ago | parent [-]

imho, Nintendo had a hard enough time with preventing piracy and unlicensed games with the NES and SNES and saw the PS1 got modded within a year, even with the special black coated discs to hide the tracks. There wasn’t a lot of optical/compact disc copy protection magic at the time and, cd-rs and writers started getting popular quickly as well. ps1 in 1994, n64 in 1996, backwards Dreamcast GD-ROMs and beginnings of larger discs and DVDS in 98.

eru 2 days ago | parent [-]

The discs being black was a marketing gimmick, the actual magic was in the 'wobble'.

> Nintendo had a hard enough time with preventing piracy and unlicensed games with the NES and SNES [...]

Yes, so I'm not sure that the cartridge drawbacks bought them that much in terms of piracy protection?

I agree that the PS1 had more piracy, but I'm not sure that actually diminished its success?

pezezin 2 days ago | parent [-]

> I agree that the PS1 had more piracy, but I'm not sure that actually diminished its success?

At least in my corner of the world (Spain), piracy improved its success. Everybody wanted the PSX due to how cheap it was, I think it outsold the N64 10:1.

baud147258 2 days ago | parent [-]

it works if the console isn't sold at a loss, which isn't always the business model

redox99 3 days ago | parent | prev [-]

See https://news.ycombinator.com/item?id=46227453

anthk 3 days ago | parent | prev [-]

That was an issue in tons of PSX games.

vereis 3 days ago | parent [-]

yeah this is the distinctive ps1 look I think all games look like this, at least polygonal games

eru 2 days ago | parent [-]

You can use lots of tricks to make your PS1 game not look like this. Or at least much less like this.

zoeysmithe 3 days ago | parent | prev | next [-]

Its incredible to how compltely unwatchable modern youtube norms are, to me at least. I feel like youtubers now aim almost exclusively for the 12-18 demographic. I mean, this person is doing some kind of character or affectation instead of using a normal voice. Everything is some kind of grift or character or PR or persona now it seems. I understand they do this to get viewers, but its just depressing how much more content I'd enjoy if the PR gimmicks and lowest-common-denominator tricks were stopped.

I just saw techtips Linus interview Linus Torvalds and the constant manboying and bad jokes was just embarrassing and badly hurt the interview. I really wish people like this would turn it way, way down. I think we all love some levity and whimsy, but now those gimmicks are bigger and louder than the actual content.

viraptor 3 days ago | parent | next [-]

Torvalds didn't hold back either though, so not sure what the complaint is... If you watch some WAN you'll see you're not getting some weird persona in that video, just the same guy with a bit of extra energy - which is just what you want to do for presentations / shows / whatever. It was a genuine experience.

kanzure 3 days ago | parent | prev | next [-]

To me this sounds like a computer-generated voice for obvious pro-privacy reasons for this kind of project. If it bothers you, then maybe work on better voice synthesis tech! I assume it sounds not-leading-generation because it was locally rendered but I could be wrong.

brailsafe 3 days ago | parent | prev [-]

> I just saw techtips Linus interview Linus Torvalds and the constant manboying and bad jokes was just embarrassing and badly hurt the interview.

If you've been watching LTT for any amount of time, it wouldn't be surprising that that's just LTT Linus' nervous awkward style, he's just a person. The jokes can be cringe as hell, but I thought the video was great, I don't think most nerds would be any different in front of a camera.

eru 2 days ago | parent | prev [-]

Thanks for the link!

The first comment is pretty funny:

> Finally, Super Mario 32.

ranger_danger 3 days ago | parent | prev [-]

https://www.youtube.com/watch?v=6f92hKbz5Eo

zamadatix 3 days ago | parent [-]

For those that prefer pure gameplay to skip through https://youtu.be/kkJWZlAjZp0

threethirtytwo 3 days ago | parent [-]

This is emulated as I'm sure the other videos are, but the PS1 back in the day had no way of running anything this crisp, so the emulator is `enhancing` it here. It's not an actual representation of what the game would have looked like.

zamadatix 3 days ago | parent | next [-]

It doesn't really work right on "normal" PS1s yet, at least when it was making the rounds a few weeks ago, so you need either an emulator or modded/dev PS1 with more RAM to prevent crashes and most people won't have the latter https://www.reddit.com/r/psx/comments/1p45hrm/comment/nqjtdp.... Probably shared a few months to early.

But yeah, on a "real" PS1 it would be blockier due to lower res. The main rendering problems should be the same though.

malucart 3 days ago | parent [-]

nah, it's not even configured to use the extra RAM, though there is a compile option for that. seems like the freeze was some sort of bug in the tessellation code, but I'm rewriting that part, so the bug is gone now. it should be working fine on hardware after I publish the changes.

zamadatix 3 days ago | parent [-]

Cool work man - can't wait to try it out when the fixes land!

anthk 3 days ago | parent | prev [-]

CRT's smoothed out the image a little bit. Also, the screens were much smaller back in the day.

eru 2 days ago | parent [-]

> Also, the screens were much smaller back in the day.

Not if you watch the video on your phone or iPad or laptop!

Actually, even most desktop pc monitors aren't bigger than people's TVs back then.

(Of course, TVs now are bigger than TVs back then. And desktop pc monitors are bigger than desktop pc monitors back then.)

anthk 2 days ago | parent [-]

The 14" Nokia TV from my old bedroom disagreed a little :)

In the end if you reescaled the emulator window down to 320x240 or 640x480 with a 25% scanline filter on LCD's or a 50% in CRT, the result would be pretty close to what teenagers saw in late 90's.

eru 2 days ago | parent [-]

For a video, yes.

Though I suspect for interactive use, CRTs might have had better latency?