scene.org File Archive

File download

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

File size:
19 094 bytes (18.65K)
File date:
2022-12-30 11:32:14
Download count:
all-time: 5

Preview

  • urchlay_atari_asm_vc3-2022/ dir
  • urchlay_atari_asm_vc3-2022/code.png 10.11K
  • urchlay_atari_asm_vc3-2022/file_id.diz 1.75K
  • urchlay_atari_asm_vc3-2022/Makefile 713B
  • urchlay_atari_asm_vc3-2022/README.txt 131B
  • urchlay_atari_asm_vc3-2022/result.png 1.37K
  • urchlay_atari_asm_vc3-2022/xex.inc 4.05K
  • urchlay_atari_asm_vc3-2022/xmas1200.xex 270B
  • urchlay_atari_asm_vc3-2022/xmas800.xex 270B
  • urchlay_atari_asm_vc3-2022/xmasstar.s 2.16K
  • urchlay_atari_asm_vc3-2022/xmasxl.xex 270B

file_id.diz

No-Code Xmas Star

Author: Urchlay (aka B. Watson)
Category: Christmas Challenge
System:   Atari
Language: Assembly (ca65 v2.19)
Len source code: 2210
Len exe file:    270
Len code only:   0
Instructions:
Install Atari800 and the *real* XL or OSB ROM images (this will NOT work
with the Altirra ROMs). Drag and drop xmasxl.xex to the emulator, or run
from command line with "atari800 xmasxl.xex". You can also use a peripheral
emulator such as atariserver or APE to run this on real hardware.
Description:
The .xex file contains no executable code, only data. This includes screen
display data, a display list, and data loaded into shadow registers to make
the Atari display the screen data. Also, the init address is set to the
"wait for keypress" OS routine, and the run address does a warmstart (after
a key is pressed).
To build from source on Linux or other Unix-flavoured systems, you should
be able to just type "make" in the source directory (provided cc65 is
installed properly, with its tools in your shell's $PATH).
Comments:
The source is called "xmasstar.s". I didn't name it "source.txt" because
ca65 really wants asm source filenames to end in ".s".

Because the "wait for keypress" routine isn't part of the official Atari
OS API, there have to be different executables for different Atari models.

xmasxl.xex is for the 600XL, 800XL, 65XE, 130XE, and XEGS/XEGM (but NOT
the 1200XL).

xmas800.xex is for the 400 and 800 (OS revision A or B).

xmas1200.xex is for the 1200XL, but only OS revision 10 (the most commonly
found 1200XL OS in the wild).

Running the wrong executable will crash the machine.

Since I used a cross-assembler that runs on modern machines (not the Atari),
there's no PNG image of the source listing on the Atari.