mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-02-22 14:29:00 +00:00
sa: more work on ending
This commit is contained in:
parent
7bc95c55fd
commit
a752622671
@ -4,7 +4,7 @@ MEMORY {
|
||||
}
|
||||
|
||||
SEGMENTS {
|
||||
CODE: load = RAM, type = ro;
|
||||
CODE: load = RAM, type = ro, align=$1000;
|
||||
RODATA: load = RAM, type = ro;
|
||||
DATA: load = RAM, type = rw;
|
||||
BSS: load = RAM, type = bss, define = yes;
|
||||
|
@ -7,9 +7,9 @@ all: still_alive.dsk
|
||||
|
||||
still_alive.dsk: STILL_ALIVE TITLE.BAS ENDING
|
||||
$(DOS33) -y still_alive.dsk BSAVE -a 0x0C00 STILL_ALIVE
|
||||
$(DOS33) -y still_alive.dsk BSAVE -a 0x4000 ENDING
|
||||
$(DOS33) -y still_alive.dsk BSAVE -a 0x2000 ENDING
|
||||
$(DOS33) -y still_alive.dsk SAVE A TITLE.BAS
|
||||
|
||||
# $(DOS33) -y still_alive.dsk SAVE B GLADOS.HGR
|
||||
|
||||
STILL_ALIVE: still_alive.o
|
||||
ld65 -o STILL_ALIVE still_alive.o -C ../linker_scripts/apple2_c00.inc
|
||||
@ -23,7 +23,7 @@ still_alive.o: still_alive.s \
|
||||
ca65 -o still_alive.o still_alive.s -l still_alive.lst
|
||||
|
||||
ENDING: ending.o
|
||||
ld65 -o ENDING ending.o -C ../linker_scripts/apple2_4000.inc
|
||||
ld65 -o ENDING ending.o -C ../linker_scripts/apple2_2000.inc
|
||||
|
||||
ending.o: ending.s \
|
||||
GLADOS.HGR
|
||||
|
@ -45,7 +45,7 @@ Memory Map
|
||||
0400: Text Page 0 (AUX 0400: 80 column text)
|
||||
|
||||
2000: HGR Page0
|
||||
4000: HGP Page1
|
||||
4000: HGR Page1
|
||||
9600: DOS 37.5k
|
||||
C000: I/O Space
|
||||
D000: ROM
|
||||
|
@ -19,6 +19,10 @@ HGR_SCALE EQU $E7
|
||||
HGR_COLLISIONS EQU $EA
|
||||
HGR_ROTATION EQU $F9
|
||||
|
||||
X1 EQU $FD
|
||||
X2 EQU $FE
|
||||
Y1 EQU $FF
|
||||
|
||||
HCLR EQU $F3F2
|
||||
HPOSN EQU $F411
|
||||
HPLOT0 EQU $F457
|
||||
@ -35,59 +39,216 @@ COLORTBL EQU $F6F6
|
||||
bit TEXTGR ; mixed text/graphics
|
||||
bit PAGE0 ; first graphics page
|
||||
jsr HOME
|
||||
bit PAGE1 ; first graphics page
|
||||
|
||||
lda #$20
|
||||
lda #$40
|
||||
sta HGR_PAGE
|
||||
|
||||
jsr HCLR
|
||||
; jsr HCLR
|
||||
|
||||
|
||||
|
||||
; lda #0
|
||||
; sta HGR_ROTATION
|
||||
; lda #1
|
||||
; sta HGR_SCALE
|
||||
lda #0
|
||||
sta HGR_ROTATION
|
||||
lda #1
|
||||
sta HGR_SCALE
|
||||
|
||||
|
||||
; jsr hgr_clear
|
||||
|
||||
; lda #<chell_right
|
||||
; sta HGR_SHAPE
|
||||
; lda #>chell_right
|
||||
; sta HGR_SHAPE+1
|
||||
;======================
|
||||
; Draw Chell
|
||||
;======================
|
||||
|
||||
lda #<chell_right
|
||||
sta HGR_SHAPE
|
||||
lda #>chell_right
|
||||
sta HGR_SHAPE+1
|
||||
|
||||
; HFNS puts X-coord in Y,X, Y-coord in A
|
||||
; HPOSN sets up GBASL/GBASH
|
||||
|
||||
; ldy #0
|
||||
; lda #100
|
||||
; tax
|
||||
; jsr HPOSN
|
||||
ldy #0
|
||||
lda #112
|
||||
ldx #69
|
||||
jsr HPOSN
|
||||
|
||||
; lda HGR_ROTATION ; rotation
|
||||
lda HGR_ROTATION ; rotation
|
||||
|
||||
; jsr XDRAW1
|
||||
jsr XDRAW1
|
||||
|
||||
|
||||
; HCOLOR=3
|
||||
ldx #3
|
||||
;======================
|
||||
; Draw Blue Core
|
||||
;======================
|
||||
|
||||
lda #<blue_core
|
||||
sta HGR_SHAPE
|
||||
lda #>blue_core
|
||||
sta HGR_SHAPE+1
|
||||
|
||||
; HFNS puts X-coord in Y,X, Y-coord in A
|
||||
; HPOSN sets up GBASL/GBASH
|
||||
|
||||
; 2005 SCALE=1:KX=150:KY=65:XDRAW 7 AT KX,KY:KO=0
|
||||
|
||||
ldy #0
|
||||
lda #65
|
||||
ldx #150
|
||||
jsr HPOSN
|
||||
|
||||
lda HGR_ROTATION ; rotation
|
||||
|
||||
jsr XDRAW1
|
||||
|
||||
;=====================================
|
||||
; Draw Explosion
|
||||
;=====================================
|
||||
|
||||
|
||||
|
||||
|
||||
; HCOLOR=5
|
||||
ldx #5
|
||||
lda COLORTBL,X ; get color pattern from table
|
||||
sta HGR_COLOR
|
||||
|
||||
; HPLOT 100,100 to 150,150
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
;4010 FOR X=0 TO 278 STEP 5:HPLOT X,0 TO 120,85:V=PEEK(-16336):NEXT X
|
||||
lda #0
|
||||
sta X1
|
||||
sta X2
|
||||
loop1:
|
||||
|
||||
bit $C030
|
||||
|
||||
; HPLOT X,0 to 120,85
|
||||
; X= (y,x), Y=a
|
||||
ldy #0
|
||||
lda #100
|
||||
ldx #100
|
||||
ldy X2
|
||||
ldx X1
|
||||
lda #0
|
||||
|
||||
jsr HPLOT0
|
||||
|
||||
; X=(x,a), y=Y
|
||||
lda #150
|
||||
lda #120
|
||||
ldx #0
|
||||
ldy #150
|
||||
ldy #85
|
||||
jsr HGLIN
|
||||
|
||||
clc
|
||||
lda X1
|
||||
adc #5
|
||||
sta X1
|
||||
lda X2
|
||||
adc #0
|
||||
sta X2
|
||||
|
||||
cmp #1
|
||||
bne loop1
|
||||
lda X1
|
||||
cmp #22
|
||||
bcc loop1
|
||||
|
||||
;4015 FOR Y=0 TO 159 STEP 5:HPLOT 278,Y TO 120,85:V=PEEK(-16336):NEXT Y
|
||||
|
||||
lda #0
|
||||
sta Y1
|
||||
loop2:
|
||||
|
||||
bit $C030
|
||||
|
||||
; HPLOT 278,Y to 120,85
|
||||
; X= (y,x), Y=a
|
||||
ldy #1
|
||||
ldx #22
|
||||
lda Y1
|
||||
|
||||
jsr HPLOT0
|
||||
|
||||
; X=(x,a), y=Y
|
||||
lda #120
|
||||
ldx #0
|
||||
ldy #85
|
||||
jsr HGLIN
|
||||
|
||||
clc
|
||||
lda Y1
|
||||
adc #5
|
||||
sta Y1
|
||||
|
||||
cmp #159
|
||||
bcc loop2
|
||||
|
||||
;4020 FOR X=278 TO 0 STEP -5:HPLOT X,159 TO 120,85:V=PEEK(-16336):NEXT X
|
||||
lda #22
|
||||
sta X1
|
||||
lda #1
|
||||
sta X2
|
||||
loop3:
|
||||
|
||||
bit $C030
|
||||
|
||||
; HPLOT X,159 to 120,85
|
||||
; X= (y,x), Y=a
|
||||
ldy X2
|
||||
ldx X1
|
||||
lda #159
|
||||
|
||||
jsr HPLOT0
|
||||
|
||||
; X=(x,a), y=Y
|
||||
lda #120
|
||||
ldx #0
|
||||
ldy #85
|
||||
jsr HGLIN
|
||||
|
||||
sec
|
||||
lda X1
|
||||
sbc #5
|
||||
sta X1
|
||||
lda X2
|
||||
sbc #0
|
||||
sta X2
|
||||
|
||||
cmp #0
|
||||
bne loop3
|
||||
lda X1
|
||||
cmp #5
|
||||
bcs loop3
|
||||
|
||||
;4025 FOR Y=159 TO 0 STEP -5:HPLOT 0,Y TO 120,85:V=PEEK(-16336):NEXT Y
|
||||
|
||||
lda #159
|
||||
sta Y1
|
||||
loop4:
|
||||
|
||||
bit $C030
|
||||
|
||||
; HPLOT 0,Y to 120,85
|
||||
; X= (y,x), Y=a
|
||||
ldy #0
|
||||
ldx #0
|
||||
lda Y1
|
||||
|
||||
jsr HPLOT0
|
||||
|
||||
; X=(x,a), y=Y
|
||||
lda #120
|
||||
ldx #0
|
||||
ldy #85
|
||||
jsr HGLIN
|
||||
|
||||
sec
|
||||
lda Y1
|
||||
sbc #5
|
||||
sta Y1
|
||||
|
||||
cmp #5
|
||||
bcs loop4
|
||||
|
||||
infinite_loop:
|
||||
jmp infinite_loop
|
||||
@ -101,5 +262,7 @@ infinite_loop:
|
||||
; Shape Table
|
||||
.include "objects_shape.inc"
|
||||
|
||||
.align 8192
|
||||
|
||||
; Graphics Background
|
||||
.incbin "GLADOS.HGR"
|
||||
.incbin "GLADOS.HGR",4
|
||||
|
@ -158,5 +158,6 @@ chell_right:
|
||||
; RT DN RT DN LT DN RT DN NLT LT DN LT LT LT
|
||||
; STOP
|
||||
|
||||
blue_core:
|
||||
.byte $fa,$24,$0d,$0d,$36,$9f,$3a,$3f, $3c,$3c,$2c,$3c,$0c,$25,$2d,$2d
|
||||
.byte $2d,$2e,$2e,$3e,$2e,$1e,$37,$3f, $07,$00
|
||||
|
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user