Remix.run Logo
pjmlp 4 hours ago

As someone that was alive back then already, only if you never touched the hardware directly outside the CPU.

Even the PC clones didn't had something like portable Assembly if you ventured outside 0x10h and 0x21h interrupts.

MomsAVoxell an hour ago | parent | next [-]

I did it many times on CP/M and also DOS.

Never ‘touching the hardware’ was attainable for a great deal many assembly programs.

You could do a lot with 0x10h and 0x21h on DOS.

pjmlp 20 minutes ago | parent [-]

Yes, not much for games though.

whobre 3 hours ago | parent | prev [-]

Right. I am saying there is a difference between portable and non portable assembly code. If you interacted with the machine via call 05h interface, it was portable. If you accessed computer’s video memory buffer directly it wasn’t.

MomsAVoxell an hour ago | parent [-]

Good portable assembly would stub the system stuff off, anyway, and once that was done for the cpu class in focus, it was very possible to have a thin HAL and write portable code. A great deal many successful products of the era were written in pure assembly this way.

In any case, you could also get high performance multiplatform video/io assembly libraries on the market, soon enough, back in the day .. it begat a lot of Delphi units too, I seem to recall ..