megademo: add then remove LG support

maybe if we have an extra 2k in the end
This commit is contained in:
Vince Weaver 2018-10-18 14:47:16 -04:00
parent 98369f196e
commit 9a949fb908
6 changed files with 136 additions and 125 deletions

View File

@ -30,7 +30,8 @@ megademo.o: megademo.s \
c64_opener.s c64.img.lz4 \
falling_apple.s apple_40_96.inc \
starring.s starring1.inc starring2.inc starring3.img.lz4\
starring_people.s fs.inc FS_HGRC.BIN.lz4 deater.inc DEATER_HGRC.BIN.lz4\
starring_people.s fs.inc FS_HGRC.BIN.lz4 \
deater.inc DEATER_HGRC.BIN.lz4 lg.inc LG_HGRC.BIN.lz4 \
check_email.s email_40_96.inc \
leaving.s leaving.inc tfv_sprites.inc \
arrival.s arrival.inc \
@ -118,6 +119,18 @@ DEATER_HGRC.BIN.lz4: DEATER_HGRC.BIN
DEATER_HGRC.BIN: deater_hgr.bmp
$(B2D) deater_hgr.bmp HGR -d
####
lg.inc: lg.png
$(PNG_TO_RLE) asm ./lg.png lg > lg.inc
LG_HGRC.BIN.lz4: LG_HGRC.BIN
lz4 -f -16 LG_HGRC.BIN
LG_HGRC.BIN: lg_hgr.bmp
$(B2D) lg_hgr.bmp HGR -d
####

View File

@ -16,3 +16,8 @@
30350 -- move more letters to letters file
30319 -- messing around with the "starring" routine
30265 -- moving starring pictures to megademo.s
30009 -- starring people but with LG removed for now
Graphics sizes:
(LG lores=300B)
30569 to 31678 (1k or so)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

BIN
megademo/lg_hgr.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 158 KiB

View File

@ -28,7 +28,7 @@ apple_iie:
jsr HOME
jsr starring
; jsr starring
; jsr arriving_there
@ -47,6 +47,8 @@ apple_iie:
jsr starring_people
jsr setup_people_deater
jsr starring_people
; jsr setup_people_lg
; jsr starring_people
; E-mail arriving
jsr check_email
@ -139,6 +141,7 @@ loop_forever:
.include "starring2.inc"
.include "fs.inc"
.include "deater.inc"
;.include "lg.inc"
; leaving
.include "leaving.inc"
@ -166,6 +169,9 @@ fs_hgr_end:
deater_hgr:
.incbin "DEATER_HGRC.BIN.lz4",11
deater_hgr_end:
;lg_hgr:
;.incbin "LG_HGRC.BIN.lz4",11
;lg_hgr_end:
; bird mountain
katahdin:
@ -177,5 +183,3 @@ sb_background_hgr:
.incbin "SB_BACKGROUNDC.BIN.lz4",11
sb_background_hgr_end:

View File

@ -10,6 +10,81 @@ starring_people:
; init screen
bit KEYRESET
;===================
; init vars
lda #0
sta DRAW_PAGE
;=============================
; Load graphic hgr
sp_smc1:
lda #<fs_hgr
sta LZ4_SRC
sp_smc2:
lda #>fs_hgr
sta LZ4_SRC+1
sp_smc3:
lda #<(fs_hgr_end-8) ; skip checksum at end
sta LZ4_END
sp_smc4:
lda #>(fs_hgr_end-8) ; skip checksum at end
sta LZ4_END+1
lda #<$2000
sta LZ4_DST
lda #>$2000
sta LZ4_DST+1
jsr lz4_decode
;=============================
; Load graphic page0
lda #$0c
sta BASH
lda #$00
sta BASL ; load image to $c00
; Load overwrite version
lda #<fs
sta GBASL
lda #>fs
sta GBASH
jsr load_rle_gr
lda #4
sta DRAW_PAGE
jsr gr_copy_to_current ; copy to page1
; GR part
bit PAGE1
bit LORES ; 4
bit SET_GR ; 4
bit FULLGR ; 4
;=============================
; Load graphic page1
lda #$0c
sta BASH
lda #$00
sta BASL ; load image to $c00
sp_smc5:
lda #<fs
sta GBASL
sp_smc6:
lda #>fs
sta GBASH
jsr load_rle_gr
;===================
; copy to page3
@ -141,151 +216,65 @@ sp_start_over:
setup_people_fs:
;===================
; init vars
lda #0
sta DRAW_PAGE
;=============================
; Load graphic hgr
lda #<fs_hgr
sta LZ4_SRC
sta sp_smc1+1
lda #>fs_hgr
sta LZ4_SRC+1
sta sp_smc2+1
lda #<(fs_hgr_end-8) ; skip checksum at end
sta LZ4_END
sta sp_smc3+1
lda #>(fs_hgr_end-8) ; skip checksum at end
sta LZ4_END+1
lda #<$2000
sta LZ4_DST
lda #>$2000
sta LZ4_DST+1
jsr lz4_decode
;=============================
; Load graphic page0
lda #$0c
sta BASH
lda #$00
sta BASL ; load image to $c00
sta sp_smc4+1
lda #<fs
sta GBASL
sta sp_smc5+1
lda #>fs
sta GBASH
jsr load_rle_gr
lda #4
sta DRAW_PAGE
jsr gr_copy_to_current ; copy to page1
; GR part
bit PAGE1
bit LORES ; 4
bit SET_GR ; 4
bit FULLGR ; 4
;=============================
; Load graphic page1
lda #$0c
sta BASH
lda #$00
sta BASL ; load image to $c00
lda #<fs
sta GBASL
lda #>fs
sta GBASH
jsr load_rle_gr
sta sp_smc6+1
rts
setup_people_deater:
;===================
; init vars
lda #0
sta DRAW_PAGE
;=============================
; Load graphic hgr
lda #<deater_hgr
sta LZ4_SRC
sta sp_smc1+1
lda #>deater_hgr
sta LZ4_SRC+1
sta sp_smc2+1
lda #<(deater_hgr_end-8) ; skip checksum at end
sta LZ4_END
sta sp_smc3+1
lda #>(deater_hgr_end-8) ; skip checksum at end
sta LZ4_END+1
lda #<$2000
sta LZ4_DST
lda #>$2000
sta LZ4_DST+1
jsr lz4_decode
;=============================
; Load graphic page0
lda #$0c
sta BASH
lda #$00
sta BASL ; load image to $c00
sta sp_smc4+1
lda #<deater
sta GBASL
sta sp_smc5+1
lda #>deater
sta GBASH
jsr load_rle_gr
lda #4
sta DRAW_PAGE
jsr gr_copy_to_current ; copy to page1
; GR part
bit PAGE1
bit LORES ; 4
bit SET_GR ; 4
bit FULLGR ; 4
;=============================
; Load graphic page1
lda #$0c
sta BASH
lda #$00
sta BASL ; load image to $c00
lda #<deater
sta GBASL
lda #>deater
sta GBASH
jsr load_rle_gr
sta sp_smc6+1
rts
.if 0
setup_people_lg:
lda #<lg_hgr
sta sp_smc1+1
lda #>lg_hgr
sta sp_smc2+1
lda #<(lg_hgr_end-8) ; skip checksum at end
sta sp_smc3+1
lda #>(lg_hgr_end-8) ; skip checksum at end
sta sp_smc4+1
lda #<lg
sta sp_smc5+1
lda #>lg
sta sp_smc6+1
rts
.endif