I am attempting to write a software renderer in WebAssembly because, for some reason, I feel the need to go against the direction this vibe coded world is going, and I want to feel challenged again. I don't know if I will ever finish it, it is crazy, and by no means useful. But gosh it feels so good.

Congratulations to the OP for the accomplishment.

Please post your progress! That sounds cool as hell

Thank you! I will keep working on it and post something here

I did exactly the same and it was so much fun. It wasn't about bringing anything novel to the table, it was just a fun challenge for myself. I finished and now I'm writing a game using it, although now the challenge has gone I am not making much progress on that. But never mind, I had fun! I wouldn't have had that fun or satisfaction if I had vibe coded it instead.

As in 3D software renderer? I cut my teeth on those throughout my teens and the start of my professional career, in x86 and C.

I wanted to see how an LLM would do writing one in pure 8088 assembler for CGA and it one-shot a nice demo (I fed it the vectors for the Elite ship in the prompt):

https://imgur.com/a/Dy5rUku

Yes, exactly, a 3D software renderer. But the goal is to do (almost) everything from scratch and by hand. No LLMs, no std library, no compilers. Just a few imported math functions (such as sin and cos). Not the same as bare metal programming but close

Awesome, do it! I love this kind of thing and do it regularly, mostly as part of the demoscene. I've written a bunch of demos for MS-DOS/VGA/Pentium 100 era hardware. All my own tools, almost all my own code (just using some standard library functions and someone else's mod player although that's on my list of things to write myself). All in mostly C with smatterings of assembly for speed (triangle rasteriser inner loops etc).

I also wrote a demo for 386/CGA hardware last year and I plan on porting that one to an 8086 as I think it is simple enough that it should be able to run on one. I've done a demo for the Sega Master System and I'm about to start a project for the Game Gear.

I also made a bare metal demo for the Leapster Explorer (an ARM-based kids toy).

I don't use AI for any of this because for me the interesting part is the journey as well as the final result. I want to learn how things work, and I enjoy writing the code.

Why would you screw yourself like that when it's already a huge project?

Why do people rebuild classic cars or remodel old houses by themselves? Because they enjoy the work itself and the learning process.

You don’t have to. It’s perfectly okay to take your modern car to a mechanic and hire a contractor for your remodeling needs.

But some people like to do it themselves, even when the project is large.

How well does that run on real hardware (or PCem/86box)?

I'm using DOSbox to test it right now, but it works perfectly under the emu. I'd love to try it on a real 5160 or similar.

Another option is MartyPC https://github.com/dbalsom/martypc

[deleted]