mirror of
https://github.com/Tolik-Trek/DOOM2.git
synced 2026-06-15 09:01:34 +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
|
;ScreenStartAddress EQU #C000
|
||||||
;
|
;
|
||||||
;---------------------------[Defines section]---------------------------
|
;---------------------------[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]------------------------
|
;-----------------------[Compilation parameters]------------------------
|
||||||
DEVICE ZXSPECTRUM4096 ; ¬®¤¥«ì á 4 ¬¥âà ¬¨ ¯ ¬ïâ¨
|
DEVICE ZXSPECTRUM4096 ; ¬®¤¥«ì á 4 ¬¥âà ¬¨ ¯ ¬ïâ¨
|
||||||
MMU 2 e, 0 ; ã«¥¢ ï áâà ¨æ ¢ ¡ ªã 2 ¨ ¯à®¢¥àª £à ¨æë
|
MMU 2 e, 0 ; ã«¥¢ ï áâà ¨æ ¢ ¡ ªã 2 ¨ ¯à®¢¥àª £à ¨æë
|
||||||
OUTPUT './Build/DOOM2/doom2.exe'
|
OUTPUT './Build/DOOM2/doom2.exe'
|
||||||
;-----------------------------------------------------------------------
|
;-----------------------------------------------------------------------
|
||||||
;
|
;
|
||||||
@ -72,7 +100,9 @@ CMD_Line+1:
|
|||||||
LD HL,#8080
|
LD HL,#8080
|
||||||
CALL SET_HOME_PATH
|
CALL SET_HOME_PATH
|
||||||
;--------[§ £à㧪 à¥áãàᮢ ¨£àë]-------
|
;--------[§ £à㧪 à¥áãàᮢ ¨£àë]-------
|
||||||
LD HL,Loading_TXT
|
CALL CHECK_SYSTEM
|
||||||
|
;
|
||||||
|
LD HL,MESSAGES_TXT.Loading
|
||||||
LD C,Dss.PChars
|
LD C,Dss.PChars
|
||||||
RST ToDSS
|
RST ToDSS
|
||||||
;
|
;
|
||||||
@ -199,11 +229,12 @@ RETURN_POINT:
|
|||||||
;
|
;
|
||||||
CALL RESTORE_ALL
|
CALL RESTORE_ALL
|
||||||
;
|
;
|
||||||
LD HL,GOTO_EXIT
|
LD HL,MESSAGES_TXT.NormExit
|
||||||
LD C,Dss.PChars
|
LD C,Dss.PChars
|
||||||
RST ToDSS
|
RST ToDSS
|
||||||
;
|
;
|
||||||
.loop: LD BC,Dss.Exit
|
.loop: LD B,0
|
||||||
|
.error: LD C,Dss.Exit
|
||||||
RST ToDSS
|
RST ToDSS
|
||||||
JR .loop
|
JR .loop
|
||||||
;---------------------------------------
|
;---------------------------------------
|
||||||
@ -1817,8 +1848,44 @@ SCREEN_IN_CACHE:
|
|||||||
OUT (SYS_PORT.OFF),A
|
OUT (SYS_PORT.OFF),A
|
||||||
RET
|
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]----------------
|
;---------------[Tables]----------------
|
||||||
ALIGN 2,0
|
ALIGN 2,0
|
||||||
;
|
;
|
||||||
TABLES_START:
|
TABLES_START:
|
||||||
X_COORD: DW 90*256
|
X_COORD: DW 90*256
|
||||||
@ -1845,31 +1912,14 @@ NAME6: DB "94956C CBL "
|
|||||||
NAME7: DB "_ENI511CCBL "
|
NAME7: DB "_ENI511CCBL "
|
||||||
;
|
;
|
||||||
SND_DIR: DZ "MUSIC"
|
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
|
OUTEND ; ª®¥æ ä ©« doom2.exe
|
||||||
;-----------------------------------------------------------------------;
|
;-----------------------------------------------------------------------;
|
||||||
|
|
||||||
;------------------------------------
|
|
||||||
;CURRENT_DIR: BLOCK 257,0
|
|
||||||
|
|
||||||
;------------------------------------
|
;------------------------------------
|
||||||
Temp_Buffer EQU $
|
Temp_Buffer EQU $
|
||||||
TXT_SCREEN EQU Temp_Buffer + 257
|
TXT_SCREEN EQU Temp_Buffer + 257
|
||||||
|
|||||||
@ -1 +1 @@
|
|||||||
Subproject commit b8a215d38afde3eed48f39eb961e96cdb6d9e426
|
Subproject commit c9539a188d91551738e666770744c6007f0e5b01
|
||||||
Loading…
Reference in New Issue
Block a user