mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-01-01 05:31:52 +00:00
sb: work on vert scroll
This commit is contained in:
parent
68dab4547d
commit
c844297c3b
@ -77,7 +77,10 @@ TITLE: title.o
|
|||||||
ld65 -o TITLE title.o -C $(LINKER_SCRIPTS)/apple2_6000.inc
|
ld65 -o TITLE title.o -C $(LINKER_SCRIPTS)/apple2_6000.inc
|
||||||
|
|
||||||
title.o: title.s zx02_optim.s \
|
title.o: title.s zx02_optim.s \
|
||||||
zp.inc hardware.inc
|
zp.inc hardware.inc \
|
||||||
|
hgr_vscroll.s \
|
||||||
|
graphics/czmg4ap_title.hgr.zx02 \
|
||||||
|
graphics/videlectrix_top.hgr.zx02
|
||||||
ca65 -o title.o title.s -l title.lst
|
ca65 -o title.o title.s -l title.lst
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,2 +1,19 @@
|
|||||||
FN: animation based on Strong Bad E-mail #152 "ISP"
|
FN: animation based on Strong Bad E-mail #152 "ISP"
|
||||||
It's a long download of a "break-dancing" rat
|
It's a long download of a "break-dancing" rat
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
MEMORY_MAP:
|
||||||
|
0000-00ff = zero page
|
||||||
|
0100-01ff = stack
|
||||||
|
0200-0369 = disk variables
|
||||||
|
036A-03ff = vectors and such
|
||||||
|
0400-07ff = text/gr page1
|
||||||
|
0800-0bff = text/gr page2
|
||||||
|
0c00-0fff = ????
|
||||||
|
1000-11ff = disk load code
|
||||||
|
1200-1fff = QLOAD
|
||||||
|
2000-3FFF = hgr page1
|
||||||
|
4000-5fff = hgr page2
|
||||||
|
6000-bfff = program space
|
||||||
|
@ -11,6 +11,7 @@ PNG2SPRITES = ../../../utils/gr-utils/png2sprites
|
|||||||
|
|
||||||
all: strongbad_sample.hgr.zx02 \
|
all: strongbad_sample.hgr.zx02 \
|
||||||
czmg4ap_title.hgr.zx02 \
|
czmg4ap_title.hgr.zx02 \
|
||||||
|
videlectrix_top.hgr.zx02 \
|
||||||
a2_duckpond_title.gr.zx02 \
|
a2_duckpond_title.gr.zx02 \
|
||||||
a2_duckpond.gr.zx02 \
|
a2_duckpond.gr.zx02 \
|
||||||
a2_duckpond_twilight.gr.zx02 \
|
a2_duckpond_twilight.gr.zx02 \
|
||||||
@ -98,6 +99,15 @@ czmg4ap_title.hgr.zx02: czmg4ap_title.hgr
|
|||||||
czmg4ap_title.hgr: czmg4ap_title.png
|
czmg4ap_title.hgr: czmg4ap_title.png
|
||||||
$(PNG_TO_HGR) czmg4ap_title.png > czmg4ap_title.hgr
|
$(PNG_TO_HGR) czmg4ap_title.png > czmg4ap_title.hgr
|
||||||
|
|
||||||
|
####
|
||||||
|
|
||||||
|
videlectrix_top.hgr.zx02: videlectrix_top.hgr
|
||||||
|
$(ZX02) videlectrix_top.hgr videlectrix_top.hgr.zx02
|
||||||
|
|
||||||
|
videlectrix_top.hgr: videlectrix_top.png
|
||||||
|
$(PNG_TO_HGR) videlectrix_top.png > videlectrix_top.hgr
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
####
|
####
|
||||||
|
|
||||||
|
BIN
games/sb/graphics/videlectrix_top.png
Normal file
BIN
games/sb/graphics/videlectrix_top.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 9.4 KiB |
@ -1,7 +1,7 @@
|
|||||||
div7_table = $1000
|
div7_table = $9C00
|
||||||
mod7_table = $1100
|
mod7_table = $9D00
|
||||||
hposn_high = $1200
|
hposn_high = $9E00
|
||||||
hposn_low = $1300
|
hposn_low = $9F00
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
76
games/sb/hgr_vscroll.s
Normal file
76
games/sb/hgr_vscroll.s
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
;================================
|
||||||
|
; HGR vscroll
|
||||||
|
;================================
|
||||||
|
; image to scroll in is in $A000
|
||||||
|
|
||||||
|
hgr_vscroll:
|
||||||
|
|
||||||
|
ldx #191
|
||||||
|
stx SCROLL ; SCROLL = 0
|
||||||
|
|
||||||
|
vscroll_loop:
|
||||||
|
|
||||||
|
; for x=0 to 192-SCROLL
|
||||||
|
; write 40 bytes of 00
|
||||||
|
|
||||||
|
ldx #0
|
||||||
|
vscroll_inner:
|
||||||
|
lda hposn_high,X
|
||||||
|
sta OUTH
|
||||||
|
lda hposn_low,X
|
||||||
|
sta OUTL
|
||||||
|
|
||||||
|
ldy #39
|
||||||
|
lda #0
|
||||||
|
vscroll_line:
|
||||||
|
sta (OUTL),Y
|
||||||
|
dey
|
||||||
|
bpl vscroll_line
|
||||||
|
|
||||||
|
inx
|
||||||
|
cpx SCROLL
|
||||||
|
bne vscroll_inner
|
||||||
|
|
||||||
|
;====================
|
||||||
|
; draw bottom part
|
||||||
|
|
||||||
|
lda #0
|
||||||
|
sta SCROLL_OFFSET
|
||||||
|
vscroll_bottom:
|
||||||
|
stx XSAVE
|
||||||
|
|
||||||
|
ldx SCROLL_OFFSET
|
||||||
|
lda hposn_high,X
|
||||||
|
clc
|
||||||
|
adc #$80 ; ora instead?
|
||||||
|
sta INH
|
||||||
|
lda hposn_low,X
|
||||||
|
sta INL
|
||||||
|
|
||||||
|
inc SCROLL_OFFSET
|
||||||
|
|
||||||
|
ldx XSAVE
|
||||||
|
|
||||||
|
lda hposn_high,X
|
||||||
|
sta OUTH
|
||||||
|
lda hposn_low,X
|
||||||
|
sta OUTL
|
||||||
|
|
||||||
|
ldy #39
|
||||||
|
vscroll_bottom_line:
|
||||||
|
lda (INL),Y
|
||||||
|
sta (OUTL),Y
|
||||||
|
dey
|
||||||
|
bpl vscroll_bottom_line
|
||||||
|
|
||||||
|
inx
|
||||||
|
cpx #192
|
||||||
|
bne vscroll_bottom
|
||||||
|
|
||||||
|
;=====================
|
||||||
|
; scroll whole screen
|
||||||
|
|
||||||
|
dec SCROLL
|
||||||
|
bne vscroll_loop
|
||||||
|
|
||||||
|
rts
|
@ -19,26 +19,59 @@ hires_start:
|
|||||||
bit SET_GR
|
bit SET_GR
|
||||||
bit PAGE1
|
bit PAGE1
|
||||||
|
|
||||||
|
;====================
|
||||||
|
; set up tables
|
||||||
|
;====================
|
||||||
|
|
||||||
|
lda #$20
|
||||||
|
sta HGR_PAGE
|
||||||
|
jsr hgr_make_tables
|
||||||
|
|
||||||
;===================
|
;===================
|
||||||
; Load graphics
|
|
||||||
;===================
|
;===================
|
||||||
load_loop:
|
; scroll the logo
|
||||||
|
;===================
|
||||||
|
;===================
|
||||||
|
scroll_logo:
|
||||||
|
|
||||||
;=============================
|
;===================
|
||||||
|
; decomress to $a000
|
||||||
|
|
||||||
;==========================
|
|
||||||
; Load Image
|
|
||||||
;===========================
|
|
||||||
|
|
||||||
load_image:
|
|
||||||
|
|
||||||
; size in ldsizeh:ldsizel (f1/f0)
|
; size in ldsizeh:ldsizel (f1/f0)
|
||||||
|
|
||||||
lda #<comp_data
|
lda #<vid_top
|
||||||
sta ZX0_src
|
sta ZX0_src
|
||||||
lda #>comp_data
|
lda #>vid_top
|
||||||
|
sta ZX0_src+1
|
||||||
|
|
||||||
|
|
||||||
|
lda #$A0
|
||||||
|
|
||||||
|
jsr full_decomp
|
||||||
|
|
||||||
|
;======================
|
||||||
|
; scroll up vertically
|
||||||
|
;======================
|
||||||
|
|
||||||
|
jsr hgr_vscroll
|
||||||
|
|
||||||
|
|
||||||
|
;===================
|
||||||
|
; Do Title Screen
|
||||||
|
;===================
|
||||||
|
load_loop:
|
||||||
|
|
||||||
|
;==========================
|
||||||
|
; Load Title Image
|
||||||
|
;===========================
|
||||||
|
|
||||||
|
load_title_image:
|
||||||
|
|
||||||
|
; size in ldsizeh:ldsizel (f1/f0)
|
||||||
|
|
||||||
|
lda #<title_data
|
||||||
|
sta ZX0_src
|
||||||
|
lda #>title_data
|
||||||
sta ZX0_src+1
|
sta ZX0_src+1
|
||||||
|
|
||||||
|
|
||||||
@ -74,7 +107,10 @@ done:
|
|||||||
rts
|
rts
|
||||||
|
|
||||||
.include "zx02_optim.s"
|
.include "zx02_optim.s"
|
||||||
|
.include "hgr_tables.s"
|
||||||
|
.include "hgr_vscroll.s"
|
||||||
|
|
||||||
|
title_data:
|
||||||
comp_data:
|
|
||||||
.incbin "graphics/czmg4ap_title.hgr.zx02"
|
.incbin "graphics/czmg4ap_title.hgr.zx02"
|
||||||
|
vid_top:
|
||||||
|
.incbin "graphics/videlectrix_top.hgr.zx02"
|
||||||
|
@ -34,26 +34,20 @@ COLOR = $30
|
|||||||
; overlap applesoft 67-6a,6f,70,af,b0,ca-cd,d8
|
; overlap applesoft 67-6a,6f,70,af,b0,ca-cd,d8
|
||||||
|
|
||||||
|
|
||||||
; DOS33: Confirmed kills $68
|
|
||||||
|
|
||||||
RWTSL = $60
|
|
||||||
RWTSH = $61
|
|
||||||
DOSBUFL = $62
|
|
||||||
DOSBUFH = $63
|
|
||||||
FILEML = $64
|
|
||||||
FILEMH = $65
|
|
||||||
|
|
||||||
|
|
||||||
FRAME = $60
|
FRAME = $60
|
||||||
FRAMEH = $61
|
FRAMEH = $61
|
||||||
WAITING = $62
|
SCROLL = $62
|
||||||
LETTERL = $63
|
XSAVE = $63
|
||||||
LETTERH = $64
|
SCROLL_OFFSET = $64
|
||||||
LETTERX = $65
|
|
||||||
LETTERY = $66
|
;WAITING = $62
|
||||||
LETTERD = $67
|
;LETTERL = $63
|
||||||
LETTER = $68
|
;LETTERH = $64
|
||||||
BLARGH = $69
|
;LETTERX = $65
|
||||||
|
;LETTERY = $66
|
||||||
|
;LETTERD = $67
|
||||||
|
;LETTER = $68
|
||||||
|
;BLARGH = $69
|
||||||
|
|
||||||
;FACTOR_I = $66
|
;FACTOR_I = $66
|
||||||
;FACTOR_F = $67
|
;FACTOR_F = $67
|
||||||
|
Loading…
Reference in New Issue
Block a user