mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-10-25 14:26:11 +00:00
mode7: work on 6502 version of starfield
This commit is contained in:
parent
83090145de
commit
78b9ee1e50
@ -10,12 +10,14 @@ $(DOS33):
|
|||||||
cd ../dos33fs-utils && make
|
cd ../dos33fs-utils && make
|
||||||
|
|
||||||
mode7.dsk: $(DOS33) MODE7_ISLAND MODE7_CHECKERBOARD MODE7_RAINBOW \
|
mode7.dsk: $(DOS33) MODE7_ISLAND MODE7_CHECKERBOARD MODE7_RAINBOW \
|
||||||
SCROLL_DEMO SKY_DEMO
|
SCROLL_DEMO SKY_DEMO STARFIELD_DEMO
|
||||||
$(DOS33) -y mode7.dsk BSAVE -a 0x1000 MODE7_ISLAND
|
$(DOS33) -y mode7.dsk BSAVE -a 0x1000 MODE7_ISLAND
|
||||||
$(DOS33) -y mode7.dsk BSAVE -a 0x1000 MODE7_CHECKERBOARD
|
$(DOS33) -y mode7.dsk BSAVE -a 0x1000 MODE7_CHECKERBOARD
|
||||||
$(DOS33) -y mode7.dsk BSAVE -a 0x1000 MODE7_RAINBOW
|
$(DOS33) -y mode7.dsk BSAVE -a 0x1000 MODE7_RAINBOW
|
||||||
$(DOS33) -y mode7.dsk BSAVE -a 0x1000 SCROLL_DEMO
|
$(DOS33) -y mode7.dsk BSAVE -a 0x1000 SCROLL_DEMO
|
||||||
$(DOS33) -y mode7.dsk BSAVE -a 0x1000 SKY_DEMO
|
$(DOS33) -y mode7.dsk BSAVE -a 0x1000 SKY_DEMO
|
||||||
|
$(DOS33) -y mode7.dsk BSAVE -a 0x1000 STARFIELD_DEMO
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
@ -86,6 +88,16 @@ sky_demo.o: sky_demo.s \
|
|||||||
../asm_routines/gr_setpage.s
|
../asm_routines/gr_setpage.s
|
||||||
ca65 -o sky_demo.o sky_demo.s -l sky_demo.lst
|
ca65 -o sky_demo.o sky_demo.s -l sky_demo.lst
|
||||||
|
|
||||||
|
STARFIELD_DEMO: starfield_demo.o
|
||||||
|
ld65 -o STARFIELD_DEMO starfield_demo.o -C ./apple2_1000.inc
|
||||||
|
|
||||||
|
starfield_demo.o: starfield_demo.s \
|
||||||
|
../asm_routines/hlin_clearscreen.s \
|
||||||
|
../asm_routines/gr_scroll.s \
|
||||||
|
../asm_routines/pageflip.s \
|
||||||
|
../asm_routines/gr_setpage.s
|
||||||
|
ca65 -o starfield_demo.o starfield_demo.s -l starfield_demo.lst
|
||||||
|
|
||||||
scroller: scroller.o
|
scroller: scroller.o
|
||||||
$(CC) $(LFLAGS) -o scroller scroller.o
|
$(CC) $(LFLAGS) -o scroller scroller.o
|
||||||
|
|
||||||
|
72
mode7/starfield_demo.s
Normal file
72
mode7/starfield_demo.s
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
.include "zp.inc"
|
||||||
|
|
||||||
|
;===========
|
||||||
|
; CONSTANTS
|
||||||
|
;===========
|
||||||
|
|
||||||
|
;=====================
|
||||||
|
; Starfield
|
||||||
|
;=====================
|
||||||
|
|
||||||
|
;================================
|
||||||
|
; Clear screen and setup graphics
|
||||||
|
;================================
|
||||||
|
|
||||||
|
jsr clear_screens ; clear top/bottom of page 0/1
|
||||||
|
jsr set_gr_page0
|
||||||
|
|
||||||
|
; Initialize the 2kB of multiply lookup tables
|
||||||
|
jsr init_multiply_tables
|
||||||
|
|
||||||
|
|
||||||
|
;===============
|
||||||
|
; Init Variables
|
||||||
|
;===============
|
||||||
|
lda #0
|
||||||
|
|
||||||
|
starfield_loop:
|
||||||
|
|
||||||
|
starfield_keyboard:
|
||||||
|
|
||||||
|
jsr get_key ; get keypress ; 6
|
||||||
|
|
||||||
|
lda LASTKEY ; 3
|
||||||
|
|
||||||
|
cmp #('Q') ; if quit, then return
|
||||||
|
bne skipskip
|
||||||
|
rts
|
||||||
|
|
||||||
|
skipskip:
|
||||||
|
|
||||||
|
;==================
|
||||||
|
; flip pages
|
||||||
|
;==================
|
||||||
|
|
||||||
|
jsr page_flip ; 6
|
||||||
|
|
||||||
|
;==================
|
||||||
|
; loop forever
|
||||||
|
;==================
|
||||||
|
|
||||||
|
jmp starfield_loop ; 3
|
||||||
|
|
||||||
|
|
||||||
|
;===============================================
|
||||||
|
; External modules
|
||||||
|
;===============================================
|
||||||
|
|
||||||
|
.include "../asm_routines/hlin_clearscreen.s"
|
||||||
|
.include "../asm_routines/pageflip.s"
|
||||||
|
.include "../asm_routines/gr_setpage.s"
|
||||||
|
.include "../asm_routines/keypress.s"
|
||||||
|
.include "../asm_routines/gr_putsprite.s"
|
||||||
|
.include "../asm_routines/text_print.s"
|
||||||
|
|
||||||
|
;===============================================
|
||||||
|
; Variables
|
||||||
|
;===============================================
|
||||||
|
|
||||||
|
|
||||||
|
.include "../asm_routines/multiply_fast.s"
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user