gears: work on gears

This commit is contained in:
Vince Weaver 2023-01-24 21:15:11 -05:00
parent f60457b933
commit 5534e639fd
3 changed files with 24 additions and 28 deletions

View File

@ -7,14 +7,14 @@ EMPTYDISK = ../../../empty_disk/empty.dsk
all: shape_table.dsk
shape_table.dsk: HELLO APPLE.BAS GEAR.BAS \
APPLE2 GEAR LINE32 PATTERN PATTERN_LOGO SQUARE_WAVE \
shape_table.dsk: HELLO APPLE.BAS GEARS.BAS \
APPLE2 GEARS LINE32 PATTERN PATTERN_LOGO SQUARE_WAVE \
AGONY17 HERRING16 STRIPE17 COOL_WAVE TEETH32 TICK_TOCK
cp $(EMPTYDISK) shape_table.dsk
$(DOS33) -y shape_table.dsk SAVE A HELLO
$(DOS33) -y shape_table.dsk SAVE A GEAR.BAS
$(DOS33) -y shape_table.dsk SAVE A GEARS.BAS
$(DOS33) -y shape_table.dsk SAVE A APPLE.BAS
$(DOS33) -y shape_table.dsk BSAVE -a 0x3f5 GEAR
$(DOS33) -y shape_table.dsk BSAVE -a 0x3f5 GEARS
$(DOS33) -y shape_table.dsk BSAVE -a 0xc00 APPLE2
$(DOS33) -y shape_table.dsk BSAVE -a 0xc00 LINE32
$(DOS33) -y shape_table.dsk BSAVE -a 0xe7 AGONY17
@ -34,8 +34,8 @@ HELLO: hello.bas
###
GEAR.BAS: gear.bas
$(TOKENIZE) < gear.bas > GEAR.BAS
GEARS.BAS: gears.bas
$(TOKENIZE) < gears.bas > GEARS.BAS
###
@ -45,11 +45,11 @@ APPLE.BAS: apple.bas
###
GEAR: gear.o
ld65 -o GEAR gear.o -C $(LINKERSCRIPTS)/apple2_3f5.inc
GEARS: gears.o
ld65 -o GEARS gears.o -C $(LINKERSCRIPTS)/apple2_3f5.inc
gear.o: gear.s
ca65 -o gear.o gear.s -l gear.lst
gears.o: gears.s
ca65 -o gears.o gears.s -l gears.lst
###
@ -150,6 +150,6 @@ pattern_logo.o: pattern_logo.s
###
clean:
rm -f *~ *.o *.lst HELLO GEAR.BAS GEAR PATTERN APPLE.BAS \
rm -f *~ *.o *.lst HELLO GEAR.BAS GEARS PATTERN APPLE.BAS \
PATTERN_LOGO COOL_WAVE SQUARE_WAVE TEETH32 TICK_TOCK \
HERRING16 STRIPE17 AGONY17 LINE32 APPLE2

View File

@ -1,4 +1,8 @@
; Pattern Logo
; Rotating Gears
; 138 bytes -- original for Apple II bot
; 134 bytes -- only set SCALE once
; 131 bytes -- unecessary var set, change jmp to bra
; by Vince `deater` Weaver
@ -42,11 +46,6 @@ PAGE1 = $C054 ; Page1
PAGE2 = $C055 ; Page2
; ROM calls
HGR2 = $F3D8
HGR = $F3E2
@ -58,7 +57,7 @@ WAIT = $FCA8 ;; delay 1/2(26+27A+5A^2) us
RESTORE = $FF3F
gear:
gears:
jsr HGR ; Hi-res, full screen ; 3
@ -102,12 +101,9 @@ gear:
;===================
; scene2
jsr HGR2
jsr HGR2 ; set to hires PAGE2, full screen
; Y=0, A=0 after
lda #8
sta HGR_SCALE
ldy #0
ldx #110
lda #10
jsr HPOSN ; set screen position to X= (y,x) Y=(a)
@ -118,7 +114,6 @@ gear:
ldy #32
jsr draw_gear
ldy #0
ldx #235
lda #100
@ -136,8 +131,10 @@ gear:
;===================
; rotate
;
; just page flipping with a delay
blah:
rotate_it:
bit PAGE1
lda #255
jsr WAIT
@ -146,7 +143,7 @@ blah:
lda #255
jsr WAIT
jmp blah
beq rotate_it ; bra
;===============================
@ -188,5 +185,4 @@ gear1_table:
.byte 37,53,0
gear2_table:
.byte $2c,$2e,$00
;gear3_table:
;.byte $24,$2d,$36,$2d,$00