scene.org File Archive

File download

<root>­/­parties­/­2022­/­vccc22­/­christmas_star_challenge/stasmas_bk0010_assembler_vc3-2022.zip

File size:
965 348 bytes (942.72K)
File date:
2022-12-30 11:32:14
Download count:
all-time: 18

Preview

  • star/ dir
  • star/file_id.diz 1.79K
  • star/Screenshot_20221220-172111_BkEmu.jpg 572.90K
  • star/Screenshot_20221220-203338_BkEmu.jpg 568.56K
  • star/star.asm 1.52K
  • star/STAR.BIN 34B
  • star/star.lst 3.37K

file_id.diz

Little Xmas Star by Stanislav Maslovski, Dec 2022.

Submitted for Vintage Computing Christmas Challenge 2022:
https://logiker.com/Vintage-Computing-Christmas-Challenge-2022

Author: Stanislav Maslovski <stanislav.maslovski@gmail.com>

System: BK0010 (БК0010 in Russian)

Language used: PDP-11 macro assembler (macro11)

Length of source code: 1553 bytes (heavily commented for your convenience!)

Length of executable file: 34 bytes (includes 4-byte address / length header)

Length of executed code: 30 bytes

Instructions on how to run the code:

Use any emulator that can emulate BK0010 home computer (e.g. BkEmu on android)
in the configuration with just the monitor ROM, or with the monitor and BASIC
ROMs.

(Re)boot the machine. If booted into BASIC, quit to the monitor by entering
MON and hitting RETURN.

When in monitor, for best image proportions, switch to 32 col mode by hitting
"AR2" and ";" You can also skip this step, because the program works in 64
columns too!

Next, use the "M" directive to load the program: type M and hit RETURN.
It will ask for a file name: "ИМЯ?", then enter STAR.BIN and hit RETURN.

[*
   Note that in BkEmu you can skip the name and just hit RETURN, the emulator
   will show a file selection dialog. However, do not try to load the bin using
   the menu item in bkemu, it will not work due to iaccuracy in emulation!
*]

After the program is loaded the monitor returns to prompt. Now use "S" directive:
enter S and hit RETURN. It will start the program and you will see the star drawn.

I attach screenshots of the final star image and also a screenshot of the
disassembled machine code in a debugger running on BK0010 (under BkEmu). Note that
in the debugger the code is loaded at 01000, and not at its normal address 040040!

Description: See the comments in the source code!