-
Notifications
You must be signed in to change notification settings - Fork 2
/
build.bat
53 lines (40 loc) · 1.21 KB
/
build.bat
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
@echo off
set GB_SDK_HOME=d:\opt\gameboy
set EMU_HOME=%GB_SDK_HOME%\emulators\no$gmb
set RGBDS_HOME=%GB_SDK_HOME%\rgbds
set project_name=sokoban
set PROJECT_HOME=%~dp0
echo "Cleaning..."
del %project_name%.gb
del %project_name%.map
del %project_name%.sym
echo "Compiling dependencies..."
%RGBDS_HOME%\rgbasm95 -ovars.obj inc\vars.asm
%RGBDS_HOME%\rgbasm95 -omemory.obj inc\memory.asm
%RGBDS_HOME%\rgbasm95 -okeypad.obj inc\keypad.asm
%RGBDS_HOME%\rgbasm95 -oplayer.obj inc\player.asm
%RGBDS_HOME%\rgbasm95 -ocrate.obj inc\crate.asm
echo "Compiling project..."
%RGBDS_HOME%\rgbasm95 -o%project_name%.obj %project_name%.asm
echo "Generating linker input..."
echo [Objects] > LINK
echo vars.obj >> LINK
echo memory.obj >> LINK
echo keypad.obj >> LINK
echo player.obj >> LINK
echo crate.obj >> LINK
echo %project_name%.obj >> LINK
echo [Output] >> LINK
echo %project_name%.gb >> LINK
echo "Linking..."
%RGBDS_HOME%\xlink95 -m%project_name%.map -n%project_name%.sym LINK
echo "Fixing..."
%RGBDS_HOME%\rgbfix95 -p -v %project_name%.gb
del vars.obj
del memory.obj
del keypad.obj
del player.obj
del crate.obj
del sokoban.obj
del LINK
if exist %project_name%.gb start %EMU_HOME%\no$gmb %PROJECT_HOME%\%project_name%.gb