4 ms·
> As a senior Java / CPP developer This makes me cringe. A "senior" engineer is defined by whatever role a company slots you in. This is compounded by adding p
by outworlder 7y ago
> As a senior Java / CPP developer
This makes me cringe. A "senior" engineer is defined by whatever role a company slots you in. This is compounded by adding programming languages to the mix.
> I really wish I had done more embedded and assembly at school. I can't understand it or appreciate it.
There is no hardware involved here, per-se. What is there is the 6502 instruction set, plus binary floating point calculations. But the fact it is on the 6502 is only interesting because of the constraints.
If you are interested, pick up some tutorials on x86 assembly (or ARM, or whatever you have emulators or real hardware available) and go to town. Actually creating full programs(with syscalls) is a bit involved, but a small ASM function inside C++ (since you mentioned C++) should be perfectly doable (example: https://github.com/diasurgical/devilution/blob/master/Source/engine.cpp https://github.com/diasurgical/devilution/blob/master/Source... – you'll notice the Diablo game was not an embedded system either)
- monocasa 7y agoOn Linux, a full asm program with syscalls isn't too bad. Here's one example: https://jameshfisher.com/2018/03/10/linux-assembly-hello-world/ https://jameshfisher.com/2018/03/10/linux-assembly-hello-wor...
- userbinator 7y agoA 16-bit realmode DOS Hello World is also very simple, being less than 2 dozen bytes (8 bytes of actual machine instructions, and 15 bytes of message...) and something you can enter into DEBUG and run immediately if you have a 32-bit Windows system; on a 64-bit one, DOSBox or similar emulators will work well too: mov ah, 9 mov dx, 108 int 21 ret db "Hello world!" 0D 0A "$"
- stevekemp 7y agoYou can have fun writing simple programs too: https://github.com/skx/math-compiler/ https://github.com/skx/math-compiler/