4cade/winmake.bat

372 lines
16 KiB
Batchfile
Raw Permalink Normal View History

@echo off
rem
rem 4cade Makefile for Windows
rem assembles source code, optionally builds a disk image
2022-09-08 01:36:26 +00:00
rem note: non-Windows users should probably use Makefile instead
rem
rem a qkumba monstrosity from 2018-10-29
rem
2019-06-19 04:49:12 +00:00
setlocal enabledelayedexpansion
2020-08-25 20:56:03 +00:00
set DISK=4cade.hdv
2019-10-15 15:26:47 +00:00
set VOLUME=TOTAL.REPLAY
rem third-party tools required to build (must be in path)
2022-09-08 01:36:26 +00:00
rem https://sourceforge.net/projects/acme-crossass/
2024-05-27 05:52:10 +00:00
rem version 0.97 or later
set ACME=acme
2022-09-08 01:36:26 +00:00
rem https://github.com/mach-kernel/cadius
rem version 1.4.6 or later
set CADIUS=cadius
2022-09-08 01:36:26 +00:00
2019-10-14 02:29:25 +00:00
rem https://github.com/
set GIT=git
2022-09-08 01:36:26 +00:00
rem https://bitbucket.org/magli143/exomizer/wiki/Home
rem version 3.1.0 or later
set EXOMIZER=exomizer mem -q -P23 -lnone
2021-10-25 00:09:29 +00:00
if "%1" equ "dsk" (
2023-04-15 17:16:03 +00:00
call :clean
2021-10-25 00:09:29 +00:00
call :index
2022-05-18 18:35:12 +00:00
if "%2". equ "". (
call :asmproboot
call :asmlauncher
1>nul copy /y res\blank.hdv "build\%DISK%" >>build\log
1>nul copy /y res\_FileInformation.txt build\ >>build\log
%CADIUS% ADDFILE "build\%DISK%" "/%VOLUME%/" "build\LAUNCHER.SYSTEM" -C >>build\log
2022-05-18 18:35:12 +00:00
1>nul copy /y "res\PREFS.CONF" "build" >>build\log
cscript /nologo bin\padto.js 512 build\PREFS.CONF
rem
rem create _FileInformation.txt files for subdirectories
rem
1>nul copy /y src\prelaunch\_FileInformation.txt build\PRELAUNCH >>build/log
rem
rem add everything to the disk
rem
)
2021-11-06 05:38:32 +00:00
echo|set/p="adding files..."
%CADIUS% ADDFILE "build\%DISK%" "/%VOLUME%/" "build\TOTAL.DATA" -C >>build\log
2022-05-18 18:35:12 +00:00
if "%2". equ "". (
2024-05-27 05:52:10 +00:00
for %%q in (build\PREFS.CONF res\Finder.Data res\Finder.Root) do %CADIUS% ADDFILE "build\%DISK%" "/%VOLUME%/" "%%q" -C >>build\log
for %%q in (res\TITLE.ANIMATED res\ICONS build\PRELAUNCH build\X) do (
2022-09-08 01:36:26 +00:00
1>nul 2>nul del /s "%%q\.DS_Store"
%CADIUS% ADDFOLDER "build\%DISK%" "/%VOLUME%/%%~nxq" %%q -C >>build\log
)
2022-05-18 18:35:12 +00:00
cscript /nologo bin\changebootloader.js "build\%DISK%" build\proboothd
)
2021-11-06 05:38:32 +00:00
echo done
2021-10-25 00:09:29 +00:00
goto :EOF
)
2021-12-13 17:00:45 +00:00
if "%1" equ "index" (
2023-04-17 22:31:35 +00:00
call :index
goto :EOF
)
if "%1" equ "clean" (
2022-05-18 18:35:12 +00:00
if "%2". neq "". (
1>nul move build\%DISK%
)
2023-04-15 17:16:03 +00:00
:clean
echo y|1>nul 2>nul rd build /s
2022-05-18 18:35:12 +00:00
if "%2". neq "". (
md build
1>nul move %DISK% build\%DISK%
%CADIUS% DELETEFILE "build\%DISK%" "/%VOLUME%/TOTAL.DATA" >>build\log
)
goto :EOF
)
2021-10-25 00:09:29 +00:00
if "%1" equ "compress" (
2020-03-12 04:19:42 +00:00
call :compress
2021-10-25 00:09:29 +00:00
goto :EOF
)
2022-04-28 04:48:02 +00:00
echo usage: %0 clean / dsk
2021-10-25 00:09:29 +00:00
goto :EOF
:index
2021-12-13 17:00:45 +00:00
call :md
call :asmfx
call :asmprelaunch
2022-10-01 07:02:44 +00:00
call :asmdemo
2021-10-16 05:34:00 +00:00
rem
2021-10-21 23:27:11 +00:00
rem precompute binary data structure for mega-attract mode configuration file
2021-10-16 05:34:00 +00:00
rem
cscript /nologo bin\buildokvs.js res\ATTRACT.CONF build\ATTRACT.IDX >>build\log
rem
2021-10-21 23:27:11 +00:00
rem precompute binary data structure and substitute special characters
rem in game help and other all-text pages
2021-10-16 05:34:00 +00:00
rem
2021-10-28 04:10:19 +00:00
cscript /nologo bin\converthelp.js res\HELPTEXT build\HELPTEXT >>build\log
cscript /nologo bin\converthelp.js res\CREDITS build\CREDITS >>build\log
2021-11-06 05:38:32 +00:00
echo|set/p="converting gamehelp..."
2021-10-28 04:10:19 +00:00
for %%q in (res\GAMEHELP\*) do cscript /nologo bin\converthelp.js %%q build\GAMEHELP\%%~nxq >>build\log
2021-11-06 05:38:32 +00:00
echo done
2021-10-16 05:34:00 +00:00
rem
2021-11-18 20:52:11 +00:00
rem create a list of all game filenames, without metadata or display names, sorted by game filename
2021-10-21 23:27:11 +00:00
rem
cscript /nologo bin\makesorted.js
2021-10-24 02:17:36 +00:00
cscript /nologo bin\builddisplaynames.js
rem
2021-10-21 23:27:11 +00:00
rem precompute indexed files for prelaunch
rem note: prelaunch must be first in TOTAL.DATA due to a hack in LoadStandardPrelaunch
rem note 2: these can not be padded because they are loaded at $0106 and padding would clobber the stack
rem
2021-11-06 05:38:32 +00:00
echo|set/p="indexing prelaunch..."
2021-10-21 23:27:11 +00:00
1>nul copy /y nul build\TOTAL.DATA
cscript /nologo bin\buildpre.js build\PRELAUNCH.INDEXED build\PRELAUNCH.IDX build\TOTAL.DATA >>build\log
2021-11-06 05:38:32 +00:00
echo done
2021-10-21 23:27:11 +00:00
rem
2021-11-18 20:52:11 +00:00
rem precompute indexed files for HGR & DHGR titles
rem note: these are not padded because they are all an exact block-multiple anyway
rem
echo|set/p="indexing titles..."
cscript /nologo bin\padto.js 512 build\TOTAL.DATA
cscript /nologo bin\buildss.js res\TITLE.HGR build\TITLE.IDX build\HGR.TITLES.LOG build\TOTAL.DATA build\TOTAL.DATA >>build\log
cscript /nologo bin\buildss.js res\TITLE.DHGR build\DTITLE.IDX build\DHGR.TITLES.LOG build\TOTAL.DATA build\TOTAL.DATA >>build\log
cscript /nologo bin\addfile.js res\COVER src\index\res.cover.idx.a
cscript /nologo bin\addfile.js res\TITLE src\index\res.title.idx.a
cscript /nologo bin\addfile.js res\HELP src\index\res.help.idx.a
echo done
rem
2021-10-21 23:27:11 +00:00
rem precompute indexed files for game help
2021-11-18 20:52:11 +00:00
rem note: these can be padded because they're loaded into $800 at a time when $800..$1FFF is clobber-able
2021-10-21 23:27:11 +00:00
rem
2021-11-06 05:38:32 +00:00
echo|set/p="indexing gamehelp..."
2021-11-18 20:52:11 +00:00
cscript /nologo bin\makesorted.js
2021-10-21 23:27:11 +00:00
cscript /nologo bin\buildpre.js build\GAMEHELP build\GAMEHELP.IDX build\TOTAL.DATA pad >>build\log
2021-11-06 05:38:32 +00:00
echo done
2021-10-21 23:27:11 +00:00
rem
rem precompute indexed files for slideshows
2021-11-18 20:52:11 +00:00
rem note: these can be padded because they're loaded into $800 at a time when $800..$1FFF is clobber-able
2021-10-16 05:34:00 +00:00
rem
2021-11-06 05:38:32 +00:00
echo|set/p="indexing slideshows..."
2021-10-28 04:10:19 +00:00
for %%q in (res\SS\*) do (
set _ss=%%~nxq
set _ss=!_ss:~0,3!
if !_ss!==ACT (
2021-11-18 20:52:11 +00:00
cscript /nologo bin\buildslideshow.js %%q build\SS\%%~nxq -d >>build\log
2021-10-28 04:10:19 +00:00
) else (
2021-11-18 20:52:11 +00:00
cscript /nologo bin\buildslideshow.js %%q build\SS\%%~nxq >>build\log
2021-10-28 04:10:19 +00:00
)
)
2021-11-18 20:52:11 +00:00
cscript /nologo bin\buildss.js build\SS build\SLIDESHOW.IDX nul build\TOTAL.DATA nul pad >>build\log
2022-09-08 01:36:26 +00:00
for %%q in (A B C D E F G H I J K L M N O P) do for %%k in (res\ATTRACT\%%q*) do cscript /nologo bin\buildokvs.js %%k build\ATTRACT0\%%~nxk >>build\log
for %%q in (Q R S T U V W X Y Z) do for %%k in (res\ATTRACT\%%q*) do cscript /nologo bin\buildokvs.js %%k build\ATTRACT1\%%~nxk >>build\log
2022-05-04 04:07:34 +00:00
cscript /nologo bin\buildss.js build\ATTRACT0 build\MINIATTRACT0.IDX nul build\TOTAL.DATA nul pad >>build\log
cscript /nologo bin\buildss.js build\ATTRACT1 build\MINIATTRACT1.IDX nul build\TOTAL.DATA nul pad >>build\log
2021-11-06 05:38:32 +00:00
echo done
2021-10-21 23:27:11 +00:00
rem
rem precompute indexed files for graphic effects
2021-11-18 20:52:11 +00:00
rem note: these can be padded because they're loaded into $6000 at a time when $6000..$BEFF is clobber-able
2021-10-21 23:27:11 +00:00
rem
2021-11-06 05:38:32 +00:00
echo|set/p="indexing fx..."
2021-10-21 23:27:11 +00:00
cscript /nologo bin\buildfx.js res\FX.CONF build\FX.IDX build\TOTAL.DATA build\FX.INDEXED >>build\log
cscript /nologo bin\buildfx.js res\DFX.CONF build\DFX.IDX build\TOTAL.DATA build\FX.INDEXED >>build\log
2021-12-13 17:00:45 +00:00
cscript /nologo bin\buildfx.js res\SFX.CONF build\SFX.IDX build\TOTAL.DATA build\FX.INDEXED >>build\log
2024-06-01 15:12:39 +00:00
dir /b build\FXCODE >build\fxcode.lst
cscript /nologo bin\buildfx.js build\fxcode.lst build\FXCODE.IDX build\TOTAL.DATA build\FXCODE >>build\log
rem
rem precompute indexed files for coordinates files loaded by graphic effects
rem note: these can not be padded because some of them are loaded into tight spaces near the unclobberable top of main memory
rem
dir /b build\FXDATA >build\fxdata.lst
cscript /nologo bin\buildfx.js build\fxdata.lst build\FXDATA.IDX build\TOTAL.DATA build\FXDATA >>build\log
2021-11-06 05:38:32 +00:00
echo done
2021-10-16 05:34:00 +00:00
rem
2021-10-25 00:09:29 +00:00
rem precompute indexed files for HGR & DHGR action screenshots
2021-10-21 23:27:11 +00:00
rem note: these can not be padded because they are compressed and the decompressor needs the exact size
2021-10-20 19:02:42 +00:00
rem
2021-11-13 06:07:42 +00:00
echo|set/p="indexing (d)hgr action..."
2021-10-20 19:02:42 +00:00
1>nul copy /y nul build\ACTIONHGR0
1>nul copy /y nul build\ACTIONHGR1
1>nul copy /y nul build\ACTIONHGR2
1>nul copy /y nul build\ACTIONHGR3
1>nul copy /y nul build\ACTIONHGR4
1>nul copy /y nul build\ACTIONHGR5
1>nul copy /y nul build\ACTIONHGR6
2021-11-09 20:20:39 +00:00
1>nul copy /y nul build\ACTIONDHGR
2022-09-08 01:36:26 +00:00
for %%q in (A B C D) do for %%k in (res\ACTION.HGR\%%q*) do 1>nul >>build\ACTIONHGR0 echo %%k
for %%q in (E F G H) do for %%k in (res\ACTION.HGR\%%q*) do 1>nul >>build\ACTIONHGR1 echo %%k
for %%q in (I J K L) do for %%k in (res\ACTION.HGR\%%q*) do 1>nul >>build\ACTIONHGR2 echo %%k
for %%q in (M N O P) do for %%k in (res\ACTION.HGR\%%q*) do 1>nul >>build\ACTIONHGR3 echo %%k
for %%q in (Q R S T) do for %%k in (res\ACTION.HGR\%%q*) do 1>nul >>build\ACTIONHGR4 echo %%k
for %%q in (U V W X) do for %%k in (res\ACTION.HGR\%%q*) do 1>nul >>build\ACTIONHGR5 echo %%k
for %%q in (Y Z) do for %%k in (res\ACTION.HGR\%%q*) do 1>nul >>build\ACTIONHGR6 echo %%k
2021-10-25 00:09:29 +00:00
for %%q in (res\ACTION.DHGR\*) do 1>nul >>build\ACTIONDHGR echo %%q
2021-11-18 20:52:11 +00:00
cscript /nologo bin\buildss.js build\ACTIONHGR0* build\HGR0.IDX nul build\TOTAL.DATA nul >>build\log
cscript /nologo bin\buildss.js build\ACTIONHGR1* build\HGR1.IDX nul build\TOTAL.DATA build\TOTAL.DATA >>build\log
cscript /nologo bin\buildss.js build\ACTIONHGR2* build\HGR2.IDX nul build\TOTAL.DATA build\TOTAL.DATA >>build\log
cscript /nologo bin\buildss.js build\ACTIONHGR3* build\HGR3.IDX nul build\TOTAL.DATA build\TOTAL.DATA >>build\log
cscript /nologo bin\buildss.js build\ACTIONHGR4* build\HGR4.IDX nul build\TOTAL.DATA build\TOTAL.DATA >>build\log
cscript /nologo bin\buildss.js build\ACTIONHGR5* build\HGR5.IDX nul build\TOTAL.DATA build\TOTAL.DATA >>build\log
cscript /nologo bin\buildss.js build\ACTIONHGR6* build\HGR6.IDX nul build\TOTAL.DATA build\TOTAL.DATA >>build\log
cscript /nologo bin\buildss.js build\ACTIONDHGR* build\DHGR.IDX nul build\TOTAL.DATA build\TOTAL.DATA >>build\log
2021-11-06 05:38:32 +00:00
echo done
2021-12-13 17:00:45 +00:00
rem precompute indexed files for GR and DGR action screenshots
2021-11-09 20:20:39 +00:00
rem note: these can be padded because they are not compressed
rem
2021-12-13 17:00:45 +00:00
echo|set/p="indexing (d)gr action..."
2021-11-09 20:20:39 +00:00
1>nul copy /y nul build\ACTIONGR
2021-12-13 17:00:45 +00:00
1>nul copy /y nul build\ACTIONDGR
2021-11-09 20:20:39 +00:00
for %%q in (res\ACTION.GR\*) do 1>nul >>build\ACTIONGR echo %%q
2021-12-13 17:00:45 +00:00
for %%q in (res\ACTION.DGR\*) do 1>nul >>build\ACTIONDGR echo %%q
2021-11-18 20:52:11 +00:00
cscript /nologo bin\buildss.js build\ACTIONGR* build\GR.IDX nul build\TOTAL.DATA build\TOTAL.DATA pad >>build\log
2021-12-13 17:00:45 +00:00
cscript /nologo bin\buildss.js build\ACTIONDGR* build\DGR.IDX nul build\TOTAL.DATA build\TOTAL.DATA pad >>build\log
2021-11-09 20:20:39 +00:00
echo done
2021-10-20 19:02:42 +00:00
rem
rem precompute indexed files for SHR artwork
2021-10-21 23:27:11 +00:00
rem note: these can not be padded because they are compressed and the decompressor needs the exact size
2021-10-20 19:02:42 +00:00
rem
2021-11-06 05:38:32 +00:00
echo|set/p="indexing shr..."
2021-11-18 20:52:11 +00:00
cscript /nologo bin\buildss.js res\ARTWORK.SHR build\ARTWORK.IDX nul build\TOTAL.DATA nul >>build\log
echo done
rem
2022-10-01 07:02:44 +00:00
rem precompute indexed files for demo launchers
rem note: these can not be padded because some of them are loaded too close to $C000
rem
echo|set/p="indexing demos..."
cscript /nologo bin\buildss.js build\DEMO build\DEMO.IDX nul build\TOTAL.DATA nul >>build\log
cscript /nologo bin\addfile.js build\DEMO.IDX src\index\demo.idx.a
echo done
rem
2022-09-08 01:36:26 +00:00
rem precompute indexed files for single-load game binaries
rem note: these can be padded because they are loaded at a time when all of main memory is clobber-able
rem
echo|set/p="indexing single-loaders..."
for %%q in (res\dsk\*.po) do %CADIUS% EXTRACTVOLUME "%%q" build\X\ >>build\log
2024-05-27 05:52:10 +00:00
1>nul 2>nul del /s build\X\.DS_Store build\X\PRODOS* build\X\LOADER.SYSTEM* build\X\_FileInformation.txt
2022-09-08 01:36:26 +00:00
1>nul copy /y nul build\XSINGLE.IDX
cscript /nologo bin\buildsingle.js build\X.INDEXED build\XSINGLE.IDX build\TOTAL.DATA pad >>build\log
cscript /nologo bin\addfile.js build\XSINGLE.IDX src\index\xsingle.idx.a
2024-05-27 05:52:10 +00:00
cscript /nologo bin\flatten.js
2022-09-08 01:36:26 +00:00
echo done
rem
2021-11-18 20:52:11 +00:00
rem create search indexes for each variation of (game-requires-joystick) X (game-requires-128K)
rem in the form of OKVS data structures, plus game counts in the form of source files
rem
echo|set/p="indexing search..."
cscript /nologo bin\buildsearch.js "00" src\index\count00.a build\SEARCH00.IDX
cscript /nologo bin\buildsearch.js "0" src\index\count01.a build\SEARCH01.IDX
cscript /nologo bin\buildsearch.js ".0" src\index\count10.a build\SEARCH10.IDX
cscript /nologo bin\buildsearch.js "." src\index\count11.a build\SEARCH11.IDX
2021-11-06 05:38:32 +00:00
echo done
2021-11-13 06:07:42 +00:00
rem
rem add IDX files to the combined index file and generate
rem the index records that callers use to reference them
rem
echo|set/p="preparing index file..."
2021-11-15 03:56:46 +00:00
cscript /nologo bin\addfile.js build\SEARCH00.IDX src\index\search00.idx.a
cscript /nologo bin\addfile.js res\CACHE00.IDX src\index\cache00.idx.a
cscript /nologo bin\addfile.js build\SEARCH01.IDX src\index\search01.idx.a
cscript /nologo bin\addfile.js res\CACHE01.IDX src\index\cache01.idx.a
cscript /nologo bin\addfile.js build\SEARCH10.IDX src\index\search10.idx.a
cscript /nologo bin\addfile.js res\CACHE10.IDX src\index\cache10.idx.a
cscript /nologo bin\addfile.js build\SEARCH11.IDX src\index\search11.idx.a
cscript /nologo bin\addfile.js res\CACHE11.IDX src\index\cache11.idx.a
2021-11-13 06:07:42 +00:00
cscript /nologo bin\addfile.js build\PRELAUNCH.IDX src\index\prelaunch.idx.a
cscript /nologo bin\addfile.js build\ATTRACT.IDX src\index\attract.idx.a
cscript /nologo bin\addfile.js build\FX.IDX src\index\fx.idx.a
cscript /nologo bin\addfile.js build\DFX.IDX src\index\dfx.idx.a
2021-12-13 17:00:45 +00:00
cscript /nologo bin\addfile.js build\SFX.IDX src\index\sfx.idx.a
2024-06-01 15:12:39 +00:00
cscript /nologo bin\addfile.js build\FXCODE.IDX src\index\fxcode.idx.a
2024-05-27 05:52:10 +00:00
cscript /nologo bin\addfile.js build\FXDATA.IDX src\index\fxdata.idx.a
2021-11-13 06:07:42 +00:00
cscript /nologo bin\addfile.js build\GAMEHELP.IDX src\index\gamehelp.idx.a
cscript /nologo bin\addfile.js build\SLIDESHOW.IDX src\index\slideshow.idx.a
2022-05-04 04:07:34 +00:00
cscript /nologo bin\addfile.js build\MINIATTRACT0.IDX src\index\miniattract0.idx.a
cscript /nologo bin\addfile.js build\MINIATTRACT1.IDX src\index\miniattract1.idx.a
2021-11-18 20:52:11 +00:00
cscript /nologo bin\addfile.js build\TITLE.IDX src\index\title.idx.a
cscript /nologo bin\addfile.js build\DTITLE.IDX src\index\dtitle.idx.a
2021-11-15 03:56:46 +00:00
cscript /nologo bin\addfile.js build\HGR0.IDX src\index\hgr0.idx.a
cscript /nologo bin\addfile.js build\HGR1.IDX src\index\hgr1.idx.a
cscript /nologo bin\addfile.js build\HGR2.IDX src\index\hgr2.idx.a
cscript /nologo bin\addfile.js build\HGR3.IDX src\index\hgr3.idx.a
cscript /nologo bin\addfile.js build\HGR4.IDX src\index\hgr4.idx.a
cscript /nologo bin\addfile.js build\HGR5.IDX src\index\hgr5.idx.a
cscript /nologo bin\addfile.js build\HGR6.IDX src\index\hgr6.idx.a
2021-11-13 06:07:42 +00:00
cscript /nologo bin\addfile.js build\DHGR.IDX src\index\dhgr.idx.a
cscript /nologo bin\addfile.js build\GR.IDX src\index\gr.idx.a
2021-12-13 17:00:45 +00:00
cscript /nologo bin\addfile.js build\DGR.IDX src\index\dgr.idx.a
2021-11-13 06:07:42 +00:00
cscript /nologo bin\addfile.js build\ARTWORK.IDX src\index\artwork.idx.a
2021-11-18 20:52:11 +00:00
rem
rem add additional miscellaneous files
rem
cscript /nologo bin\addfile.js build\COVERFADE src\index\coverfade.idx.a
cscript /nologo bin\addfile.js build\GR.FIZZLE src\index\gr.fizzle.idx.a
2021-12-13 17:00:45 +00:00
cscript /nologo bin\addfile.js build\DGR.FIZZLE src\index\dgr.fizzle.idx.a
2021-11-18 20:52:11 +00:00
cscript /nologo bin\addfile.js build\HELPTEXT src\index\helptext.idx.a
cscript /nologo bin\addfile.js build\CREDITS src\index\credits.idx.a
cscript /nologo bin\addfile.js res\DECRUNCH src\index\decrunch.idx.a
cscript /nologo bin\addfile.js res\JOYSTICK src\index\joystick.idx.a
2021-11-13 06:07:42 +00:00
echo done
2019-09-15 23:32:25 +00:00
goto :EOF
:md
2>nul md build
2>nul md build\X
2022-09-08 01:36:26 +00:00
2>nul md build\X.INDEXED
2>nul md build\FX.INDEXED
2024-06-01 15:12:39 +00:00
2>nul md build\FXDATA
2024-06-02 17:19:26 +00:00
2>nul md build\FXCODE
2021-10-16 05:34:00 +00:00
2>nul md build\PRELAUNCH
2022-09-08 01:36:26 +00:00
2>nul md build\PRELAUNCH.INDEXED
2022-05-04 04:07:34 +00:00
2>nul md build\ATTRACT0
2>nul md build\ATTRACT1
2021-10-12 23:37:45 +00:00
2>nul md build\SS
2>nul md build\GAMEHELP
2022-10-01 07:02:44 +00:00
2>nul md build\DEMO
2021-10-25 00:09:29 +00:00
1>nul copy nul build\log
2019-09-15 23:32:25 +00:00
goto :EOF
2019-09-20 19:39:52 +00:00
:asmlauncher
2>nul 1>build\buildnum.log %GIT% rev-list --count HEAD
2023-04-17 22:31:35 +00:00
if errorlevel 1 (set _build=0) else for /f "tokens=*" %%q in (build\buildnum.log) do set _build=%%q
2024-05-27 05:52:10 +00:00
2>build\relbase.log %ACME% -DBUILDNUMBER=%_build% src/4cade.a
2019-09-20 19:39:52 +00:00
for /f "tokens=*" %%q in (build\relbase.log) do set _make=%%q
2024-05-27 05:52:10 +00:00
%ACME% -DBUILDNUMBER=%_build% -DRELBASE=$!_make:~-5,4! -r build/4cade.lst src/4cade.a
2019-09-20 19:39:52 +00:00
goto :EOF
2022-10-01 07:02:44 +00:00
:asmdemo
echo|set/p="building demos..."
for %%q in (src\demo\*.a) do (
for /f "tokens=* usebackq" %%k in (`find "^!to" %%q`) do set _to=%%k
set _to=!_to:~0,1!
if !_to!==t %ACME% %%q
)
echo done
goto :EOF
2019-09-15 23:32:25 +00:00
:asmfx
2021-11-06 05:38:32 +00:00
echo|set/p="building fx..."
2019-09-15 23:32:25 +00:00
for %%q in (src\fx\*.a) do (
for /f "tokens=* usebackq" %%k in (`find "^!to" %%q`) do set _to=%%k
set _to=!_to:~0,1!
if !_to!==t %ACME% %%q
)
2021-11-06 05:38:32 +00:00
echo done
2019-09-15 23:32:25 +00:00
goto :EOF
:asmprelaunch
2021-11-06 05:38:32 +00:00
echo|set/p="building prelaunch..."
2019-09-15 23:32:25 +00:00
for %%q in (src\prelaunch\*.a) do (
for /f "tokens=* usebackq" %%k in (`find "^!to" %%q`) do set _to=%%k
set _to=!_to:~0,1!
if !_to!==t %ACME% %%q
)
2021-11-06 05:38:32 +00:00
echo done
2020-03-12 04:19:42 +00:00
goto :EOF
2021-08-14 02:50:38 +00:00
:asmproboot
2024-05-27 05:52:10 +00:00
%ACME% -r build/proboothd.lst src/proboothd/proboothd.a >> build\log
2021-10-25 00:09:29 +00:00
goto :EOF
2021-08-14 02:50:38 +00:00
2020-03-12 04:19:42 +00:00
:compress
2020-03-12 19:36:01 +00:00
for %%q in (res\action.dhgr.uncompressed\*) do if not exist res\action.dhgr\%%~nxq %EXOMIZER% res\action.dhgr.uncompressed\%%~nxq@0x4000 -o res\action.hgr\%%~nxq
2020-03-12 04:19:42 +00:00
for %%q in (res\action.hgr.uncompressed\*) do if not exist res\action.hgr\%%~nxq %EXOMIZER% res\action.hgr.uncompressed\%%~nxq@0x4000 -o res\action.hgr\%%~nxq
for %%q in (res\artwork.shr.uncompressed\*) do if not exist res\artwork.shr\%%~nxq %EXOMIZER% res\artwork.shr.uncompressed\%%~nxq@0x2000 -o res\artwork.shr\%%~nxq
2022-09-08 01:36:26 +00:00
for %%q in (res\title.hgr.uncompressed\*) do if not exist res\title.hgr\%%~nxq %EXOMIZER% res\title.hgr.uncompressed\%%~nxq@0x2000 -o res\title.hgr\%%~nxq