-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbuildme.68k
117 lines (93 loc) · 5.52 KB
/
buildme.68k
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
;****************************************************************************
; Build settings
;****************************************************************************
SHOW_COPYRIGHT: equ 1 ; Show copyright on title screen?
HAS_MUSIC: equ 0 ; Include music?
DEBUG_INIT: equ 0 ; Simulate some real hardware conditions
DEBUG_MENU: equ 1 ; Enable the debug menu
DEBUG_CONTROLS: equ 1 ; Enable debug-only controls
DEBUG_HUD: equ 0 ; Show debug info in the HUD
DEBUG_DRAWUSAGE: equ 0 ; Show time spent drawing objects (emu only!)
LANG_EN: equ 1 ; Set this to make an English build
LANG_ES: equ 0 ; Set this to make a Spanish build
;****************************************************************************
; Game tweaks
;****************************************************************************
SCORE_BROOM: equ $100 ; Killing an enemy with the broom
SCORE_MAGIC: equ $200 ; Killing an enemy with magic
SCORE_FREEZE: equ $25 ; Bella freezes an enemy
SCORE_ITEM: equ $250 ; Getting an item
;****************************************************************************
; Program source code
;****************************************************************************
include "src-68k/macros.68k" ; Some useful macros
include "src-68k/header.68k" ; ROM header
include "src-68k/main.68k" ; Entry point, etc.
include "src-68k/joypad.68k" ; Joypad reading
include "src-68k/video.68k" ; Video hardware code
include "src-68k/hblank.68k" ; Raster effect routines
include "src-68k/sound.68k" ; Sound hardware code
include "src-68k/decompress.68k" ; Decompression subroutines
include "src-68k/random.68k" ; Random number generator
include "src-68k/text.68k" ; String manipulation
include "src-68k/menu.68k" ; Handler for all menus
if *<=$8000
inform 0, "Kernel size: %d bytes (%d.%d%s)", *, (*)*100/$8000, (*)*1000/$8000%10, "%"
else
inform 3, "Kernel is too large! (%d bytes)", *
endc
include "src-68k/echo.68k" ; Echo sound engine
include "src-68k/esf.68k" ; Echo stream macros
include "src-68k/error.68k" ; Crash screen
include "src-68k/title.68k" ; Title screen
include "src-68k/options.68k" ; Options menu
include "src-68k/debug_menu.68k" ; Debug menu
include "src-68k/game_over.68k" ; Game over screen
include "src-68k/ingame.68k" ; In-game main loop
include "src-68k/hud.68k" ; Drawing the HUD
include "src-68k/stage.68k" ; Handles stage data
include "src-68k/parallax.68k" ; Parallaxes
include "src-68k/player.68k" ; Player behavior
include "src-68k/objects.68k" ; Object manager
include "src-68k/platform.68k" ; Platform objects
include "src-68k/slope.68k" ; Slope objects
include "src-68k/items.68k" ; Items and the like
include "src-68k/magic.68k" ; Magic-related objects
include "src-68k/particles.68k" ; Harmless particles
include "src-68k/door.68k" ; Door behavior
include "src-68k/spikeball.68k" ; Spikeball behavior
include "src-68k/ghost.68k" ; Ghost behavior
include "src-68k/spider.68k" ; Spider behavior
include "src-68k/piranha.68k" ; Piranha behavior
include "src-68k/knight.68k" ; Knight behavior
include "src-68k/mirror.68k" ; Merlina doppleganger
include "src-68k/cogwheel.68k" ; Cogwheels
include "src-68k/lava.68k" ; Lava hazards
include "src-68k/wall.68k" ; Moving wall
include "src-68k/variables.68k" ; Variable declarations
inform 0, "Program size: %d bytes (%d.%dKB)", *, (*)/1024, (*)*10/1024%10
;****************************************************************************
; Game graphics
;****************************************************************************
include "data/palettes.68k" ; Palettes
include "data/merlina.68k" ; Merlina's sprites
include "data/enemies.68k" ; Enemy sprites
include "data/tileset.68k" ; Level tileset
include "data/ingame.68k" ; Common graphics in-game
include "data/parallax.68k" ; Parallax graphics
include "data/title.68k" ; Title screen graphics
include "data/menu.68k" ; Menu graphics
include "data/error.68k" ; Crash screen font
;****************************************************************************
; Other game data
;****************************************************************************
include "data/stages.68k" ; All stage layouts
include "data/text.68k" ; Data needed to display text
include "data/math.68k" ; Look-up tables and such
include "data/sound.68k" ; Sound data
;****************************************************************************
; Random stats
;****************************************************************************
inform 0, "ROM size: %d bytes (%d.%dKB)", *, (*)/1024, (*)*10/1024%10
inform 0, "RAM usage in-game: %d bytes (%d.%dKB)", (FreeRAM-$FF0000), (FreeRAM-$FF0000)/1024, (FreeRAM-$FF0000)*10/1024%10
inform 0, "VRAM usage in-game: %d tiles (%d.%d%s)", VusageIngame, VusageIngame*100/1024, VusageIngame*1000/1024%10, "%"