mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-10-31 10:13:35 +00:00
lovebyte: spiral
This commit is contained in:
parent
a22f083521
commit
f99289e5da
@ -10,7 +10,7 @@ all: spiral_32.dsk
|
||||
spiral_32.dsk: HELLO SPIRAL_32
|
||||
cp $(EMPTYDISK) spiral_32.dsk
|
||||
$(DOS33) -y spiral_32.dsk SAVE A HELLO
|
||||
$(DOS33) -y spiral_32.dsk BSAVE -a 0xc00 SPIRAL_32
|
||||
$(DOS33) -y spiral_32.dsk BSAVE -a 0xe9 SPIRAL_32
|
||||
|
||||
###
|
||||
|
||||
@ -38,7 +38,7 @@ HELLO: hello.bas
|
||||
###
|
||||
|
||||
SPIRAL_32: spiral_32.o
|
||||
ld65 -o SPIRAL_32 spiral_32.o -C $(LINKERSCRIPTS)/apple2_c00.inc
|
||||
ld65 -o SPIRAL_32 spiral_32.o -C $(LINKERSCRIPTS)/apple2_e7_zp.inc
|
||||
|
||||
spiral_32.o: spiral_32.s
|
||||
ca65 -o spiral_32.o spiral_32.s -l spiral_32.lst
|
||||
|
@ -1,13 +0,0 @@
|
||||
This is yet another tiny Apple II hires/shapetable intro.
|
||||
|
||||
It loads at $E7 (HGR_SCALE) so that we set that value
|
||||
for free from the first instruction (in this case JSR so $20).
|
||||
|
||||
I thought this looked like woven cloth at times, hence the name.
|
||||
|
||||
I found this one while searching for pleasant looking patterns
|
||||
in the ROM to display that were easy to load. Specifically patterns
|
||||
that have a 0 value after one or two bytes, as those are smaller shapes.
|
||||
In this case this is rotation value $E2 at address $E2E2 which is
|
||||
easy to load.
|
||||
|
@ -1,9 +1,10 @@
|
||||
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-
|
||||
Weave15
|
||||
Spiraling Shape
|
||||
--------------------------------------
|
||||
Hi-res Xdraw Pattern
|
||||
with Sound!
|
||||
by Deater / dSr
|
||||
|
||||
15-byte Intro for Apple II
|
||||
Lovebyte 2023
|
||||
31-byte Intro for Apple II
|
||||
Lovebyte 2024
|
||||
--------------------------------------
|
||||
|
4
demos/lovebyte2024/spiral_32/monitor.txt
Normal file
4
demos/lovebyte2024/spiral_32/monitor.txt
Normal file
@ -0,0 +1,4 @@
|
||||
CALL -151
|
||||
E8: 20 D8 F3 2C 30 C0 A8 A2 8C A9 60 20 11 F4 A2 DF
|
||||
F8: A0 E2 E6 FE A9 01 29 7F 85 E7 20 5D F6 F0 E4
|
||||
E8G
|
@ -1,14 +1,18 @@
|
||||
; Xdraw test
|
||||
; Spiraling Shape
|
||||
|
||||
; use to prototype small xdraw effects
|
||||
; o/~ Down, Down, Down You Go o/~
|
||||
|
||||
; by Vince `deater` Weaver / DsR
|
||||
|
||||
; Lovebyte 2024
|
||||
|
||||
; zero page locations
|
||||
GBASL = $26
|
||||
GBASH = $27
|
||||
HGR_SCALE = $E7
|
||||
HGR_ROTATION = $F9
|
||||
HGR_COLLISION = $EA
|
||||
|
||||
HGR_ROTATION = $FE ; IMPORTANT! set this right!
|
||||
|
||||
; ROM locations
|
||||
HGR2 = $F3D8
|
||||
@ -17,19 +21,15 @@ XDRAW0 = $F65D
|
||||
XDRAW1 = $F661
|
||||
HPLOT0 = $F457
|
||||
|
||||
xdraw_test:
|
||||
|
||||
spiraling_shape:
|
||||
jsr HGR2 ; Hi-res, full screen ; 3
|
||||
; Y=0, A=0 after this call
|
||||
|
||||
iny
|
||||
; sty HGR_SCALE
|
||||
sty HGR_ROTATION
|
||||
|
||||
; A and Y are 0 here.
|
||||
; X is left behind by the boot process?
|
||||
|
||||
tiny_loop:
|
||||
bit $C030
|
||||
tay ; ldy #0 ; A always 0 here
|
||||
ldx #140
|
||||
lda #96
|
||||
@ -41,8 +41,10 @@ tiny_loop:
|
||||
ldx #<our_shape ; load $E2DF
|
||||
ldy #>our_shape ;
|
||||
inc HGR_ROTATION
|
||||
lda HGR_ROTATION
|
||||
and #$7f
|
||||
|
||||
lda #1 ; HGR_ROTATION is HERE ($FE)
|
||||
|
||||
and #$7f ; cut off before it gets too awful
|
||||
sta HGR_SCALE
|
||||
|
||||
jsr XDRAW0 ; XDRAW 1 AT X,Y
|
||||
@ -55,5 +57,4 @@ tiny_loop:
|
||||
|
||||
our_shape = $E2DF
|
||||
|
||||
;our_shape:
|
||||
;.byte $1a,$2d,$00
|
||||
|
||||
|
12
linker_scripts/apple2_e6_zp.inc
Normal file
12
linker_scripts/apple2_e6_zp.inc
Normal file
@ -0,0 +1,12 @@
|
||||
MEMORY {
|
||||
ZP: start = $E6, size = $90, type = rw;
|
||||
RAM: start = $E6, 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;
|
||||
}
|
Loading…
Reference in New Issue
Block a user