/* ;------------[LUA functions]------------; includelua 'Shared_Includes/LUA/Functions.lua' ;---------------------------------------; DEFINE PICTURE_FILE './src/bios/logo/psfathers.bmp' LUA PASS1 -- Проверяем BMP, достаём из него параметры, режем на куски bmp_width, bmp_height, bmp_image_size, bmp_image_offset, bmp_colors = Get_bmp8bit_values (sj.get_define("PICTURE_FILE")) if bmp_width ~= 128 then sj.error("Invalid BMP width", bmp_width) end if bmp_height ~= 72 then sj.error("Invalid BMP height", bmp_height) end if bmp_colors ~= 256 then sj.error("Invalid BMP number of colors", bmp_colors) end if not File_save(sj.get_define("PICTURE_FILE"), "./Build/Bin/LOGO_PAL.BIN", bmp_image_offset-1024, 1024) then sj.error("Palete save error!") end if not File_save(sj.get_define("PICTURE_FILE"), "./Build/Bin/LOGO_DAT.BIN", bmp_image_offset, bmp_image_size) then sj.error("Image data save error!") end ENDLUA */ INCLUDE 'shared/defines.inc' DEFINE IMG_RECOVERY 'src/bios/shared/recovery.img' ;DEFINE IMG_RECOVERY 'src/bios/shared/recovery_tst.img' ; ;[--------------------------------------------------------------------------] MACRO Set_Block text, blk_addr .tmp equ $ BLOCK blk_addr-.tmp,#FF DISPLAY text, /H, $-.tmp ENDM ;[--------------------------------------------------------------------------] DEFINE SP_128_BIN INCBIN 'src/ZX_ROMS/NEW/SP_128.BIN' DEFINE SP__48_BIN INCBIN 'src/ZX_ROMS/NEW/SP__48.BIN' DEFINE SP_TRDOS_BIN INCBIN 'src/ZX_ROMS/NEW/SP_TRDOS.BIN' ;[--------------------------------------------------------------------------] MACRO ROM_BUILD bitstream ;PAGE 0 INCBIN 'Build/Bin/ROM.BIN' Set_Block 'ROM free space: ', #4000 ; ;PAGE 1 ; INCBIN 'Build/Bin/LOGO_PAL.BIN' ; INCBIN 'Build/Bin/LOGO_DAT.BIN' INCBIN 'Build/Bin/LOGO.BIN' Set_Block 'LOGO free space: ', #8000 ; ; ;PAGE 2 ZX Page - #42 SP_128_BIN Set_Block 'SP_128 free space: ', #C000 ; ;PAGE 3 ZX Page - #43 SP__48_BIN Set_Block 'SP_48 free space: ', #10000 ; ;PAGE 4 ZX Page - #44 SP_TRDOS_BIN Set_Block 'SP_TRD free space: ', #14000 ; ;PAGE 5 Recovery image part 1 INCBIN IMG_RECOVERY,0,#C000 DISPLAY "ROM Disk recovery part1, pages 5..7: 1x4000..2x0000" ; ; ;PAGE 8 INCBIN 'Build/Bin/EXP.BIN' Set_Block 'EXP free space: ', #24000 ; ;PAGE 9-11 (#09, #0A, #0B) Recovery image part 2 INCBIN IMG_RECOVERY,#C000,#C000 DISPLAY "ROM Disk recovery part2, pages 9..11: 2x4000..3x0000" Set_Block 'Empty space: ', #30000 ; ;PAGE 12-15 (#0C, #0D, #0E, #0F) INCBIN bitstream Set_Block 'Loader & Bitstream free space: ', #40000 ; ENDM ;[--------------------------------------------------------------------------] ;[--------------------------------------------------------------------------] ORG 0 DISPLAY '[ Building ROM for 1K30 ]' OUTPUT 'Build/_SPRIN.BIN' ROM_BUILD 'Build/Bin/LOADER_K30.BIN' OUTEND DISPLAY '[ Building ROM for 1K30 done ]' DISPLAY ' ' DISP 0 DISPLAY '[ Building ROM for 1K50 ]' OUTPUT 'Build/_SPRIN50.BIN' ROM_BUILD 'Build/Bin/LOADER_K50.BIN' OUTEND DISPLAY '[ Building ROM for 1K50 done ]' ENT ;[--------------------------------------------------------------------------] ;