mirror of
https://github.com/Tolik-Trek/DOOM2.git
synced 2026-06-15 00:51:33 +03:00
now it checks version before start
This commit is contained in:
parent
4259263dee
commit
5f9d648c25
106
DOOM2.asm
106
DOOM2.asm
@ -9,15 +9,43 @@ ScreenStartAddress EQU #C040
|
||||
;ScreenStartAddress EQU #C000
|
||||
;
|
||||
;---------------------------[Defines section]---------------------------
|
||||
DEFINE EXE_HEADER 1
|
||||
DEFINE EXE_HEADER 1
|
||||
; VERSIONS
|
||||
MIN_VER: ; 1.70.887
|
||||
.DSS_V EQU 1 ; Version
|
||||
.DSS_M EQU 70 ; Modification
|
||||
.DSS_B EQU 887 ; Build
|
||||
; ; 2.55
|
||||
.BIOS_V EQU 2 ; Version
|
||||
.BIOS_M EQU 55 ; Modification
|
||||
;;;;;;;
|
||||
|
||||
; DEFINE MIN_DSS_VERSION MIN_VER.DSS_V*256 + MIN_VER.DSS_M
|
||||
; DEFINE MIN_DSS_BUILD MIN_VER.DSS_B
|
||||
; DEFINE MIN_BIOS_VERSION MIN_VER.BIOS_V*256 + MIN_VER.BIOS_M
|
||||
|
||||
; DEFINE TXT_DSS_VERSION ('0'+MIN_VER.DSS_V),\
|
||||
; '.',\
|
||||
; ('0'+MIN_VER.DSS_M/10),\
|
||||
; ('0'+MIN_VER.DSS_M-(MIN_VER.DSS_M/10)*10),\
|
||||
; '.',\
|
||||
; ('0'+MIN_VER.DSS_B/100),\
|
||||
; ('0'+(MIN_VER.DSS_B/10 - MIN_VER.DSS_B/100*10)),\
|
||||
; ('0'+(MIN_VER.DSS_B - MIN_VER.DSS_B/10*10)) ;
|
||||
|
||||
|
||||
; DEFINE TXT_BIOS_VERSION '0'+MIN_VER.BIOS_V,\
|
||||
; '.',\
|
||||
; '0'+MIN_VER.BIOS_M/10,\
|
||||
; '0'+MIN_VER.BIOS_M-(MIN_VER.BIOS_M/10)*10
|
||||
;-----------------------------------------------------------------------
|
||||
;
|
||||
|
||||
|
||||
;
|
||||
;-----------------------[Compilation parameters]------------------------
|
||||
DEVICE ZXSPECTRUM4096 ; ¬®¤¥«ì á 4 ¬¥âà ¬¨ ¯ ¬ïâ¨
|
||||
MMU 2 e, 0 ; ã«¥¢ ï áâà ¨æ ¢ ¡ ªã 2 ¨ ¯à®¢¥àª £à ¨æë
|
||||
DEVICE ZXSPECTRUM4096 ; ¬®¤¥«ì á 4 ¬¥âà ¬¨ ¯ ¬ïâ¨
|
||||
MMU 2 e, 0 ; ã«¥¢ ï áâà ¨æ ¢ ¡ ªã 2 ¨ ¯à®¢¥àª £à ¨æë
|
||||
OUTPUT './Build/DOOM2/doom2.exe'
|
||||
;-----------------------------------------------------------------------
|
||||
;
|
||||
@ -72,7 +100,9 @@ CMD_Line+1:
|
||||
LD HL,#8080
|
||||
CALL SET_HOME_PATH
|
||||
;--------[§ £à㧪 à¥áãàᮢ ¨£àë]-------
|
||||
LD HL,Loading_TXT
|
||||
CALL CHECK_SYSTEM
|
||||
;
|
||||
LD HL,MESSAGES_TXT.Loading
|
||||
LD C,Dss.PChars
|
||||
RST ToDSS
|
||||
;
|
||||
@ -199,11 +229,12 @@ RETURN_POINT:
|
||||
;
|
||||
CALL RESTORE_ALL
|
||||
;
|
||||
LD HL,GOTO_EXIT
|
||||
LD HL,MESSAGES_TXT.NormExit
|
||||
LD C,Dss.PChars
|
||||
RST ToDSS
|
||||
;
|
||||
.loop: LD BC,Dss.Exit
|
||||
.loop: LD B,0
|
||||
.error: LD C,Dss.Exit
|
||||
RST ToDSS
|
||||
JR .loop
|
||||
;---------------------------------------
|
||||
@ -1817,8 +1848,44 @@ SCREEN_IN_CACHE:
|
||||
OUT (SYS_PORT.OFF),A
|
||||
RET
|
||||
;***********************************************************************
|
||||
CHECK_SYSTEM:
|
||||
_mCHECK_SYS_VERSIONS MIN_VER.DSS_V, MIN_VER.DSS_M, MIN_VER.DSS_B, MIN_VER.BIOS_V, MIN_VER.BIOS_M
|
||||
|
||||
; LD C,Dss.Version
|
||||
; RST ToDSS
|
||||
; JR C,.Error_DOS
|
||||
; LD HL,MIN_DSS_VERSION
|
||||
; EX DE,HL
|
||||
; SBC HL,DE
|
||||
; JR C,.Error_DOS
|
||||
; ;
|
||||
; LD HL,-(MIN_DSS_BUILD)
|
||||
; ADD HL,BC
|
||||
; JR NC,.Error_DOS
|
||||
; ;
|
||||
; LD C,BIOS.DRV_VERSION
|
||||
; RST ToBIOS
|
||||
; JR C,.Error_BIOS
|
||||
; LD HL,-(MIN_BIOS_VERSION)
|
||||
; ADD HL,DE
|
||||
; RET C
|
||||
; .Error_BIOS:
|
||||
; LD HL,.Error_BIOS
|
||||
; JR .next
|
||||
; .Error_DOS:
|
||||
; LD HL,.Error_DSS
|
||||
; .next: LD C,Dss.PChars
|
||||
; RST ToDSS
|
||||
; ;
|
||||
; LD B,DSS_Error.sys.COMMON_ERROR
|
||||
; .error: LD C,Dss.Exit
|
||||
; RST ToDSS
|
||||
; JR .loop
|
||||
; .Error_BIOS: DB "\r\nERROR! Uncompatible version of BIOS. Needs version ",TXT_BIOS_VERSION," or higher.\r\n",0
|
||||
; .Error_DSS: DB "\r\nERROR! Uncompatible version of DSS. Needs version ",TXT_DSS_VERSION," or higher.\r\n",0
|
||||
;***********************************************************************
|
||||
;---------------[Tables]----------------
|
||||
ALIGN 2,0
|
||||
ALIGN 2,0
|
||||
;
|
||||
TABLES_START:
|
||||
X_COORD: DW 90*256
|
||||
@ -1845,31 +1912,14 @@ NAME6: DB "94956C CBL "
|
||||
NAME7: DB "_ENI511CCBL "
|
||||
;
|
||||
SND_DIR: DZ "MUSIC"
|
||||
;Up_Dir: DZ ".."
|
||||
;
|
||||
Loading_TXT: DZ "\r\nPlease wait, resources are loading..."
|
||||
GOTO_EXIT: DZ "\r\n < GAME OVER))) >"
|
||||
;
|
||||
; IFN NORM_syncPORT
|
||||
|
||||
; im_handler_emul_proc_address:
|
||||
; di
|
||||
; push af
|
||||
; call KBD_INT
|
||||
; pop af
|
||||
; reti
|
||||
|
||||
; BLOCK +(#FF - low $)
|
||||
; im_handler_emulator:
|
||||
; dw im_handler_emul_proc_address
|
||||
; ENDIF
|
||||
;
|
||||
MESSAGES_TXT:
|
||||
.Loading: DZ "\r\nPlease wait, resources are loading...\r\n"
|
||||
.NormExit: DZ "DOOM 2 demo for DSS says goodbye to you...\r\n"
|
||||
;-----------------------------------------------------------------------;
|
||||
OUTEND ; ª®¥æ ä ©« doom2.exe
|
||||
;-----------------------------------------------------------------------;
|
||||
|
||||
;------------------------------------
|
||||
;CURRENT_DIR: BLOCK 257,0
|
||||
|
||||
;------------------------------------
|
||||
Temp_Buffer EQU $
|
||||
TXT_SCREEN EQU Temp_Buffer + 257
|
||||
|
||||
@ -1 +1 @@
|
||||
Subproject commit b8a215d38afde3eed48f39eb961e96cdb6d9e426
|
||||
Subproject commit c9539a188d91551738e666770744c6007f0e5b01
|
||||
Loading…
Reference in New Issue
Block a user