167 lines
5.0 KiB
NASM
167 lines
5.0 KiB
NASM
;
|
||
;----------------[TO DO]----------------
|
||
; DEFINE path to rom, exp, build, etc.
|
||
; DEFINE path to including files for rom, exp, loader, etc...
|
||
; ...
|
||
;---------------------------------------
|
||
|
||
;=======================================
|
||
; DEFDEVICE SPRINTER, #4000, 256
|
||
DEVICE SPRINTER
|
||
; ENCODING "DOS"
|
||
;=======================================
|
||
|
||
;------------[LUA functions]------------;
|
||
includelua 'Shared_includes/lua/Functions.lua'
|
||
;---------------------------------------;
|
||
|
||
;-----------[Shared Includes]-----------
|
||
INCLUDE 'src/bios/shared/includes.inc' ; Includes
|
||
;---------------------------------------
|
||
|
||
|
||
LUA PASS1
|
||
local date, month, year = Get_date_RU(sj.get_define("__DATE__"))
|
||
BuildDate = "'" .. date .. "." .. month .. "." .. year .. "'"
|
||
BuildYear = "'" .. year .. "'"
|
||
sj.insert_define("BUILD_DATE", BuildDate)
|
||
sj.insert_define("BUILD_YEAR", BuildYear)
|
||
ENDLUA
|
||
LUA ALLPASS
|
||
sj.insert_define("BUILD_DATE", BuildDate)
|
||
sj.insert_define("BUILD_YEAR", BuildYear)
|
||
ENDLUA
|
||
|
||
IF PACKED_MAIN
|
||
;------------[MAIN prebuild]------------;
|
||
LUA PASS1
|
||
-- áâà ¨¢ ¥¬ ¯ãâì ¤® 㯠ª®¢é¨ª
|
||
detected_os = Detect_os()
|
||
print ("OS detected:", detected_os)
|
||
print ()
|
||
|
||
if detected_os == "Windows" then
|
||
pack_prog = "src\\bin\\hrust.exe Build\\Bin\\temp\\MAIN.PAK Build\\Bin\\temp\\MAIN.BIN"
|
||
elseif detected_os == "MacOS" then
|
||
pack_prog = "src/bin/mhmt -hst -zxh Build/Bin/temp/MAIN.BIN Build/Bin/temp/MAIN.PAK"
|
||
elseif detected_os == "Linux" then
|
||
pack_prog = "src/bin/mhmt -hst -zxh Build/Bin/temp/MAIN.BIN Build/Bin/temp/MAIN.PAK"
|
||
end
|
||
|
||
|
||
-- ª®¬¯¨«ïæ¨ï ¤«ï ¯®«ã票ï ᦠ⮣® ä ©« MAIN ¨ 宫®á⮩ ¯à®å®¤ Set_Pictures.asm
|
||
if (os.execute("sjasmplus -DPREBUILD=1 -Wall --msg=war --nologo --syntax=w --fullpath --lst=Build/Prebuilds.LST SRC/BIOS/ROM/SETUP/MAIN.ASM")) then
|
||
print("--[ MAIN.ASM Prebuild DONE ]--")
|
||
if (os.execute(pack_prog)) then
|
||
print("--[ Hrusting MAIN.BIN DONE ]--")
|
||
print(" ")
|
||
else
|
||
print("--[ Hrusting MAIN.BIN ERROR!!! ]--")
|
||
os.exit(1)
|
||
end
|
||
else
|
||
print("--[ MAIN.ASM Prebuild ERROR!!! ]--")
|
||
os.exit(1)
|
||
end
|
||
ENDLUA
|
||
;---------------------------------------;
|
||
ENDIF
|
||
|
||
IF PACKED_MAIN
|
||
;----------[MAIN's referenses]----------; Š®¬¯¨«ïæ¨ï ¤«ï ¯®«ãç¥¨ï ¤à¥á®¢ ¬¥â®ª ¨ ¯à®æ¥¤ãà
|
||
MMU 2 e, 18 ; áâà ¨æ 18 ¢ ¡ ªã 2 ¨ ¯à®¢¥àª £à ¨æë.
|
||
ORG COMPILE_ADDR.MAIN
|
||
INCLUDE 'src/bios/ROM/SETUP/MAIN.asm'
|
||
;---------------------------------------
|
||
ENDIF
|
||
|
||
|
||
; Building page 8 of Sprinter ROM
|
||
;-----------------[EXP]-----------------
|
||
MMU 0 e, 8 ; áâà ¨æ 8 ¢ ¡ ªã 0 ¨ ¯à®¢¥àª £à ¨æë
|
||
ORG COMPILE_ADDR.EXP
|
||
DEFINE+ IsInBIOS 1
|
||
OUTPUT 'Build/Bin/EXP.BIN'
|
||
ShowInfo 'EXP block Start', 0 ; !!!!! test
|
||
INCLUDE 'src/bios/EXP/EXP.asm'
|
||
ShowInfo 'EXP block End', 0 ; !!!!! test
|
||
OUTEND
|
||
;---------------------------------------
|
||
|
||
|
||
|
||
; Building page 0 of Sprinter ROM
|
||
;-----------------[ROM]-----------------
|
||
MMU 0 e, 0 ; áâà ¨æ 0 ¢ ¡ ªã 0 ¨ ¯à®¢¥àª £à ¨æë.
|
||
ORG ROM_MAP.ROM
|
||
DEFINE+ IsInBIOS 0
|
||
OUTPUT 'Build/Bin/ROM.BIN'
|
||
ShowInfo 'ROM block Start', 0 ; !!!!! test
|
||
INCLUDE 'src/bios/ROM/ROM.asm'
|
||
ShowInfo 'ROM block End', 0 ; !!!!! test
|
||
OUTEND
|
||
UNDEFINE IsInBIOS
|
||
;---------------------------------------
|
||
;
|
||
|
||
|
||
|
||
; Building page 12 of Sprinter ROM
|
||
;------[Loader with bitstream K30]------
|
||
MMU 0 3, 12 ; áâà ¨æë 12-15 ¢ ¡ ª¨ 0-3.
|
||
ORG ROM_MAP.LOADER
|
||
OUTPUT 'Build/Bin/LOADER_K30.BIN'
|
||
Conf_loader K30
|
||
BLOCK #10000-$,#FF
|
||
OUTEND
|
||
;---------------------------------------
|
||
|
||
|
||
|
||
; Building page 22 of Sprinter ROM
|
||
;------[Loader with bitstream K50]------
|
||
MMU 0 3, 22 ; áâà ¨æë 22-25 ¢ ¡ ª¨ 0-3.
|
||
ORG ROM_MAP.LOADER
|
||
OUTPUT 'Build/Bin/LOADER_K50.BIN'
|
||
;!TODO ᤥ« âì 㯠ª®¢é¨ª ¡¨âáâਬ âãâ LUA
|
||
Conf_loader K50
|
||
BLOCK #10000-$,#FF
|
||
OUTEND
|
||
;---------------------------------------
|
||
;
|
||
|
||
; Building page 1 of Sprinter ROM
|
||
;-----------------[LOGO]-----------------
|
||
MMU 1 e, 1 ; áâà ¨æ 1 ¢ ¡ ªã 1 ¨ ¯à®¢¥àª £à ¨æë.
|
||
ORG ROM_MAP.LOGO
|
||
OUTPUT 'Build/Bin/LOGO.BIN'
|
||
INCLUDE 'src/bios/logo/Set_Pictures.asm'
|
||
OUTEND
|
||
;---------------------------------------
|
||
;
|
||
;EXPORT ROM_NUMBER ; !FIXIT part1, part2 ¤«ï Flasher
|
||
EXPORT BOARD_INFO.number
|
||
EXPORT BOARD_INFO.type
|
||
EXPORT BoardID.start
|
||
EXPORT BoardID.end
|
||
EXPORT FN_CRIPT.cnf
|
||
EXPORT ID_SPRINTER.bitstream_ver
|
||
EXPORT bitstream_ver_hex
|
||
;EXPORT ID_Version
|
||
;EXPORT ID_SPRINTER.BIOS_ver
|
||
;EXPORT BIOS_ver_hex
|
||
;EXPORT Disk_subsystem_ver_hex
|
||
EXPORT EXP_ID.VER ; ‚¥àá¨ï ¡¨®á
|
||
EXPORT EXP_ID.MOD
|
||
;EXPORT ROM_ID.VER ; ‚¥àá¨ï ¤¨áª®¢®© ¯®¤á¨á⥬ë
|
||
;EXPORT ROM_ID.MOD
|
||
EXPORT CNF_ID.VER ; ‚¥àá¨ï ª®äë
|
||
EXPORT CNF_ID.MOD
|
||
EXPORT msgStrings.str_ACEX_MODEL
|
||
EXPORT msgRusStrings.str_ACEX_MODEL
|
||
EXPORT BETA_BUILD
|
||
EXPORT BETA_RC
|
||
; LUA ALLPASS
|
||
; print ("DEPACKER", sj.get_label("DEPACKER.PackedMAIN"))
|
||
; print ("UnPacker", sj.get_label("UnPacker.PackedMAIN"))
|
||
; ENDLUA |