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