2018-08-29 15:46:25 +00:00
|
|
|
; Apple II Megademo
|
|
|
|
|
|
|
|
; by deater (Vince Weaver) <vince@deater.net>
|
|
|
|
|
2018-08-29 21:14:43 +00:00
|
|
|
.include "zp.inc"
|
2018-08-29 15:57:54 +00:00
|
|
|
.include "hardware.inc"
|
|
|
|
|
2018-10-28 15:50:10 +00:00
|
|
|
; external routines
|
|
|
|
|
|
|
|
play_music=$1000
|
|
|
|
mockingboard_init=$1100
|
2018-10-29 04:53:37 +00:00
|
|
|
mockingboard_mute=$11a1
|
2018-10-28 15:50:10 +00:00
|
|
|
|
2018-08-29 15:57:54 +00:00
|
|
|
|
2018-10-13 20:55:14 +00:00
|
|
|
megademo_start: ; this should end up at $4000
|
2018-10-13 18:42:51 +00:00
|
|
|
|
2018-09-30 01:57:22 +00:00
|
|
|
;===================
|
|
|
|
; Check for Apple II and patch
|
|
|
|
;===================
|
|
|
|
|
|
|
|
lda $FBB3 ; IIe and newer is $06
|
|
|
|
cmp #6
|
|
|
|
beq apple_iie
|
|
|
|
|
|
|
|
lda #$54 ; patch the check_email font code
|
|
|
|
sta ce_patch+1
|
|
|
|
|
|
|
|
|
|
|
|
apple_iie:
|
|
|
|
|
2018-10-28 15:50:10 +00:00
|
|
|
;==================
|
|
|
|
; Init mockingboard
|
|
|
|
;==================
|
|
|
|
|
|
|
|
lda #0
|
|
|
|
sta MB_PATTERN
|
2018-10-29 04:36:32 +00:00
|
|
|
lda #$60
|
|
|
|
sta MB_FRAME
|
2018-10-28 15:50:10 +00:00
|
|
|
|
|
|
|
jsr mockingboard_init
|
|
|
|
|
2018-08-29 15:57:54 +00:00
|
|
|
;===================
|
|
|
|
; set graphics mode
|
|
|
|
;===================
|
|
|
|
jsr HOME
|
|
|
|
|
2018-10-29 21:09:02 +00:00
|
|
|
; jsr space_bars
|
2018-10-13 23:03:38 +00:00
|
|
|
|
2018-10-30 05:55:14 +00:00
|
|
|
; jsr arriving_there
|
|
|
|
|
2018-11-02 02:32:28 +00:00
|
|
|
; jsr fireworks
|
|
|
|
|
2018-09-17 04:12:51 +00:00
|
|
|
; C64 Opening Sequence
|
2018-08-29 21:14:43 +00:00
|
|
|
|
2018-09-23 03:07:59 +00:00
|
|
|
jsr c64_opener
|
2018-08-29 21:14:43 +00:00
|
|
|
|
2018-09-17 04:12:51 +00:00
|
|
|
; Falling Apple II
|
2018-08-29 21:14:43 +00:00
|
|
|
|
2018-09-17 04:12:51 +00:00
|
|
|
jsr falling_apple
|
2018-08-29 21:14:43 +00:00
|
|
|
|
2018-09-17 04:12:51 +00:00
|
|
|
; Starring Screens
|
2018-10-01 02:10:13 +00:00
|
|
|
jsr starring
|
2018-09-17 04:12:51 +00:00
|
|
|
|
2018-10-02 04:19:26 +00:00
|
|
|
jsr setup_people_fs
|
|
|
|
jsr starring_people
|
|
|
|
jsr setup_people_deater
|
|
|
|
jsr starring_people
|
2018-10-23 04:27:18 +00:00
|
|
|
jsr setup_people_lg
|
|
|
|
jsr starring_people
|
2018-10-02 04:19:26 +00:00
|
|
|
|
2018-09-17 04:12:51 +00:00
|
|
|
; E-mail arriving
|
2018-09-29 04:59:14 +00:00
|
|
|
jsr check_email
|
|
|
|
|
2018-09-26 18:01:14 +00:00
|
|
|
; Leaving house
|
2018-10-14 04:50:15 +00:00
|
|
|
jsr leaving_home
|
2018-09-26 18:01:14 +00:00
|
|
|
|
|
|
|
; Riding bird
|
2018-10-13 18:42:51 +00:00
|
|
|
jsr bird_mountain
|
2018-09-26 18:01:14 +00:00
|
|
|
|
|
|
|
; Waterfall
|
2018-10-06 03:57:39 +00:00
|
|
|
jsr waterfall
|
2018-09-26 18:01:14 +00:00
|
|
|
|
|
|
|
; Enter ship
|
2018-10-04 04:33:04 +00:00
|
|
|
jsr rocket_takeoff
|
2018-09-26 18:01:14 +00:00
|
|
|
|
2018-09-29 04:59:14 +00:00
|
|
|
; mode7 (???)
|
2018-10-13 18:42:51 +00:00
|
|
|
jsr mode7_flying
|
2018-09-29 04:59:14 +00:00
|
|
|
|
2018-09-26 18:01:14 +00:00
|
|
|
; Fly in space
|
2018-10-13 23:03:38 +00:00
|
|
|
jsr space_bars
|
2018-09-26 18:01:14 +00:00
|
|
|
|
|
|
|
; Arrive
|
2018-10-16 02:18:16 +00:00
|
|
|
jsr arriving_there
|
2018-09-26 18:01:14 +00:00
|
|
|
|
|
|
|
; Fireworks
|
2018-10-13 18:42:51 +00:00
|
|
|
jsr fireworks
|
2018-09-26 18:01:14 +00:00
|
|
|
|
2018-10-23 04:27:18 +00:00
|
|
|
;==================
|
2018-09-26 18:01:14 +00:00
|
|
|
; Game over
|
2018-10-23 04:27:18 +00:00
|
|
|
;==================
|
|
|
|
; we never get here
|
2018-10-28 15:50:10 +00:00
|
|
|
;game_over_man:
|
|
|
|
; jmp game_over_man
|
2018-08-29 15:46:25 +00:00
|
|
|
|
|
|
|
|
2018-10-29 04:36:32 +00:00
|
|
|
.align $100
|
2018-08-29 21:14:43 +00:00
|
|
|
.include "lz4_decode.s"
|
2018-09-17 04:12:51 +00:00
|
|
|
.include "c64_opener.s"
|
2018-09-17 04:44:32 +00:00
|
|
|
.include "falling_apple.s"
|
2018-10-21 18:22:27 +00:00
|
|
|
.include "gr_unrle.s"
|
|
|
|
.include "gr_copy.s"
|
2018-10-01 02:10:13 +00:00
|
|
|
.include "starring.s"
|
2018-10-02 04:19:26 +00:00
|
|
|
.include "starring_people.s"
|
2018-09-29 04:59:14 +00:00
|
|
|
.include "check_email.s"
|
2018-09-23 17:44:03 +00:00
|
|
|
.align $100
|
2018-09-17 17:26:45 +00:00
|
|
|
.include "gr_offsets.s"
|
2018-09-17 17:51:53 +00:00
|
|
|
.include "gr_hline.s"
|
|
|
|
.include "vapor_lock.s"
|
2018-09-21 04:33:51 +00:00
|
|
|
.include "delay_a.s"
|
2018-11-02 02:32:28 +00:00
|
|
|
; .include "wait_keypress.s"
|
2018-09-26 18:01:14 +00:00
|
|
|
.include "random16.s"
|
|
|
|
.align $100
|
2018-10-04 04:33:04 +00:00
|
|
|
.include "fireworks.s"
|
2018-09-26 18:01:14 +00:00
|
|
|
.include "hgr.s"
|
2018-10-13 18:42:51 +00:00
|
|
|
.include "bird_mountain.s"
|
2018-09-26 18:01:14 +00:00
|
|
|
.include "move_letters.s"
|
2018-09-27 03:52:36 +00:00
|
|
|
.align $100
|
|
|
|
.include "gr_putsprite.s"
|
2018-10-13 18:42:51 +00:00
|
|
|
.include "mode7.s"
|
2018-10-13 23:03:38 +00:00
|
|
|
.include "space_bars.s"
|
2018-10-04 04:33:04 +00:00
|
|
|
.include "takeoff.s"
|
2018-10-14 04:50:15 +00:00
|
|
|
.include "leaving.s"
|
2018-10-16 02:18:16 +00:00
|
|
|
.include "arrival.s"
|
2018-10-06 03:57:39 +00:00
|
|
|
.include "waterfall.s"
|
2018-10-13 23:03:38 +00:00
|
|
|
.include "text_print.s"
|
2018-10-14 03:35:03 +00:00
|
|
|
.align $100
|
|
|
|
.include "screen_split.s"
|
2018-10-06 03:57:39 +00:00
|
|
|
|
|
|
|
;============================
|
|
|
|
; Include Sprites
|
|
|
|
;============================
|
|
|
|
.align $100
|
|
|
|
.include "tfv_sprites.inc"
|
2018-10-14 03:35:03 +00:00
|
|
|
.include "mode7_sprites.inc"
|
2018-10-06 03:57:39 +00:00
|
|
|
|
2018-10-17 16:04:14 +00:00
|
|
|
;=================================
|
|
|
|
; Include Text for Sliding Letters
|
|
|
|
; *DONT CROSS PAGES*
|
|
|
|
;=================================
|
|
|
|
.include "letters.s"
|
|
|
|
|
2018-10-06 03:57:39 +00:00
|
|
|
;============================
|
2018-10-14 03:35:03 +00:00
|
|
|
; Include Lores Graphics
|
2018-10-17 16:04:14 +00:00
|
|
|
; No Alignment Needed
|
2018-10-06 03:57:39 +00:00
|
|
|
;============================
|
2018-10-17 16:04:14 +00:00
|
|
|
|
2018-10-21 18:22:27 +00:00
|
|
|
; falling_apple
|
|
|
|
.include "apple_40_96.inc"
|
|
|
|
|
2018-10-18 17:53:37 +00:00
|
|
|
; starring
|
|
|
|
.include "starring1.inc"
|
|
|
|
.include "starring2.inc"
|
2018-10-18 17:58:36 +00:00
|
|
|
.include "fs.inc"
|
|
|
|
.include "deater.inc"
|
2018-10-23 04:27:18 +00:00
|
|
|
.include "lg.inc"
|
|
|
|
.include "sp_names.inc"
|
2018-10-18 17:53:37 +00:00
|
|
|
|
2018-10-22 04:19:34 +00:00
|
|
|
; e-mail
|
|
|
|
.include "email_40_96.inc"
|
|
|
|
|
2018-10-14 04:50:15 +00:00
|
|
|
; leaving
|
|
|
|
.include "leaving.inc"
|
2018-10-17 16:04:14 +00:00
|
|
|
|
2018-10-06 19:43:10 +00:00
|
|
|
; waterfall
|
|
|
|
.include "waterfall_page1.inc"
|
|
|
|
.include "waterfall_page2.inc"
|
2018-10-17 16:04:14 +00:00
|
|
|
|
2018-10-19 02:27:08 +00:00
|
|
|
; takeoff
|
|
|
|
.include "takeoff.inc"
|
|
|
|
|
2018-10-16 02:18:16 +00:00
|
|
|
; arrival
|
|
|
|
.include "arrival.inc"
|
2018-10-14 04:50:15 +00:00
|
|
|
|
2018-11-02 01:46:23 +00:00
|
|
|
;background:
|
|
|
|
.include "fw_background.inc"
|
|
|
|
|
2018-10-14 03:35:03 +00:00
|
|
|
;============================
|
|
|
|
; Include Hires Graphics
|
2018-10-17 16:04:14 +00:00
|
|
|
; No Alignment Needed
|
2018-10-18 17:58:36 +00:00
|
|
|
; FIXME: we can save 8 bytes per file by stripping checksums off end
|
2018-10-14 03:35:03 +00:00
|
|
|
;============================
|
2018-10-17 16:04:14 +00:00
|
|
|
|
2018-10-18 17:53:37 +00:00
|
|
|
; starring
|
|
|
|
starring3:
|
|
|
|
.incbin "starring3.img.lz4",11
|
|
|
|
starring3_end:
|
2018-10-18 17:58:36 +00:00
|
|
|
fs_hgr:
|
|
|
|
.incbin "FS_HGRC.BIN.lz4",11
|
|
|
|
fs_hgr_end:
|
|
|
|
deater_hgr:
|
|
|
|
.incbin "DEATER_HGRC.BIN.lz4",11
|
|
|
|
deater_hgr_end:
|
2018-10-23 04:27:18 +00:00
|
|
|
lg_hgr:
|
|
|
|
.incbin "LG_HGRC.BIN.lz4",11
|
|
|
|
lg_hgr_end:
|
2018-10-18 17:53:37 +00:00
|
|
|
|
2018-10-17 16:04:14 +00:00
|
|
|
; bird mountain
|
2018-10-17 15:40:03 +00:00
|
|
|
katahdin:
|
|
|
|
.incbin "KATC.BIN.lz4",11 ; skip the header
|
|
|
|
katahdin_end:
|
2018-10-14 03:35:03 +00:00
|
|
|
|
2018-10-19 02:27:08 +00:00
|
|
|
; takeoff
|
|
|
|
takeoff_hgr:
|
|
|
|
.incbin "takeoff.img.lz4",11
|
|
|
|
takeoff_hgr_end:
|
|
|
|
|
2018-10-17 16:04:14 +00:00
|
|
|
; spacebars
|
|
|
|
sb_background_hgr:
|
|
|
|
.incbin "SB_BACKGROUNDC.BIN.lz4",11
|
|
|
|
sb_background_hgr_end:
|
2018-10-18 17:58:36 +00:00
|
|
|
|
2018-10-19 02:27:08 +00:00
|
|
|
|
|
|
|
|
|
|
|
|