6 ms·
Porting Doom to the 3D0 Console
- sasas 4y agoPrevious HN discussion: https://news.ycombinator.com/item?id=33439947 https://news.ycombinator.com/item?id=33439947
- adamgordonbell 4y agoHost here. Becky is that old school type of programmer that I don't get to talk to too often. She recommendations devs today should learn bare metal programming by starting with 6502 assembly. I miss the elegance and simplicity of writing 6502 code. The code, you enter it, it just does one task, leaves. Next function does the same thing. Whereas in C++, you can write code that actually still maintains that paradigm and it works just fine. But it’s so easy if you don’t really know what’s going on to write what you think is three lines of code, this’ll do everything. But when you look at the output of the compiler, it’s a novel. That’s my main takeaway. Is that when you truly understand the instruction sets, how the stack works, how memory management works, how the hardware works, how it all interacts, then you have a true understanding of the limitations of computers Here is a another fav part: They gave her a retail version of the game for the PC, a CD-ROM. The compiled final version of the game, compiled for a completely different platform with a different architecture, but it’s on a CD and the 3DO has a CD drive. They said it runs on the PC, so we just say that’s 90% complete.
- Alekhine 4y agoHow do I do that? I know about easy6502 but what other projects could I start with?
- signaru 4y agoI've programmed a bytecode virtual machine, and while not the same as bare metal assembly, it made it easier for me make sense of assembly (while also greatly benefiting from learning to code the virtual machine). Crafting Interpreters was the book I followed.
- adamgordonbell 4y agoBecky recommends Assembly Lines, by Roger Wagner then writing a game for an apple ii emulator. Others have done similar projects with chip-8, which I think is even simpler.
- pizza234 4y agoThe type of advice given makes sense if one has either a huge amount of free time (both in the short and long term), or works professionally in that field (like the guest did in the past). But in real world, that's not something that works. Programming for old platforms is fun and has historical value, but there are a lot of problems that don't make sense today. It's not particularly educative to write lots of lookup tables, or to know optimized (that is, fast enough) 16-bit additions, let alone divisions (and problems like these are typical once one writes something that it's not just a "hello world"). Heck, even programming (optimizing) for a 286 is significantly different from how one would program assembly today. Having said that, I'm definitely not against learning the lower level, but just to focus on a relevant low level. There are different approaches, but a good starting point to understand modern computers from the bottom up is the series "Write great code" by R.Hyde, volumes 1 and 2. If one wants to program on 6502 for the sake of programming on 6502, there are plenty of books on archive.org to learn from. It's not easy to find good ones, and they're somewhat hard to read because they're bad scans, but some are very valuable in terms of learning assembly by writing non-trivial, real-world routines.
- fabricedeville 4y agohttps://www.chibiakumas.com/ https://www.chibiakumas.com/ is an excellent ressource
- micvbang 4y agoIf you want to get into assembly code in general, I can highly recommend getting into CTFs (capture the flag, "competetive" hacking.) It's a lot of fun and if you go for the reversing or pwning tasks, you'll be directed towards x86 assembly almost immediately. There's _loads_ of content (e.g. writeups) to get you started. I remember using the site pwnable.kr quite a bit :)
- tomalpha 4y agoThis brought back some memories. We had a 6502-based BBC micro at school. I remember the first time I was so hooked trying to understand how comparisons really worked, the caretaker didn’t realise I was still there and locked the doors for the night. I was 10. Caused a bit of a panic when they found out. That started me down the long road of learning to code. Despite getting a CompSci degree later I still have plenty of bad self-learned habits from those days. But I remember them fondly. Sounds like compared to Becky I was very fortunate in my childhood. Kudos to her to for her amazing achievements. (I read the transcript rather than listening to the podcast and it was still great).
- adamgordonbell 4y agoWow BBC mirco seems to come up whenever people from UK of certain age are recalling how they got into computers. Such Impact! How did BBC end up involved in such a project? Also, thanks for reading it.
- tomalpha 4y agoThe BBC has always had a public education mandate in some form. My memory is hazy but I feel like it’s faded somewhat in the last couple of decades. Specifically here the BBC Computer Literacy Project ended up creating a line of home computers, and direct government funding put them in (I think literally) every school. https://clp.bbcrewind.co.uk/ https://clp.bbcrewind.co.uk/
- soegaard 4y agoCheck https://www.youtube.com/watch?v=4rgEzG7F5d8 https://www.youtube.com/watch?v=4rgEzG7F5d8 and https://www.youtube.com/watch?v=XXBxV6-zamM https://www.youtube.com/watch?v=XXBxV6-zamM
- stevekemp 4y agoThe BBC (computer) is interesting because due to whole project this machine was ubiquitous in UK schools, but at the same time it was a machine that almost nobody owned personally. I have fond memories of playing "Granny's Garden", and other games during school hours, and some kind of political simulation where you had to manipulate taxes and get voted into power for a second term to win - I can't remember the name of that game though. At the time children in the UK would be significantly more likely to own the C64, or the ZX Spectrum - the latter of which was by far the most popular computer at that time. I never knew anybody who owned their own BBC, but numerous friends had the other computers (even weird machines like the Jupiter Ace). Like many people at that time I learned to program in BASIC, by reading the instruction book(s) that came with the Spectrum, then graduating to Z80 assembly language - used mostly to remove anti-copying protection, and gain infinite lives on games - before moving on to PCs a good while later.
- vbernat 4y agoThe console name is "3DO". The title should be corrected.
- Keyframe 4y agoAka the EA console.
- swivelmaster 4y agoIt was a separate company founded by EA's founder, Trip Hawkins. Not an EA product.
- Romanulus 4y ago
- rvba 4y agoThe wikipedia article lists all the other games ported by Becky. I assume that since there are so many games, the quality must have been good: https://en.wikipedia.org/wiki/Rebecca_Heineman https://en.wikipedia.org/wiki/Rebecca_Heineman
- lttlrck 4y agoWe called it the "3 Dimensional Orange" for unknown reasons. That's were the Need for Speed franchise started, many hours sunk into that game. Road Rash and Return Fire were also firm favorites.
- signaru 4y agoBook recommended by Becky: Assembly Lines by Roger Wagner https://archive.org/details/AssemblyLinesCompleteWagner https://archive.org/details/AssemblyLinesCompleteWagner Damned, she went through a lot!
- timmorgan 4y agoBecky talked about this on her YouTube channel a few years back too: https://youtu.be/rBbIil2HPSU https://youtu.be/rBbIil2HPSU
- adamgordonbell 4y agoHere are the photos from the FMV part that was planned for the game: https://github.com/Olde-Skuul/doom3do/commit/f3ea056bc9659bc0e75efb928a406905fd918e10 https://github.com/Olde-Skuul/doom3do/commit/f3ea056bc9659bc...
- JetAlone 4y agoOh neat, the Doom port was gonna have Command and Conquer style FMVs.
- msla 4y agoIt's 3DO, not 3D0, right?
- MezzoDelCammin 4y agoAnother proof of the timeless veracity of SMBC's take on the difference between computer scientists and engineers: https://www.smbc-comics.com/comic/2011-02-17 https://www.smbc-comics.com/comic/2011-02-17
- MrBuddyCasino 4y agoNot so fun fact: Randal "Randy" Letcher Scott, the scumbag founder of Art Data Becky is talking about, went on to found a music school [0] and was later accused [1] of the molestation of two girls, aged 5 and 6 who studied there. [0] http://www.vgmpf.com/Wiki/index.php?title=Randy_Scott http://www.vgmpf.com/Wiki/index.php?title=Randy_Scott [1] https://www.nbclosangeles.com/news/music-school-owner-accused-of-molesting-two-young-students/20389/ https://www.nbclosangeles.com/news/music-school-owner-accuse...
- AnIdiotOnTheNet 4y agoThe source for 3DO DOOM, if anyone wants to take a crack at making it better: https://github.com/Olde-Skuul/doom3do https://github.com/Olde-Skuul/doom3do