mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-03-03 12:31:32 +00:00
hgr: another short graphics demo
This commit is contained in:
parent
cbdb595f63
commit
94bc946a4c
@ -22,7 +22,8 @@ appleiibot.dsk: E2.BAS FLAME.BAS FLAME2.BAS HELLO \
|
||||
OVAL.BAS OVAL_HGR.BAS MOVING.BAS THICK_SINE.BAS TURKEY.BAS \
|
||||
FLAME_HGR.BAS RECT.BAS SNOWY.BAS EDGAR.BAS OOPS4.BAS OOPS3.BAS \
|
||||
HORROR.BAS DIAMOND.BAS LEMM.BAS OOPS.BAS SPLIT.BAS PARTICLE.BAS \
|
||||
PARTICLE_HGR.BAS DIAMOND_SCROLL.BAS RANDOM_SCROLL.BAS STAR_BOUNCE.BAS
|
||||
PARTICLE_HGR.BAS DIAMOND_SCROLL.BAS RANDOM_SCROLL.BAS STAR_BOUNCE.BAS\
|
||||
OOZE.BAS
|
||||
# cp $(EMPTY_DISK)/empty.dsk appleiibot.dsk
|
||||
cp empty.dsk appleiibot.dsk
|
||||
$(DOS33) -y appleiibot.dsk BSAVE -a 0x0300 LOAD
|
||||
@ -122,6 +123,7 @@ appleiibot.dsk: E2.BAS FLAME.BAS FLAME2.BAS HELLO \
|
||||
$(DOS33) -y appleiibot.dsk SAVE A DIAMOND_SCROLL.BAS
|
||||
$(DOS33) -y appleiibot.dsk SAVE A RANDOM_SCROLL.BAS
|
||||
$(DOS33) -y appleiibot.dsk SAVE A STAR_BOUNCE.BAS
|
||||
$(DOS33) -y appleiibot.dsk SAVE A OOZE.BAS
|
||||
|
||||
####
|
||||
|
||||
@ -688,6 +690,12 @@ RANDOM_SCROLL.BAS: random_scroll.bas
|
||||
STAR_BOUNCE.BAS: star_bounce.bas
|
||||
$(TOKENIZE) < star_bounce.bas > STAR_BOUNCE.BAS
|
||||
|
||||
####
|
||||
|
||||
OOZE.BAS: ooze.bas
|
||||
$(TOKENIZE) < ooze.bas > OOZE.BAS
|
||||
|
||||
|
||||
|
||||
####
|
||||
|
||||
|
2
basic/appleiibot/ooze.bas
Normal file
2
basic/appleiibot/ooze.bas
Normal file
@ -0,0 +1,2 @@
|
||||
1FORI=0TO30:POKE1013+I,4*PEEK(2125+I)-204+(PEEK(2156+I/3)-35)/4^(I-INT(I/3)*3):NEXT
|
||||
2&"-hoOqTq]gNq\n:7p[3ZqW<Ugciren7l[8*<6#8%\+#
|
@ -7,11 +7,13 @@ EMPTYDISK = ../../../empty_disk/empty.dsk
|
||||
|
||||
all: transition.dsk
|
||||
|
||||
transition.dsk: HELLO RECTANGLE BARS
|
||||
transition.dsk: HELLO RECTANGLE BARS FOLD OOZE32
|
||||
cp $(EMPTYDISK) transition.dsk
|
||||
$(DOS33) -y transition.dsk SAVE A HELLO
|
||||
$(DOS33) -y transition.dsk BSAVE -a 0x3f5 RECTANGLE
|
||||
$(DOS33) -y transition.dsk BSAVE -a 0xc00 BARS
|
||||
$(DOS33) -y transition.dsk BSAVE -a 0xc00 FOLD
|
||||
$(DOS33) -y transition.dsk BSAVE -a 0xef5 OOZE32
|
||||
|
||||
###
|
||||
|
||||
@ -36,6 +38,23 @@ bars.o: bars.s
|
||||
|
||||
###
|
||||
|
||||
clean:
|
||||
rm -f *~ *.o *.lst HELLO RECTANGLE BARS
|
||||
FOLD: fold.o
|
||||
ld65 -o FOLD fold.o -C $(LINKERSCRIPTS)/apple2_c00.inc
|
||||
|
||||
fold.o: fold.s
|
||||
ca65 -o fold.o fold.s -l fold.lst
|
||||
|
||||
###
|
||||
|
||||
OOZE32: ooze32.o
|
||||
ld65 -o OOZE32 ooze32.o -C $(LINKERSCRIPTS)/apple2_3f5.inc
|
||||
|
||||
ooze32.o: ooze32.s
|
||||
ca65 -o ooze32.o ooze32.s -l ooze32.lst
|
||||
|
||||
|
||||
###
|
||||
|
||||
clean:
|
||||
rm -f *~ *.o *.lst HELLO RECTANGLE BARS FOLD OOZE32
|
||||
|
||||
|
85
graphics/hgr/transitions/fold.s
Normal file
85
graphics/hgr/transitions/fold.s
Normal file
@ -0,0 +1,85 @@
|
||||
; When to fold them
|
||||
|
||||
|
||||
; zero page
|
||||
GBASL = $26
|
||||
GBASH = $27
|
||||
YY = $69
|
||||
ROW_SUM = $70
|
||||
|
||||
HGR_X = $E0
|
||||
HGR_XH = $E1
|
||||
HGR_Y = $E2
|
||||
HGR_COLOR = $E4
|
||||
HGR_PAGE = $E6
|
||||
|
||||
OUTL = $FD
|
||||
OUTH = $FE
|
||||
LINE = $FF
|
||||
|
||||
; soft-switches
|
||||
FULLGR = $C052
|
||||
PAGE1 = $C054
|
||||
|
||||
; ROM routines
|
||||
|
||||
HGR2 = $F3D8
|
||||
HGR = $F3E2
|
||||
HPOSN = $F411 ; (Y,X),(A) (values stores in HGRX,XH,Y)
|
||||
|
||||
WAIT = $FCA8 ;; delay 1/2(26+27A+5A^2) us
|
||||
|
||||
;================================
|
||||
; Clear screen and setup graphics
|
||||
;================================
|
||||
bars:
|
||||
|
||||
jsr HGR ; set hi-res 140x192, page2, fullscreen
|
||||
; A and Y both 0 at end
|
||||
|
||||
|
||||
; copy in some nonsense
|
||||
|
||||
; ldy #0
|
||||
;loop:
|
||||
;src_smc:
|
||||
; lda $d000,Y
|
||||
;dst_smc:
|
||||
; sta $4000,Y
|
||||
; dey
|
||||
; bne loop
|
||||
|
||||
; inc src_smc+2
|
||||
; inc dst_smc+2
|
||||
; lda dst_smc+2
|
||||
; cmp #$60
|
||||
; bne loop
|
||||
|
||||
lda #$d0
|
||||
sta OUTH
|
||||
lda #$00
|
||||
sta OUTL
|
||||
|
||||
ldy #0
|
||||
sty LINE
|
||||
|
||||
line_loop:
|
||||
lda LINE
|
||||
jsr HPOSN ; (Y,X),(A) (values stores in HGRX,XH,Y)
|
||||
|
||||
; first top right
|
||||
ldy #39
|
||||
out_loop:
|
||||
lda (OUTL),Y
|
||||
sta (GBASL),Y
|
||||
|
||||
dey
|
||||
bpl out_loop
|
||||
|
||||
inc LINE
|
||||
lda LINE
|
||||
cmp #192
|
||||
bne line_loop
|
||||
|
||||
end:
|
||||
jmp end
|
66
graphics/hgr/transitions/ooze32.s
Normal file
66
graphics/hgr/transitions/ooze32.s
Normal file
@ -0,0 +1,66 @@
|
||||
; Ooze32
|
||||
|
||||
; zero page
|
||||
GBASL = $26
|
||||
GBASH = $27
|
||||
YY = $69
|
||||
ROW_SUM = $70
|
||||
|
||||
HGR_X = $E0
|
||||
HGR_XH = $E1
|
||||
HGR_Y = $E2
|
||||
HGR_COLOR = $E4
|
||||
HGR_PAGE = $E6
|
||||
|
||||
OUTL = $FD
|
||||
OUTH = $FE
|
||||
LINE = $FF
|
||||
|
||||
; soft-switches
|
||||
FULLGR = $C052
|
||||
PAGE1 = $C054
|
||||
|
||||
; ROM routines
|
||||
|
||||
HGR2 = $F3D8
|
||||
HGR = $F3E2
|
||||
HPOSN = $F411 ; (Y,X),(A) (values stores in HGRX,XH,Y)
|
||||
|
||||
WAIT = $FCA8 ;; delay 1/2(26+27A+5A^2) us
|
||||
|
||||
;================================
|
||||
; Clear screen and setup graphics
|
||||
;================================
|
||||
bars:
|
||||
|
||||
jsr HGR ; set hi-res 140x192, page2, fullscreen
|
||||
; A and Y both 0 at end
|
||||
|
||||
forever:
|
||||
sta OUTL
|
||||
sta LINE
|
||||
|
||||
lda #$d0
|
||||
sta OUTH
|
||||
|
||||
|
||||
line_loop:
|
||||
lda LINE
|
||||
jsr HPOSN ; (Y,X),(A) (values stores in HGRX,XH,Y)
|
||||
|
||||
; first top right
|
||||
ldy #0
|
||||
out_loop:
|
||||
lda (OUTL),Y
|
||||
sta (GBASL),Y
|
||||
|
||||
dey
|
||||
bne out_loop
|
||||
|
||||
inc LINE
|
||||
; lda LINE
|
||||
; cmp #192
|
||||
bne line_loop
|
||||
|
||||
end:
|
||||
bpl forever
|
Loading…
x
Reference in New Issue
Block a user