Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

An impressing feat, considering it was written in assembly.


Most assemblers have higher-level features like macros built in to make it easier to write. Once you start building abstractions (as Chris surely would've done) it becomes more manageable, but of course, still more work than writing C.

Instead of talking about that, spare a thought for the awful x86 memory segmentation mode[1] --- now that sucked.

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


It makes me wonder, is it possible to write something this complex in assembly today, given modern security features.

Not that you'd want to, given that OpenTTD has networked features and you'd want something that makes it easy to validate/isolate remote payloads.


I don’t understand (or maybe I’m just too used to online sarcasm) are you calling BS on this claim? Or is it actually possible.


I don't think that was sarcasm, Chris Sawyer wrote most (all?) of his games in pure assembly since the 80ies. The outworldly quality of this feat is legendary. TTD, and also RCT and RCT 2 were incredibly stable games. I played them for months and months as a kid, and never encountered a crash.


This is meant as a compliment. The lower level the language, the easier is to make a mistake in it, leading to instability. The stability of the product, then, is a testament to the ability of its creator.

Chris have indeed written the game in Assembly, however, this is just one aspect of the truth. He actually used a kind of higher level generator or macro system for the game. But, still assembly, at the end of the day. Just not written by hand in Notepad, like how CS students do in class. Or was that just me?


Frankly, if two different people had written two similar games, and one had chosen assembler and the other python, I would assume the assembler game to have fewer bugs simply because the much higher skill level.

I program in Python.


I don't read it as sarcasm, but more as a genuine achievement


Thank you




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: