Author: NiOl (Nm) --- System: BK0010 / BK0010.01 --- Language: assembler PDPy11 (Python crossasm) by Ivan Machugovsky --- Length of source code: 1080 bytes / 45 lines with comments --- Length of executable file: 96 bytes with tape header --- Length of executed code: 92 bytes --- Instructions on how to run the code: Emulator: gid.pdp-11.ru sandro.pdp-11.ru boulder-dash.narod.ru/bk_emulator.html xgistor-echo.scorchingbay.nz/files/Emulator/Russian emulator3000.org/rus-e3.htm Most of them Drag`n`Drop compartable. if not: - wait for Basic started - type 'mo' [enter] ; exit to "Monitor" - type 'm' [enter] ; "Magnetic tape" - [enter] mast open file manager window, find and select HNY.bin - type 's' [enter] ; "Start" --- Provide a description of how the code works: ... its too hard for me, my English too bad! - Code builds long text in memory and then show them using BIOS of BK0010. BK0011/BK0011M compartable only after loading "10"`s BIOS in RAM - Tree based on 4 blocks, described in 2 tables - 1 table: 4x 2-bit elements with "Delta Width" 1/2/3/0 - Width modificator for each line, stored in 9th line (see "Delta Tab") - 2 table: 4x 1-bit Flags for "Short Loop" - Full Block has 4 rows, Short - only 2. * This table changed each Block, so Code mast be reloaded to run again! - Each row starting value for Width (Width=-1), modifed by Delta, and used as counter for Spaces ( = 16 - Width) - Then Width modifed by doubling and increment for count real Tree Width - Adding only [CR} char for each line - standart for BK