mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-06-09 07:29:32 +00:00
hgr: web: get bot version working
This commit is contained in:
parent
d597b5210b
commit
7b733e1509
|
@ -17,7 +17,7 @@ appleiibot.dsk: E2.BAS FLAME.BAS FLAME2.BAS HELLO \
|
||||||
COMBO.BAS WIRES.BAS PATTERN.BAS BALL.BAS LINES.BAS MOD9.BAS \
|
COMBO.BAS WIRES.BAS PATTERN.BAS BALL.BAS LINES.BAS MOD9.BAS \
|
||||||
XOR_ZOOM.BAS MOD9_HGR.BAS SIER_HGR.BAS MOVE.BAS SINE.BAS XDRAW128.BAS \
|
XOR_ZOOM.BAS MOD9_HGR.BAS SIER_HGR.BAS MOVE.BAS SINE.BAS XDRAW128.BAS \
|
||||||
GATOR.BAS CURSOR.BAS STARGATE.BAS TUNNEL.BAS STARFIELD.BAS \
|
GATOR.BAS CURSOR.BAS STARGATE.BAS TUNNEL.BAS STARFIELD.BAS \
|
||||||
STAROOPS.BAS HGRSTARFIELD.BAS COOL_BOT.BAS
|
STAROOPS.BAS HGRSTARFIELD.BAS COOL_BOT.BAS WEB.BAS
|
||||||
|
|
||||||
# cp $(EMPTY_DISK)/empty.dsk appleiibot.dsk
|
# cp $(EMPTY_DISK)/empty.dsk appleiibot.dsk
|
||||||
cp empty.dsk appleiibot.dsk
|
cp empty.dsk appleiibot.dsk
|
||||||
|
@ -90,6 +90,7 @@ appleiibot.dsk: E2.BAS FLAME.BAS FLAME2.BAS HELLO \
|
||||||
$(DOS33) -y appleiibot.dsk SAVE A STAROOPS.BAS
|
$(DOS33) -y appleiibot.dsk SAVE A STAROOPS.BAS
|
||||||
$(DOS33) -y appleiibot.dsk SAVE A HGRSTARFIELD.BAS
|
$(DOS33) -y appleiibot.dsk SAVE A HGRSTARFIELD.BAS
|
||||||
$(DOS33) -y appleiibot.dsk SAVE A COOL_BOT.BAS
|
$(DOS33) -y appleiibot.dsk SAVE A COOL_BOT.BAS
|
||||||
|
$(DOS33) -y appleiibot.dsk SAVE A WEB.BAS
|
||||||
|
|
||||||
####
|
####
|
||||||
|
|
||||||
|
@ -509,5 +510,10 @@ COOL_BOT.BAS: cool_bot.bas
|
||||||
|
|
||||||
####
|
####
|
||||||
|
|
||||||
|
WEB.BAS: web.bas
|
||||||
|
$(TOKENIZE) < web.bas > WEB.BAS
|
||||||
|
|
||||||
|
####
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *~ *.o *.lst convert_to convert_from convert_qkumba convert_vmw make_boxes convert_back convert_tgreene LOAD *.BAS
|
rm -f *~ *.o *.lst convert_to convert_from convert_qkumba convert_vmw make_boxes convert_back convert_tgreene LOAD *.BAS
|
||||||
|
|
2
basic/appleiibot/web.bas
Normal file
2
basic/appleiibot/web.bas
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
1FORI=0TO139:POKE1013+I,4*PEEK(2126+I)-192+(PEEK(2266+I/3)-35)/4^(I-INT(I/3)*3):NEXT
|
||||||
|
2&",clNDQnZ0FkQaW0=ioenQfA;#fmVn<-`nVm>`l2.5J*A:$Vm026D0IaNnRlBnQnemYa?oGliaW1KlYl:1>YYkBT,aZL5Ne.ZOkB@0ZZH6Km0X08=kam4fTmaeZWQmb`b4P8ZmR8ZoCj0SM'PX'4F[0>0H5EW-<Z@*5XLY<)5-43FL,$0#F%8FE-&+#0
|
|
@ -22,7 +22,7 @@ circles.dsk: HELLO CIRCLES CIRCLES_FILL ARCS WEB PAC ROSE \
|
||||||
$(DOS33) -y circles.dsk BSAVE -a 0x0C00 CIRCLES
|
$(DOS33) -y circles.dsk BSAVE -a 0x0C00 CIRCLES
|
||||||
$(DOS33) -y circles.dsk BSAVE -a 0x0C00 CIRCLES_FILL
|
$(DOS33) -y circles.dsk BSAVE -a 0x0C00 CIRCLES_FILL
|
||||||
$(DOS33) -y circles.dsk BSAVE -a 0x0C00 ARCS
|
$(DOS33) -y circles.dsk BSAVE -a 0x0C00 ARCS
|
||||||
$(DOS33) -y circles.dsk BSAVE -a 0x0C00 WEB
|
$(DOS33) -y circles.dsk BSAVE -a 0x03f5 WEB
|
||||||
$(DOS33) -y circles.dsk BSAVE -a 0x0C00 PAC
|
$(DOS33) -y circles.dsk BSAVE -a 0x0C00 PAC
|
||||||
$(DOS33) -y circles.dsk BSAVE -a 0x0C00 ROSE
|
$(DOS33) -y circles.dsk BSAVE -a 0x0C00 ROSE
|
||||||
|
|
||||||
|
@ -96,7 +96,7 @@ arcs.o: arcs.s
|
||||||
#
|
#
|
||||||
|
|
||||||
WEB: web.o
|
WEB: web.o
|
||||||
ld65 -o WEB web.o -C $(LINKER_SCRIPTS)/apple2_c00.inc
|
ld65 -o WEB web.o -C $(LINKER_SCRIPTS)/apple2_3f5.inc
|
||||||
|
|
||||||
web.o: web.s
|
web.o: web.s
|
||||||
ca65 -o web.o web.s -l web.lst
|
ca65 -o web.o web.s -l web.lst
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
; circles tiny -- Apple II Hires
|
; web -- Apple II Hires
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
; D0+ used by HGR routines
|
; D0+ used by HGR routines
|
||||||
|
@ -6,9 +7,17 @@
|
||||||
HGR_COLOR = $E4
|
HGR_COLOR = $E4
|
||||||
HGR_PAGE = $E6
|
HGR_PAGE = $E6
|
||||||
|
|
||||||
D = $F9
|
BLAH = $F5
|
||||||
XX = $FA
|
COUNT = $F6
|
||||||
YY = $FB
|
|
||||||
|
|
||||||
|
|
||||||
|
XX = $F7
|
||||||
|
MINUSXX = $F8
|
||||||
|
YY = $F9
|
||||||
|
MINUSYY = $FA
|
||||||
|
|
||||||
|
D = $FB
|
||||||
R = $FC
|
R = $FC
|
||||||
CX = $FD
|
CX = $FD
|
||||||
CY = $FE
|
CY = $FE
|
||||||
|
@ -16,6 +25,9 @@ FRAME = $FF
|
||||||
|
|
||||||
; soft-switches
|
; soft-switches
|
||||||
|
|
||||||
|
KEYPRESS = $C000
|
||||||
|
KEYRESET = $C010
|
||||||
|
|
||||||
; ROM routines
|
; ROM routines
|
||||||
|
|
||||||
HGR2 = $F3D8 ; set hires page2 and clear $4000-$5fff
|
HGR2 = $F3D8 ; set hires page2 and clear $4000-$5fff
|
||||||
|
@ -30,69 +42,44 @@ SETGR = $FB40 ; set graphics and clear LO-RES screen
|
||||||
BELL2 = $FBE4
|
BELL2 = $FBE4
|
||||||
WAIT = $FCA8 ; delay 1/2(26+27A+5A^2) us
|
WAIT = $FCA8 ; delay 1/2(26+27A+5A^2) us
|
||||||
|
|
||||||
circles:
|
web:
|
||||||
|
|
||||||
jsr HGR2
|
jsr HGR2
|
||||||
|
|
||||||
lda #0
|
ldx #90
|
||||||
sta R
|
|
||||||
|
|
||||||
draw_next:
|
draw_next:
|
||||||
.if 0
|
|
||||||
inc FRAME
|
|
||||||
ldy FRAME
|
|
||||||
|
|
||||||
; Random Color
|
stx R
|
||||||
; HCOLOR=1+RND(1)*7
|
|
||||||
lda $F000,Y
|
|
||||||
and #$7 ; mask to 0...7
|
|
||||||
tax
|
|
||||||
lda COLORTBL,X
|
|
||||||
sta HGR_COLOR
|
|
||||||
|
|
||||||
; CX
|
; center
|
||||||
lda $F100,Y
|
|
||||||
and #$7f
|
|
||||||
clc
|
|
||||||
adc #$40
|
|
||||||
sta CX
|
|
||||||
|
|
||||||
; CY
|
; lda #128
|
||||||
lda $F200,Y
|
; sta CX
|
||||||
and #$7f
|
; lda #96
|
||||||
clc
|
; sta CY
|
||||||
adc #$20
|
|
||||||
sta CY
|
|
||||||
|
|
||||||
; R
|
|
||||||
lda $F300,Y
|
|
||||||
and #$3f
|
|
||||||
sta R
|
|
||||||
.endif
|
|
||||||
|
|
||||||
; A=40+RND(1)*200:B=40+RND(1)*100:Y=RND(1)*40
|
|
||||||
|
|
||||||
lda #128
|
|
||||||
sta CX
|
|
||||||
lda #96
|
|
||||||
sta CY
|
|
||||||
|
|
||||||
|
;===============================
|
||||||
|
; draw circle
|
||||||
|
;===============================
|
||||||
|
; draw circle at (CX,CY) of radius R
|
||||||
|
; signed 8-bit math so problems if R > 64?
|
||||||
|
|
||||||
|
|
||||||
; XX=0 YY=R
|
; XX=0 YY=R
|
||||||
; D=3-2*R
|
; D=3-2*R
|
||||||
; GOTO6
|
; GOTO6
|
||||||
|
|
||||||
lda #0
|
lda #0
|
||||||
sta XX
|
sta XX
|
||||||
|
|
||||||
lda R
|
; lda R
|
||||||
sta YY
|
stx YY
|
||||||
|
|
||||||
asl
|
|
||||||
sta D
|
|
||||||
lda #3
|
lda #3
|
||||||
sec
|
sec
|
||||||
sbc D
|
sbc R
|
||||||
|
sbc R
|
||||||
sta D
|
sta D
|
||||||
|
|
||||||
jmp do_plots
|
jmp do_plots
|
||||||
|
@ -114,7 +101,6 @@ circle_loop:
|
||||||
asl
|
asl
|
||||||
asl
|
asl
|
||||||
clc
|
clc
|
||||||
adc D
|
|
||||||
adc #10
|
adc #10
|
||||||
jmp store_D
|
jmp store_D
|
||||||
|
|
||||||
|
@ -124,134 +110,95 @@ else:
|
||||||
asl
|
asl
|
||||||
asl
|
asl
|
||||||
clc
|
clc
|
||||||
adc D
|
|
||||||
adc #6
|
adc #6
|
||||||
store_D:
|
store_D:
|
||||||
|
adc D
|
||||||
sta D
|
sta D
|
||||||
|
|
||||||
do_plots:
|
do_plots:
|
||||||
|
; setup constants
|
||||||
|
|
||||||
|
lda XX
|
||||||
|
eor #$FF
|
||||||
|
sta MINUSXX
|
||||||
|
inc MINUSXX
|
||||||
|
|
||||||
|
lda YY
|
||||||
|
eor #$FF
|
||||||
|
sta MINUSYY
|
||||||
|
inc MINUSYY
|
||||||
|
|
||||||
; HPLOT CX+X,CY+Y
|
; HPLOT CX+X,CY+Y
|
||||||
|
|
||||||
lda CX
|
|
||||||
clc
|
|
||||||
adc XX
|
|
||||||
tax
|
|
||||||
ldy #0
|
|
||||||
lda CY
|
|
||||||
clc
|
|
||||||
adc YY
|
|
||||||
|
|
||||||
jsr HPLOT0 ; plot at (Y,X), (A)
|
|
||||||
|
|
||||||
; HPLOT CX-X,CY+Y
|
; HPLOT CX-X,CY+Y
|
||||||
|
|
||||||
lda CX
|
|
||||||
sec
|
|
||||||
sbc XX
|
|
||||||
tax
|
|
||||||
ldy #0
|
|
||||||
lda CY
|
|
||||||
clc
|
|
||||||
adc YY
|
|
||||||
|
|
||||||
jsr HPLOT0 ; plot at (Y,X), (A)
|
|
||||||
|
|
||||||
; HPLOT CX+X,CY-Y
|
; HPLOT CX+X,CY-Y
|
||||||
|
|
||||||
lda CX
|
|
||||||
clc
|
|
||||||
adc XX
|
|
||||||
tax
|
|
||||||
ldy #0
|
|
||||||
lda CY
|
|
||||||
sec
|
|
||||||
sbc YY
|
|
||||||
|
|
||||||
jsr HPLOT0 ; plot at (Y,X), (A)
|
|
||||||
|
|
||||||
|
|
||||||
; HPLOT CX-X,CY-Y
|
; HPLOT CX-X,CY-Y
|
||||||
|
|
||||||
lda CX
|
|
||||||
sec
|
|
||||||
sbc XX
|
|
||||||
tax
|
|
||||||
ldy #0
|
|
||||||
lda CY
|
|
||||||
sec
|
|
||||||
sbc YY
|
|
||||||
|
|
||||||
jsr HPLOT0 ; plot at (Y,X), (A)
|
|
||||||
|
|
||||||
; HPLOT CX+Y,CY+X
|
; HPLOT CX+Y,CY+X
|
||||||
|
|
||||||
lda CX
|
|
||||||
clc
|
|
||||||
adc YY
|
|
||||||
tax
|
|
||||||
ldy #0
|
|
||||||
lda CY
|
|
||||||
clc
|
|
||||||
adc XX
|
|
||||||
|
|
||||||
jsr HPLOT0 ; plot at (Y,X), (A)
|
|
||||||
|
|
||||||
|
|
||||||
; HPLOT CX-Y,CY+X
|
; HPLOT CX-Y,CY+X
|
||||||
|
|
||||||
lda CX
|
|
||||||
sec
|
|
||||||
sbc YY
|
|
||||||
tax
|
|
||||||
ldy #0
|
|
||||||
lda CY
|
|
||||||
clc
|
|
||||||
adc XX
|
|
||||||
|
|
||||||
jsr HPLOT0 ; plot at (Y,X), (A)
|
|
||||||
|
|
||||||
; HPLOT CX+Y,CY-X
|
; HPLOT CX+Y,CY-X
|
||||||
|
|
||||||
lda CX
|
|
||||||
clc
|
|
||||||
adc YY
|
|
||||||
tax
|
|
||||||
ldy #0
|
|
||||||
lda CY
|
|
||||||
sec
|
|
||||||
sbc XX
|
|
||||||
|
|
||||||
jsr HPLOT0 ; plot at (Y,X), (A)
|
|
||||||
|
|
||||||
; HPLOT CX-Y,CY-X
|
; HPLOT CX-Y,CY-X
|
||||||
|
|
||||||
lda CX
|
; calc X co-ord
|
||||||
sec
|
|
||||||
sbc YY
|
lda #7
|
||||||
|
sta COUNT
|
||||||
|
pos_loop:
|
||||||
|
lda COUNT
|
||||||
|
and #$4
|
||||||
|
lsr
|
||||||
|
tay
|
||||||
|
|
||||||
|
lda COUNT
|
||||||
|
lsr
|
||||||
|
bcc xnoc
|
||||||
|
iny
|
||||||
|
xnoc:
|
||||||
|
; lda CX
|
||||||
|
lda #128
|
||||||
|
clc
|
||||||
|
adc XX,Y
|
||||||
tax
|
tax
|
||||||
|
|
||||||
|
; calc y co-ord
|
||||||
|
|
||||||
|
lda COUNT
|
||||||
|
lsr
|
||||||
|
eor #$2
|
||||||
|
tay
|
||||||
|
|
||||||
|
; lda CY
|
||||||
|
lda #96
|
||||||
|
clc
|
||||||
|
adc XX,Y
|
||||||
|
|
||||||
ldy #0
|
ldy #0
|
||||||
lda CY
|
|
||||||
sec
|
|
||||||
sbc XX
|
|
||||||
|
|
||||||
jsr HPLOT0 ; plot at (Y,X), (A)
|
jsr HPLOT0 ; plot at (Y,X), (A)
|
||||||
|
|
||||||
|
dec COUNT
|
||||||
|
bpl pos_loop
|
||||||
|
|
||||||
|
|
||||||
; IFY>=XTHEN4
|
; IFY>=XTHEN4
|
||||||
lda YY
|
lda YY
|
||||||
cmp XX
|
cmp XX
|
||||||
; bcs circle_loop
|
bcs circle_loop
|
||||||
bcc done
|
|
||||||
|
|
||||||
jmp circle_loop
|
|
||||||
done:
|
done:
|
||||||
lda R
|
ldx R
|
||||||
clc
|
; sec
|
||||||
adc #3
|
; sbc #3
|
||||||
sta R
|
|
||||||
stop:
|
|
||||||
cmp #90
|
|
||||||
beq stop
|
|
||||||
|
|
||||||
; GOTO1
|
dex
|
||||||
jmp draw_next
|
dex
|
||||||
|
dex
|
||||||
|
|
||||||
|
bpl draw_next
|
||||||
|
|
||||||
|
stop:
|
||||||
|
jsr WAIT
|
||||||
|
txa
|
||||||
|
jsr WAIT
|
||||||
|
|
||||||
|
; for once we get this for free, even though we don't need it
|
||||||
|
|
||||||
|
jmp web
|
||||||
|
|
|
@ -156,3 +156,12 @@ VGI End (15)
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
|
||||||
|
Size comparison:
|
||||||
|
|
||||||
|
VGI data Captured+Compressed compressed autoconvert
|
||||||
|
======== =================== ======================
|
||||||
|
clock 385B 1228B
|
||||||
|
rocket 623B
|
||||||
|
door 189B
|
||||||
|
book 212B
|
||||||
|
firep 486B
|
||||||
|
|
Loading…
Reference in New Issue
Block a user