Browse Source

polishing

newintro
giomba 11 months ago
parent
commit
6e0d335b83
  1. 8
      Makefile
  2. 3
      README.md
  3. BIN
      scrot/intro.png
  4. 4
      src/cart.asm
  5. 3
      src/loader.asm
  6. 26
      src/prg.asm

8
Makefile

@ -8,7 +8,7 @@ RES=res.bin/amour2.sid res.bin/levels.bin res.bin/unlzg.bin
all: bin/snake6502.bin bin/snake6502.d64
bin/snake6502.bin: bin/snake.pack.lz
dasm src/cart.asm -Isrc/ -DVERBOSE=$(VERBOSE) -f3 -T1 -sbuild/cart.symbols.txt -obin/snake6502.bin
dasm src/cart.asm -Isrc/ -f3 -T1 -sbuild/cart.symbols.txt -obin/snake6502.bin
bin/snake6502.d64: bin/loader.prg
c1541 -format "snake6502,01" d64 bin/snake6502.d64
@ -16,13 +16,13 @@ bin/snake6502.d64: bin/loader.prg
c1541 -attach bin/snake6502.d64 -write bin/snake.pack.lz.prg packlz
bin/loader.prg: bin/snake.pack.lz.prg
dasm src/loader.asm -Isrc/ -DVERBOSE=$(VERBOSE) -f1 -sbuild/loader.sybols.txt -obin/loader.prg
dasm src/loader.asm -Isrc/ -f1 -sbuild/loader.sybols.txt -obin/loader.prg
bin/snake.prg: bin/snake.pack
dasm src/prg.asm -Isrc/ -DVERBOSE=$(VERBOSE) -f1 -T1 -sbuild/prg.symbols.txt -obin/snake.prg
dasm src/prg.asm -Isrc/ -f1 -T1 -sbuild/prg.symbols.txt -obin/snake.prg
bin/snake.pack: env $(ASM) $(RES) bin/explodefont
dasm src/main.asm -Isrc/ -DSYSTEM=64 -DDEBUG=$(DEBUG) -DVERBOSE=$(VERBOSE) -f3 -T1 -sbuild/pack.symbols.txt -obin/snake.pack
dasm src/main.asm -Isrc/ -DSYSTEM=64 -DDEBUG=$(DEBUG) -f3 -T1 -sbuild/pack.symbols.txt -obin/snake.pack
bin/snake.pack.lz: bin/snake.pack liblzg/src/tools/lzg
liblzg/src/tools/lzg bin/snake.pack > bin/snake.pack.lz

3
README.md

@ -1,5 +1,6 @@
# snake6502
![Intro screenshot](scrot/intro.png)
![Gameplay screenshot](scrot/gameplay.png)
*snake6502* is a snake-like game clone for Commodore home computers, written for fun because «I always wanted to code something for a computer of my retrocomputers collection – actually, this is the main reason I collect them: to write programs».
@ -26,8 +27,6 @@ You can also define the following environment variables:
```$ DEBUG=1 make``` build with debugging artifacts
```$ VERBOSE=1 make``` output useful info during compilation
## Tape
Copy ```loader.prg``` and ```packlz``` from disk to tape.
On a physical machine, you can use [disk2tape](https://git.giomba.it/giomba/cbmutil).

BIN
scrot/intro.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

4
src/cart.asm

@ -1,10 +1,12 @@
processor 6502
; SEGMENTS
SEG.U zeropageSegment
org $02
SEG loaderSegment
org $8000
; LOADER
SEG loaderSegment
cartridge SUBROUTINE
WORD .coldstart
@ -46,10 +48,8 @@ cartridge SUBROUTINE
; decompression util
INCLUDE "lzgmini.asm"
#if VERBOSE = 1
ECHO "8k CARTRIDGE SIZE:",(. - $8000),"=",[(. - $8000)d]
ECHO "SPACE LEFT:",($9fff - .),"=",[($9fff - .)d]
#endif
; force filler for the *PROM
. = $9fff

3
src/loader.asm

@ -54,7 +54,4 @@ packFileName:
BYTE "PACKLZ"
packFileNameEnd:
#if VERBOSE = 1
ECHO "PRG SIZE:",(. - $801),"=",[(. - $801)d]
#endif

26
src/prg.asm

@ -1,26 +0,0 @@
processor 6502
SEG.U
org $02
INCLUDE "zeropage.asm"
SEG autostart
org $801
autostartRoutine SUBROUTINE
; this is at $801
; and it MUST be exactly at this location in order to autostart
; 10 SYS2060 ($80c) BASIC autostart
BYTE #$0b,#$08,#$0a,#$00,#$9e,#$32,#$30,#$36,#$31,#$00,#$00,#$00
; this is at (2061 dec)=($80d)
; and it MUST be exactly after the above BASIC statement
. = $80d
jmp $2800
. = $1000
INCBIN "../bin/snake.pack"
#if VERBOSE = 1
ECHO "PRG SIZE:",(. - $801 + 2),"=",[(. - $801 + 2)d]
#endif
Loading…
Cancel
Save