demosplash: add field15

This commit is contained in:
Vince Weaver 2023-01-28 21:54:13 -05:00
parent 2da88c203d
commit a3a5c7610c
7 changed files with 136 additions and 3 deletions

View File

@ -0,0 +1,46 @@
include ../../../Makefile.inc
DOS33 = ../../../utils/dos33fs-utils/dos33
TOKENIZE = ../../../utils/asoft_basic-utils/tokenize_asoft
EMPTYDISK = ../../../empty_disk/empty.dsk
all: field15.dsk
field15.dsk: HELLO FIELD15
cp $(EMPTYDISK) field15.dsk
$(DOS33) -y field15.dsk SAVE A HELLO
$(DOS33) -y field15.dsk BSAVE -a 0xE7 FIELD15
###
submit: field15.zip
field1532.zip: FIELD15 field15.s file_id.diz field15.dsk
mkdir -p lovebyte2023_field15
cp FIELD15 ./lovebyte2023_field15
cp field15.s ./lovebyte2023_field15
cp file_id.diz ./lovebyte2023_field15
cp field15.dsk ./lovebyte2023_field15
cp field15_720p.mp4 ./lovebyte2023_field15
zip -r field1532.zip lovebyte2023_field15
####
####
HELLO: hello.bas
$(TOKENIZE) < hello.bas > HELLO
###
FIELD15: field15.o
ld65 -o FIELD15 field15.o -C ./apple2_e7_zp.inc
field15.o: field15.s
ca65 -o field15.o field15.s -l field15.lst
####
clean:
rm -f *~ *.o *.lst HELLO FIELD15 *.zip

View File

@ -0,0 +1,12 @@
MEMORY {
ZP: start = $E7, size = $90, type = rw;
RAM: start = $E7, size = $8E00, file = %O;
}
SEGMENTS {
CODE: load = RAM, type = ro;
#RODATA: load = RAM, type = ro;
#DATA: load = RAM, type = rw;
#BSS: load = RAM, type = bss, define = yes;
ZEROPAGE: load = ZP, type = ro;
}

View File

@ -0,0 +1,52 @@
; 15B interesting XDRAW pattern
; by Vince `deater` Weaver / dSr
; for Lovebyte 2023
; zero page locations
GBASL = $26
GBASH = $27
HGR_SCALE = $E7
HGR_COLLISIONS = $EA
; ROM locations
HGR2 = $F3D8
HPOSN = $F411
XDRAW0 = $F65D
XDRAW1 = $F661
HPLOT0 = $F457
field15:
; we load at zero page $E7 which is HGR_SCALE
; this means the scale is $20 (JSR)
jsr HGR2 ; Hi-res, full screen ; 3
; Y=0, A=0 after this call
; A and Y are 0 here.
; X is left behind by the boot process?
; set GBASL/GBASH
; we really have to call this, otherwise it won't run
; on some real hardware depending on setup of zero page at boot
jsr HPLOT0 ; set screen position to X= (y,x) Y=(a)
; saves X,Y,A to zero page
; after Y= orig X/7
; A and X are ??
tiny_loop:
lda #$F6 ; ROT=$F6
tay
tax
dex
jsr XDRAW0 ; XDRAW 1 AT X,Y
; Both A and X are 0 at exit
; Z flag set on exit
; Y varies
beq tiny_loop ; bra

View File

@ -0,0 +1,9 @@
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-
Field15
--------------------------------------
Hi-res Xdraw Pattern
by Deater / dSr
15-byte Intro for Apple II
Lovebyte 2023
--------------------------------------

View File

@ -0,0 +1,9 @@
5 HOME
10 PRINT " FIELD15 -- A 15 BYTE APPLE II INTRO"
12 PRINT " FOR LOVEBYTE 2023"
15 PRINT " BY DEATER / DSR"
20 PRINT CHR$(4)"CATALOG"
25 PRINT:PRINT "PRESS ANY KEY TO 'BRUN FIELD15'"
30 GET A$
35 PRINT
40 PRINT CHR$(4)"BRUN FIELD15"

View File

@ -0,0 +1,3 @@
CALL -151
E7: 20 d8 f3 20 57 f4 a9 f6 a8 aa ca 20 5d f6 f0 f6
E7G

View File

@ -1,6 +1,8 @@
; 17B weird line pattern
; 15B interesting XDRAW pattern
; Really wanted this to be 16B :(
; by Vince `deater` Weaver / dSr
; for Lovebyte 2023
; zero page locations
GBASL = $26
@ -15,7 +17,7 @@ XDRAW0 = $F65D
XDRAW1 = $F661
HPLOT0 = $F457
agony17:
field15:
; we load at zero page $E7 which is HGR_SCALE
; this means the scale is $20 (JSR)