2 ms·
By far one of the most useful courses I had while pursuing my degree was on writing assembly for 16-bit DOS. The course didn't just focus on writing assembly fo
by epicide 6y ago
By far one of the most useful courses I had while pursuing my degree was on writing assembly for 16-bit DOS. The course didn't just focus on writing assembly for its own sake, but rather as a way to teach lower level concepts.
e.g. the entire concept of CPU registers, translating 1:1 between assembly and machine code, examining C compiler output, low-level debugging, disassembly, etc.
Day one of the course had us download and set up DOSBox, which was brilliant. DOSBox will run on a huge number of platforms and, as you and others suggest, locks you into a very well-known simpler 16-bit system that can't ever change (the games it's meant to emulate would stop working).