second: hook up lens code

This commit is contained in:
Vince Weaver 2023-10-28 23:23:04 -04:00
parent cda2f2dc5d
commit 96062af3da
5 changed files with 86 additions and 3 deletions

View File

@ -13,6 +13,7 @@ second_d1.dsk: QBOOT QLOAD music.inc \
MUSIC \
./part01_intropan/INTRO \
./part05_dot_tunnel/TUNNEL \
./part10_lens_rotozoom/LENS \
./part12_plasma/PLASMA \
./part13_plasmacube/PLASMACUBE \
./part14_dotbounce/DOTS \
@ -31,7 +32,7 @@ second_d1.dsk: QBOOT QLOAD music.inc \
# $(DOS33_RAW) second_d1.dsk 16 0 ./part05_dot_tunnel/TUNNEL 0 0
# $(DOS33_RAW) second_d1.dsk 19 0 ./part08_gorilla/GORILLA 0 0
# $(DOS33_RAW) second_d1.dsk 21 0 ./part09_leaves_rotozoom/LEAVES 0 0
# $(DOS33_RAW) second_d1.dsk 23 0 ./part10_lens_rotozoom/LENS 0 0
$(DOS33_RAW) second_d1.dsk 23 0 ./part10_lens_rotozoom/LENS 0 0
$(DOS33_RAW) second_d1.dsk 24 0 ./part12_plasma/PLASMA 0 0
$(DOS33_RAW) second_d1.dsk 25 0 ./part13_plasmacube/PLASMACUBE 0 0
$(DOS33_RAW) second_d1.dsk 26 0 ./part14_dotbounce/DOTS 0 0
@ -42,6 +43,9 @@ second_d1.dsk: QBOOT QLOAD music.inc \
####
part10_lens_rotozoom/LENS:
cd part10_lens_rotozoom && make
part12_plasma/PLASMA:
cd part12_plasma && make
@ -285,6 +289,7 @@ generate_common.o: generate_common.c
clean:
rm -f *~ *.o *.lst HELLO SECOND QBOOT QLOAD MUSIC START
cd part10_lens_rotozoom && make clean
cd part12_plasma && make clean
cd part13_plasmacube && make clean
cd part14_dotbounce && make clean

View File

@ -0,0 +1,25 @@
include ../../../Makefile.inc
DOS33 = ../../../utils/dos33fs-utils/dos33
DOS33_RAW = ../../../utils/dos33fs-utils/dos33_raw
EMPTY_DISK = ../../../empty_disk/empty.dsk
LINKER_SCRIPTS = ../../../linker_scripts/
all: LENS
####
LENS: lens.o
ld65 -o LENS lens.o -C $(LINKER_SCRIPTS)/apple2_6000.inc
lens.o: lens.s ../zx02_optim.s \
roto.s rotozoom.s \
../zp.inc ../hardware.inc
ca65 -o lens.o lens.s -l lens.lst
###
clean:
rm -f *~ *.o *.lst LENS
cd graphics && make clean

View File

@ -0,0 +1,41 @@
; Weird head lens/rotozoom
; by deater (Vince Weaver) <vince@deater.net>
.include "../zp.inc"
.include "../hardware.inc"
;.include "qload.inc"
;.include "music.inc"
lens_start:
;=====================
; initializations
;=====================
bit SET_GR
bit HIRES
bit FULLGR
bit PAGE1
;================================
; ROTO
;================================
jsr do_rotozoom
lens_end:
rts
.align $100
.include "../wait_keypress.s"
.include "../zx02_optim.s"
.include "roto.s"

View File

@ -176,8 +176,8 @@ load_address_array:
start_address:
.byte $D0,$D0,$60,$60 ; MUSIC_INTRO, MUSIC_MAIN, INTRO, CHESS
.byte $60,$60,$60,$60 ; GORILLA,LEAVES,LENS,PLASMA
.byte $60,$80,$80,$60 ; CUBE,DOTS,SPHERES,OCEAN
.byte $60,$60,$60,$80 ; GORILLA,LEAVES,LENS,PLASMA
.byte $80,$80,$80,$60 ; CUBE,DOTS,SPHERES,OCEAN
.byte $80 ; POLAR
aux_dest:

View File

@ -158,6 +158,18 @@ load_program_loop:
;==========================
;==========================
;=======================
; run LENS/ROTOZOOM (#6)
;=======================
; copy LENS from AUX $4000 to MAIN $6000
lda #$40 ; AUX src $4000
ldy #$60 ; MAIN dest $6000
ldx #16 ; 16 pages
jsr copy_aux_main
jsr $6000
;=======================
; run PLASMACUBE (#7)
;=======================