|
Post by anixx on Sept 16, 2023 23:27:05 GMT -8
Retrocomputing: this shows the efficiency of PDP-11 architecture.
This is a demo script in debugger Paradise for Soviet computer BK-0010. It includes writing a program in assembly language directly in memory that paints a sprite, and creating the picture in debugger's sprite editor that allows to paint the picture directly in memory. The script also shows searching assembler commands in memory with wildcards, running debugger in screen memory (and moving it in memory while it is running), adding custom command written in assembler to debugger as an extension, step-by-step execution of commands, immediate assembler commands execution, stopping execution when registry gets certain value, using built-in calculator, printing text strings from assembler. After the script finishes, the user can continue with debugger themselves. The emulator is in BK-0011M mode, but it would be absolutely the same in BK-0010 mode. The demo version of the debugger with the script takes 16 KB. The normal version without demo script (can be seen in the directory under name PAR11D) takes 5 KB (the size can be seen in the file manager, it is in octal numbering system). www.reddit.com/r/Damnthatsinteresting/comments/16kiqhu/creating_a_program_in_assembler_that_paints_a/
|
|
|
Post by The Jackal on Sept 17, 2023 14:29:04 GMT -8
Only 5kb? I miss the days when programmers would try to squeeze as much as they could out of the system with the tiniest footprint.
|
|
|
Post by anixx on Sept 17, 2023 15:36:33 GMT -8
Only 5kb? I miss the days when programmers would try to squeeze as much as they could out of the system with the tiniest footprint. BK-0010 computer had only 16 KB memory. Thus the floppy controllers were sold with additional memory, the basic model with only 4 KB which allowed to load the OS kernel and redirect tape calls to floppy disk, 8 KB or 16 KB allowed to load a graphical file manager.
PARADISE by default would load in place of the system shell so not to take the main memory area intended for user applications.
Interestingly, it uses screen memory scan to recognize user's commands (you can see in the demo how a user could replace the letter in prompt from W> to T> or H> etc so to change the ocatal to text or to hex representation or to radix, to decimal), so fonts that exceeded the standard character size would make user's commands interpreted wrongly. I did not see in any other system ever that the program read screen memory to interpret the commands. Another interesting thing, the debugger depicted Cyrillic characters with a small dot in the top right corner so to distinguish them from Latin. In memory dump in text field it displayed all control characters as inverted letters.
The compact size of the programs on BK was due to great efficiency of PDP-11 instruction set compared to x86.
|
|