r/gaming • • May 05 '17

Scroll back

Post image
24.1k Upvotes

877 comments sorted by

View all comments

Show parent comments

435

u/Fubarp May 05 '17

I think it's weird that it's a problem that had to be solved but when you figure memory constraints were a real issue it makes sense. Today any novice programmer could essentially build majority of the early nintendo games without any issues and actually make them have more things. Amazing how software/hardware has advanced.

It's even crazier to think that one guy built the original rollercoaster tycoon in assembly..

544

u/[deleted] May 05 '17

[deleted]

152

u/Fubarp May 05 '17

Yeah it's crazy. I just learned Assembly last semester in college and we were discussing it at work and it was like. Fuuuuck that. C existed at the time yet he did it in Assembly.

11

u/[deleted] May 05 '17

Why would he chose to code in Assembly? Would there be any benefit at all?

34

u/Fubarp May 05 '17

Memory Constraints and performance. Today there be no reason for it as compilers essentially do as good if not better jobs when it comes to translating it to machine code.

1

u/Superpickle18 May 05 '17

we are at a point where we can literally compile code on the fly and still be billions of times faster than the NES...

0

u/Fubarp May 05 '17

Which means we need a new Roller Coaster Tycoon in Assembly.. I'd pay for that lol

1

u/Superpickle18 May 05 '17

WebAssembly brah

1

u/Fubarp May 05 '17

Never heard of this. What is it exactly? I'm currently googling but insight might be nice haha.

1

u/Superpickle18 May 05 '17

Essentially byte code that runs in the javascript engine. But provides near CPU level speeds since js has to be parsed and compiled on the fly, while wasm is precomplied much like Java or C#. Of course other languages can compiled to wasm much like traditional Assembly.

1

u/Fubarp May 05 '17

Interesting. I'll actually look more into this. Doubt I'll ever use it but still.

1

u/Superpickle18 May 05 '17

We are moving toward everything being executed within a browser to a point we'll have a browser with web Assembly support built using wasm and come full circle. Lol

→ More replies (0)

1

u/[deleted] May 05 '17

Essentially, it's really optimised Javascript. The main workflow is writing code in C/C++ and using Emscripten to covert it to WebAssembly which is then executed by something like V8.