mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-06-13 03:29:32 +00:00
Compare commits
2 Commits
871836628a
...
a6a9c0ce28
Author | SHA1 | Date | |
---|---|---|---|
|
a6a9c0ce28 | ||
|
62763967d6 |
|
@ -226,7 +226,7 @@ ENGINE: engine.o
|
||||||
|
|
||||||
engine.o: engine.s zp.inc hardware.inc \
|
engine.o: engine.s zp.inc hardware.inc \
|
||||||
text_help.s gr_fast_clear.s text_quit_yn.s text_drawbox.s \
|
text_help.s gr_fast_clear.s text_quit_yn.s text_drawbox.s \
|
||||||
level1_enemies.s engine_items.s \
|
engine_enemies.s engine_items.s \
|
||||||
graphics/keen_graphics.inc sprites/keen_sprites.inc \
|
graphics/keen_graphics.inc sprites/keen_sprites.inc \
|
||||||
status_bar.s draw_keen.s move_keen.s gr_putsprite_crop.s \
|
status_bar.s draw_keen.s move_keen.s gr_putsprite_crop.s \
|
||||||
draw_tilemap.s tilemap_lookup.s \
|
draw_tilemap.s tilemap_lookup.s \
|
||||||
|
|
|
@ -121,7 +121,7 @@ level_start:
|
||||||
|
|
||||||
|
|
||||||
;====================================
|
;====================================
|
||||||
; load level1 tilemap
|
; load tilemap
|
||||||
;====================================
|
;====================================
|
||||||
|
|
||||||
lda #<level_data_zx02
|
lda #<level_data_zx02
|
||||||
|
@ -216,10 +216,10 @@ done_with_keen:
|
||||||
|
|
||||||
lda LEVEL_OVER
|
lda LEVEL_OVER
|
||||||
cmp #NEXT_LEVEL
|
cmp #NEXT_LEVEL
|
||||||
beq level1_levelover
|
beq level_over
|
||||||
|
|
||||||
cmp #GAME_OVER
|
cmp #GAME_OVER
|
||||||
beq level1_gameover
|
beq game_over
|
||||||
|
|
||||||
; got here, touched enemy
|
; got here, touched enemy
|
||||||
|
|
||||||
|
@ -281,16 +281,16 @@ skip_end_sound:
|
||||||
|
|
||||||
|
|
||||||
dec KEENS
|
dec KEENS
|
||||||
bpl level1_levelover
|
bpl level_over
|
||||||
|
|
||||||
level1_gameover:
|
game_over:
|
||||||
|
|
||||||
; mars plays the sound
|
; mars plays the sound
|
||||||
|
|
||||||
lda #GAME_OVER
|
lda #GAME_OVER
|
||||||
sta LEVEL_OVER
|
sta LEVEL_OVER
|
||||||
|
|
||||||
level1_levelover:
|
level_over:
|
||||||
|
|
||||||
lda #LOAD_MARS
|
lda #LOAD_MARS
|
||||||
sta WHICH_LOAD
|
sta WHICH_LOAD
|
||||||
|
@ -322,7 +322,7 @@ level1_levelover:
|
||||||
.include "move_keen.s"
|
.include "move_keen.s"
|
||||||
.include "handle_laser.s"
|
.include "handle_laser.s"
|
||||||
.include "draw_tilemap.s"
|
.include "draw_tilemap.s"
|
||||||
.include "level1_enemies.s"
|
.include "engine_enemies.s"
|
||||||
.include "engine_items.s"
|
.include "engine_items.s"
|
||||||
|
|
||||||
.include "level1_sfx.s"
|
.include "level1_sfx.s"
|
||||||
|
@ -331,8 +331,3 @@ level1_levelover:
|
||||||
.include "random16.s"
|
.include "random16.s"
|
||||||
|
|
||||||
.include "tilemap_lookup.s"
|
.include "tilemap_lookup.s"
|
||||||
|
|
||||||
;level1_data_zx02:
|
|
||||||
; .incbin "maps/level1_map.zx02"
|
|
||||||
|
|
||||||
;oracle_message:
|
|
||||||
|
|
|
@ -7,6 +7,9 @@ ITEM_SPECIAL = 25
|
||||||
|
|
||||||
ITEM_KEYCARD = 32
|
ITEM_KEYCARD = 32
|
||||||
|
|
||||||
|
FIRST_ENEMY = 20
|
||||||
|
LAST_ENEMY = 23
|
||||||
|
|
||||||
; POGO= 24
|
; POGO= 24
|
||||||
; SPECIAL = 25 (ship part or oracle)
|
; SPECIAL = 25 (ship part or oracle)
|
||||||
; GUN = 26
|
; GUN = 26
|
||||||
|
@ -299,13 +302,15 @@ was_ship_part:
|
||||||
; check if touching enemy
|
; check if touching enemy
|
||||||
;=============================
|
;=============================
|
||||||
; level1 at least you can't touch with head?
|
; level1 at least you can't touch with head?
|
||||||
|
; level7 you can...
|
||||||
check_enemy:
|
check_enemy:
|
||||||
ldy #0
|
ldy #0
|
||||||
lda (INL),Y
|
lda (INL),Y
|
||||||
cmp #21 ; green tentacles
|
|
||||||
beq touched_enemy
|
cmp #FIRST_ENEMY ;
|
||||||
cmp #22 ; clam thing
|
bcc done_check_enemy ; if less then, not enemy
|
||||||
bne done_check_enemy
|
cmp #LAST_ENEMY+1 ;
|
||||||
|
bcs done_check_enemy
|
||||||
|
|
||||||
touched_enemy:
|
touched_enemy:
|
||||||
|
|
||||||
|
|
|
@ -5,19 +5,19 @@
|
||||||
; at $6000
|
; at $6000
|
||||||
|
|
||||||
level7_data:
|
level7_data:
|
||||||
.byte 116 ;MAX_TILE_X = 116 ; 116 wide
|
.byte 124 ;MAX_TILE_X
|
||||||
.byte 20 ;MAX_TILE_Y = 16 ; 20 tall
|
.byte 60 ;MAX_TILE_Y
|
||||||
|
|
||||||
.byte 4 ;START_KEEN_TILEX = 4
|
.byte 2 ;START_KEEN_TILEX
|
||||||
.byte 16 ;START_KEEN_TILEY = 16
|
.byte 48 ;START_KEEN_TILEY
|
||||||
|
|
||||||
.byte 0 ;START_TILEMAP_X = 0
|
.byte 0 ;START_TILEMAP_X
|
||||||
.byte 8 ;START_TILEMAP_Y = 8
|
.byte 40 ;START_TILEMAP_Y
|
||||||
|
|
||||||
.byte 0 ;NUM_ENEMIES = 8
|
.byte 8 ;NUM_ENEMIES
|
||||||
|
|
||||||
.byte 32 ;HARDTOP_TILES = 32 ; start at 32
|
.byte 40 ;HARDTOP_TILES
|
||||||
.byte 40 ;ALLHARD_TILES = 40 ; start at 40
|
.byte 48 ;ALLHARD_TILES
|
||||||
|
|
||||||
|
|
||||||
.align $100
|
.align $100
|
||||||
|
@ -28,29 +28,39 @@ enemy_data:
|
||||||
enemy_data_out: .byte 1, 0, 0, 0, 0, 0, 0, 0
|
enemy_data_out: .byte 1, 0, 0, 0, 0, 0, 0, 0
|
||||||
enemy_data_exploding: .byte 0, 0, 0, 0, 0, 0, 0, 0
|
enemy_data_exploding: .byte 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
enemy_data_type: .byte YORP, YORP, YORP, YORP, YORP, YORP,YORP,YORP
|
enemy_data_type: .byte YORP, YORP, YORP, YORP, YORP, YORP,YORP,YORP
|
||||||
enemy_data_direction: .byte RIGHT, LEFT, LEFT, RIGHT, LEFT, RIGHT,LEFT,LEFT
|
enemy_data_direction: .byte LEFT, LEFT, LEFT, LEFT, LEFT, LEFT,RIGHT,LEFT
|
||||||
enemy_data_tilex: .byte 16, 19, 23, 14, 14, 16, 42, 70
|
enemy_data_tilex: .byte 61, 78, 16, 63, 31, 28, 112, 36
|
||||||
enemy_data_tiley: .byte 9, 9, 9, 45, 38, 43, 44, 34
|
enemy_data_tiley: .byte 4, 4, 15, 15, 28, 27, 54, 56
|
||||||
enemy_data_x: .byte 0, 0, 0, 0, 0, 0, 0, 0
|
enemy_data_x: .byte 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
enemy_data_y: .byte 0, 0, 0, 0, 0, 0, 0, 0
|
enemy_data_y: .byte 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
enemy_data_state: .byte 0, 0, 0, 0, 0, 0, 0, 0
|
enemy_data_state: .byte 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
enemy_data_count: .byte 8, 8, 8, 8, 8, 8, 8, 8
|
enemy_data_count: .byte 8, 8, 8, 8, 8, 8, 8, 8
|
||||||
|
|
||||||
; FIXME: this is not correct
|
; enemy0: yorp @61,4, left
|
||||||
; enemy1: yorp @16,9, right
|
; enemy1: yorp @78,4 left
|
||||||
; enemy2: yorp @19,9 left
|
; enemy2: yorp @16,15 left
|
||||||
; enemy3: yorp @23,9 left
|
; enemy3: yorp @63,15 left
|
||||||
; enemy4: yorp @14,45 right
|
; enemy4: yorp @31,28 left
|
||||||
; enemy5: yorp @14,38 left
|
; enemy5: yorp @28,27 left
|
||||||
; enemy6: yorp @16,43 right
|
; enemy6: yorp @112,54 right
|
||||||
; enemy7: yorp @42,44 left
|
; enemy7: yorp @36,56 left
|
||||||
; enemy8: yorp @70,34 left
|
|
||||||
|
|
||||||
; enemy9: garg @50,31 right
|
; enemy8: garg @36,4 right
|
||||||
; enemy10: garg @63,45 right
|
; enemy9: garg @39,4 right
|
||||||
|
; enemy10: garg @105,2 left
|
||||||
|
; enemy11: garg @102,11 right
|
||||||
|
; enemy12: garg @105,17 left
|
||||||
|
; enemy13: garg @96,21 left
|
||||||
|
; enemy14: garg @22,33 right
|
||||||
|
; enemy15: garg @34,34 right
|
||||||
|
; enemy16: garg @52,49 right
|
||||||
|
|
||||||
|
; enemy17: butler robot@91,39 right
|
||||||
|
; enemy18: butler robot@86,39 right
|
||||||
|
; enemy19: butler robot@31,39 left
|
||||||
|
|
||||||
|
; enemy?: big robot@93,56 right
|
||||||
|
|
||||||
; enemy?: butler robot@27,7 left
|
|
||||||
; enemy?: vorticon @53,8 right
|
|
||||||
|
|
||||||
.align $100
|
.align $100
|
||||||
|
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
Binary file not shown.
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
Loading…
Reference in New Issue
Block a user