it_tute builds

This commit is contained in:
'mr software' 2023-03-11 15:18:28 -08:00
parent ff7c092581
commit 4d5d736be3
27 changed files with 7063 additions and 7150 deletions

View File

@ -1,7 +1,7 @@
Impulse Tracker Impulse Tracker
=============== ===============
Eventually, maybe, a version of IT for modern systems Eventually, maybe, a version of IT for modern x86\_64 systems
Pre-Requisite Software Pre-Requisite Software
---------------------- ----------------------

4
build
View File

@ -3,7 +3,7 @@ mkdir -p obj gen
for i in *.s; do for i in *.s; do
echo $i echo $i
nasm -g $i -felf32 -o "obj/$(echo $i | sed 's/s$/o/g')" nasm -g $i -felf64 -o "obj/$(echo $i | sed 's/s$/o/g')"
done done
cc -m32 main.c c/* obj/* -g3 cc main.c c/* obj/* -g3

6
check-errors Executable file
View File

@ -0,0 +1,6 @@
for i in *.s; do echo -e $(nasm -felf32 -o /tmp/test.o $i 2>&1 | wc -l)'\t'$i; done | sort -n
echo -e '\nct. in source:'
for i in '^EndP' '^EndM' '^Proc'; do
echo -e $i'\t'$(grep -RE $i 2>/dev/null | wc -l)
done

View File

@ -1,29 +0,0 @@
18 it_mdata.s
37 it_err.s
51 it_vesa.s
90 it_h.s
140 it_four.s
165 it_tute.s
167 it_m.s
172 it_l.s
174 it_mmtsr.s
238 it_k.s
240 it_ems.s
287 it_s.s
311 it_msg.s
318 it_mouse.s
336 it.s
425 it_g.s
641 it_net.s
815 it_displ.s
1563 it_f.s
1795 it_music.s
2057 it_pe.s
2155 it_i.s
2238 it_disk.s
2398 it_obj1.s
instances in source code:
EndM: 374
EndP: 3320
Proc: 3597

240
it.s
View File

@ -5,103 +5,103 @@
; TODO ; TODO
;Jumps ;Jumps
include switch.inc %include "switch.inc"
;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
;³ Externals ³ ;³ Externals ³
;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Segment Object1 BYTE Public 'Data' Segment Object1 BYTE Public 'Data'
Extrn HelpKeyValue:Word, OrderKeyValue:Word extern HelpKeyValue:Word, OrderKeyValue:Word
EndS EndS
Segment InfoLine BYTE Public 'Code' USE16 Segment InfoLine BYTE Public 'Code' USE16
Extrn ShowUsageTime:Byte extern ShowUsageTime:Byte
EndS EndS
Segment Disk BYTE Public 'Code' USE16 Segment Disk BYTE Public 'Code' USE16
Extrn DiskOptions:Byte extern DiskOptions:Byte
EndS EndS
Segment Screen BYTE Public 'Code' Segment Screen BYTE Public 'Code'
Extrn CharacterGenerationOffset:Word extern CharacterGenerationOffset:Word
Extrn VGAFlags:Byte extern VGAFlags:Byte
EndS EndS
Segment Mouse BYTE Public 'Code' Segment Mouse BYTE Public 'Code'
Extrn MouseCharacterGenerationOffset:Word extern MouseCharacterGenerationOffset:Word
EndS EndS
Segment Main DWORD Public 'Code' USE16 Segment Main DWORD Public 'Code' USE16
Extrn ReleaseTimeSlice:Byte extern ReleaseTimeSlice:Byte
EndS EndS
Extrn D_InitDisk:Far extern D_InitDisk:Far
Extrn D_UnInitDisk:Far extern D_UnInitDisk:Far
Extrn D_DisableFileColours:Far extern D_DisableFileColours:Far
Extrn E_InitEMS:Far extern E_InitEMS:Far
Extrn E_UnInitEMS:Far extern E_UnInitEMS:Far
Extrn Error_InitHandler:Far extern Error_InitHandler:Far
Extrn Error_UnInitHandler:Far extern Error_UnInitHandler:Far
Extrn K_InitKeyBoard:Far extern K_InitKeyBoard:Far
Extrn K_UnInitKeyBoard:Far extern K_UnInitKeyBoard:Far
Extrn K_InstallKeyboardType:Far extern K_InstallKeyboardType:Far
Extrn K_RemoveKeyboardType:Far extern K_RemoveKeyboardType:Far
Extrn K_InstallDOSHandler:Far extern K_InstallDOSHandler:Far
Extrn K_UnInstallDOSHandler:Far extern K_UnInstallDOSHandler:Far
Extrn K_SwapKeyBoard:Far extern K_SwapKeyBoard:Far
Extrn O1_AutoDetectList:Far extern O1_AutoDetectList:Far
Extrn O1_ConfirmQuit:Far extern O1_ConfirmQuit:Far
Extrn O1_PatternEditList:Far extern O1_PatternEditList:Far
Extrn O1_CrashRecovery:Far extern O1_CrashRecovery:Far
Extrn O1_KeyboardList:Far extern O1_KeyboardList:Far
Extrn M_Object1List:Far extern M_Object1List:Far
Extrn S_InitScreen:Far extern S_InitScreen:Far
Extrn S_ClearScreen:Far extern S_ClearScreen:Far
Extrn S_UnInitScreen:Far extern S_UnInitScreen:Far
Extrn S_SetDirectMode:Far extern S_SetDirectMode:Far
Extrn S_DrawString:Far extern S_DrawString:Far
Extrn Music_InitMusic:Far extern Music_InitMusic:Far
Extrn Music_UnInitMusic:Far extern Music_UnInitMusic:Far
Extrn Music_SetLimit:Far extern Music_SetLimit:Far
Extrn Music_SetSoundCard:Far extern Music_SetSoundCard:Far
Extrn Music_SetDMA:Far extern Music_SetDMA:Far
Extrn Music_SetIRQ:Far extern Music_SetIRQ:Far
Extrn Music_SetMixSpeed:Far extern Music_SetMixSpeed:Far
Extrn Music_SetAddress:Far extern Music_SetAddress:Far
Extrn Music_ReverseChannels:Far extern Music_ReverseChannels:Far
Extrn Music_PatternStorage:Far extern Music_PatternStorage:Far
Extrn Music_SetSoundCardDriver:Far extern Music_SetSoundCardDriver:Far
Extrn Music_Stop:Far extern Music_Stop:Far
Extrn Music_AutoDetectSoundCard:Far extern Music_AutoDetectSoundCard:Far
IF NETWORKENABLED %IF NETWORKENABLED
Extrn Network_Shutdown:Far extern Network_Shutdown:Far
ENDIF %ENDIF
Extrn PE_InitPatternEdit:Far extern PE_InitPatternEdit:Far
Extrn PE_UnInitPatternEdit:Far extern PE_UnInitPatternEdit:Far
Extrn PECheckModified:Far extern PECheckModified:Far
Extrn D_RestorePreShellDirectory:Far extern D_RestorePreShellDirectory:Far
Extrn D_GetPreShellDirectory:Far extern D_GetPreShellDirectory:Far
Extrn MMTSR_InstallMMTSR:Far extern MMTSR_InstallMMTSR:Far
Extrn MMTSR_UninstallMMTSR:Far extern MMTSR_UninstallMMTSR:Far
Extrn InitMouse:Far, UnInitMouse:Far extern InitMouse:Far, UnInitMouse:Far
Extrn CmdLineDisableMouse:Far extern CmdLineDisableMouse:Far
Extrn InitTimerHandler:Far, UnInitTimerHandler:Far extern InitTimerHandler:Far, UnInitTimerHandler:Far
;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
@ -114,17 +114,19 @@ ENDIF
;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
Segment StartUp BYTE Public 'Code' USE16 ;Segment StartUp BYTE Public 'Code' USE16
Assume CS:StartUp, DS:Nothing, ES:Nothing section .text
%warning "USE16"
; ;Assume CS:StartUp, DS:Nothing, ES:Nothing
CREATENEWLOGFILE EQU 1 CREATENEWLOGFILE EQU 1
include debug.inc %include "debug.inc"
;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
;³ Variables ³ ;³ Variables ³
;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
StackSize = 1000h StackSize equ 1000h
No386Msg DB "Sorry, Impulse Tracker requires a 386+ processor to run." No386Msg DB "Sorry, Impulse Tracker requires a 386+ processor to run."
DB 13, 10, "$" DB 13, 10, "$"
@ -154,24 +156,24 @@ EXECData DW 0 ; Inherit same environment block
DW Offset FCB2, Startup DW Offset FCB2, Startup
ShellMsg DB "Type EXIT to return to Impulse Tracker$" ShellMsg DB "Type EXIT to return to Impulse Tracker$"
IF SHOWREGISTERNAME %IF SHOWREGISTERNAME
include wavswitc.inc %include "wavswitc.inc"
include username.inc %include "username.inc"
ENDIF %ENDIF
Label CmdLineHelp Byte Label CmdLineHelp Byte
IF SHOWVERSION %IF SHOWVERSION
DB "Impulse Tracker 2.14, Copyright (C) 1995-2000 Jeffrey Lim", 13, 10 DB "Impulse Tracker 2.14, Copyright (C) 1995-2000 Jeffrey Lim", 13, 10
DB 10 DB 10
DB " Usage: IT.EXE [Switches]", 13, 10 DB " Usage: IT.EXE [Switches]", 13, 10
ELSE %ELSE
DB "Impulse Tracker, Copyright (C) 1995-2000 Jeffrey Lim", 13, 10 DB "Impulse Tracker, Copyright (C) 1995-2000 Jeffrey Lim", 13, 10
IF SHOWREGISTERNAME %IF SHOWREGISTERNAME
DB "Registered to: " DB "Registered to: "
DB REGISTERNAME DB REGISTERNAME
DB 13, 10 DB 13, 10
ENDIF %ENDIF
ENDIF %ENDIF
DB 10 DB 10
DB "Switches:", 13, 10 DB "Switches:", 13, 10
DB " SFilename.Drv Select sound card driver", 13, 10 DB " SFilename.Drv Select sound card driver", 13, 10
@ -232,7 +234,7 @@ StartupQueueNextFunction DW Offset GetStartupKeyList2
;³ Functions ³ ;³ Functions ³
;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Proc CapitaliseAL CapitaliseAL:
Cmp AL, 'a' Cmp AL, 'a'
JB CapitaliseAL1 JB CapitaliseAL1
@ -245,7 +247,7 @@ Proc CapitaliseAL
CapitaliseAL1: CapitaliseAL1:
Ret Ret
EndP CapitaliseAL ;EndP CapitaliseAL
CapitaliseAL: CapitaliseAL:
cmp al, 'a' cmp al, 'a'
@ -257,7 +259,7 @@ CapitaliseAL:
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Proc GetDecimalNumber ; Returns CX GetDecimalNumber: ; Returns CX
LodsB LodsB
Cmp AL, '0' Cmp AL, '0'
@ -294,12 +296,12 @@ GetDecimalNumber4:
ClC ClC
Ret Ret
EndP GetDecimalNumber ;EndP GetDecimalNumber
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Proc Start Start:
Assume DS:Nothing ;Assume DS:Nothing
; 386 check. ; 386 check.
@ -416,13 +418,13 @@ NoShowUsageTime:
Push InfoLine Push InfoLine
Pop DS Pop DS
Assume DS:InfoLine ;Assume DS:InfoLine
Mov [ShowUsageTime], 0 Mov [ShowUsageTime], 0
Pop DS Pop DS
Jmp CmdLine1 Jmp CmdLine1
Assume DS:Nothing ;Assume DS:Nothing
NoReleaseTimeSlice: NoReleaseTimeSlice:
Cmp AL, '2' Cmp AL, '2'
@ -433,7 +435,7 @@ NoReleaseTimeSlice2:
Push Main Push Main
Pop DS Pop DS
Assume DS:Main ;Assume DS:Main
Mov [ReleaseTimeSlice], 1 Mov [ReleaseTimeSlice], 1
@ -477,31 +479,31 @@ DisableMMTSR:
DisableDetectDriveMap: DisableDetectDriveMap:
Push Disk Push Disk
Pop DS Pop DS
Assume DS:Disk ;Assume DS:Disk
Or [DiskOptions], 1 Or [DiskOptions], 1
Jmp CmdLine1 Jmp CmdLine1
Assume DS:Nothing ;Assume DS:Nothing
DisableCacheFiles: DisableCacheFiles:
Push Disk Push Disk
Pop DS Pop DS
Assume DS:Disk ;Assume DS:Disk
Or [DiskOptions], 2 Or [DiskOptions], 2
Jmp CmdLine1 Jmp CmdLine1
Assume DS:Nothing ;Assume DS:Nothing
KeyboardSwap: KeyboardSwap:
Mov AX, Object1 Mov AX, Object1
Mov DS, AX Mov DS, AX
Assume DS:Object1 ;Assume DS:Object1
Mov [HelpKeyValue], 157h Mov [HelpKeyValue], 157h
Mov [OrderKeyValue], 13Bh Mov [OrderKeyValue], 13Bh
Jmp CmdLine1 Jmp CmdLine1
Assume DS:Nothing ;Assume DS:Nothing
DisableColours: DisableColours:
Call D_DisableFileColours Call D_DisableFileColours
@ -516,7 +518,7 @@ OverrideVGA:
Mov CX, Screen Mov CX, Screen
Mov DS, CX Mov DS, CX
Assume DS:Screen ;Assume DS:Screen
Cmp AL, '1' Cmp AL, '1'
JE OverrideVGA1 JE OverrideVGA1
@ -545,11 +547,11 @@ Matrox:
Mov AX, Mouse Mov AX, Mouse
Mov DS, AX Mov DS, AX
Assume DS:Mouse ;Assume DS:Mouse
Mov [MouseCharacterGenerationOffset], 256*32 Mov [MouseCharacterGenerationOffset], 256*32
Jmp CmdLine1 Jmp CmdLine1
Assume DS:Nothing ;Assume DS:Nothing
SetControl: SetControl:
Mov [CS:Control], 1 Mov [CS:Control], 1
@ -624,7 +626,7 @@ SetMixSpeed1:
SetMixSpeedError: SetMixSpeedError:
Push CS Push CS
Pop DS Pop DS
Assume DS:StartUp ;Assume DS:StartUp
Mov AH, 9 Mov AH, 9
Mov DX, Offset MixErrorMsg Mov DX, Offset MixErrorMsg
@ -632,7 +634,7 @@ SetMixSpeedError:
Mov [Pause], 1 Mov [Pause], 1
Jmp CmdLine1 Jmp CmdLine1
Assume DS:Nothing ;Assume DS:Nothing
SetIRQ1: SetIRQ1:
Call GetDecimalNumber Call GetDecimalNumber
@ -648,7 +650,7 @@ SetIRQ1:
IRQError: IRQError:
Push CS Push CS
Pop DS Pop DS
Assume DS:StartUp ;Assume DS:StartUp
Mov AH, 9 Mov AH, 9
Mov DX, Offset IRQErrorMsg Mov DX, Offset IRQErrorMsg
@ -656,7 +658,7 @@ IRQError:
Mov [Pause], 1 Mov [Pause], 1
Jmp CmdLine1 Jmp CmdLine1
Assume DS:Nothing ;Assume DS:Nothing
SetAddress1: SetAddress1:
@ -713,7 +715,7 @@ SetAddress5:
AddressError: AddressError:
Push CS Push CS
Pop DS Pop DS
Assume DS:StartUp ;Assume DS:StartUp
Mov AH, 9 Mov AH, 9
Mov DX, Offset AddressErrorMsg Mov DX, Offset AddressErrorMsg
@ -721,7 +723,7 @@ AddressError:
Mov [Pause], 1 Mov [Pause], 1
Jmp CmdLine1 Jmp CmdLine1
Assume DS:Nothing ;Assume DS:Nothing
Limit1: Limit1:
Call GetDecimalNumber Call GetDecimalNumber
@ -739,7 +741,7 @@ Limit1:
LimitError: LimitError:
Push CS Push CS
Pop DS Pop DS
Assume DS:StartUp ;Assume DS:StartUp
Mov AH, 9 Mov AH, 9
Mov DX, Offset LimitErrorMsg Mov DX, Offset LimitErrorMsg
@ -747,7 +749,7 @@ LimitError:
Mov [Pause], 1 Mov [Pause], 1
Jmp CmdLine1 Jmp CmdLine1
Assume DS:Nothing ;Assume DS:Nothing
CmdLineEnd: CmdLineEnd:
@ -755,7 +757,7 @@ CmdLineEnd:
Push CS Push CS
Pop DS Pop DS
Assume DS:StartUp ;Assume DS:StartUp
Trace "Windows Detection" Trace "Windows Detection"
@ -862,7 +864,7 @@ SkipMMTSR:
Call M_Object1List Call M_Object1List
Jmp Quit1 Jmp Quit1
Proc Quit Far Quit:;Far
Mov DI, Offset O1_ConfirmQuit Mov DI, Offset O1_ConfirmQuit
Mov CX, 3 Mov CX, 3
@ -878,9 +880,9 @@ Quit1:
Call PECheckModified Call PECheckModified
Call Music_Stop Call Music_Stop
IF NETWORKENABLED %IF NETWORKENABLED
Call Network_Shutdown Call Network_Shutdown
ENDIF %ENDIF
Call MMTSR_UninstallMMTSR Call MMTSR_UninstallMMTSR
Call PE_UnInitPatternEdit Call PE_UnInitPatternEdit
@ -897,23 +899,23 @@ ENDIF
Mov AX, 4C00h Mov AX, 4C00h
Int 21h Int 21h
EndP Quit ;EndP Quit
EndP Start ;EndP Start
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Proc IsStartupKeyList Far IsStartupKeyList:;Far
Mov AL,CS:StartupList Mov AL,CS:StartupList
Ret Ret
EndP IsStartupKeyList ;EndP IsStartupKeyList
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Proc GetStartupKeyList Far GetStartupKeyList:;Far
Jmp [CS:StartupKeyListFunction] Jmp [CS:StartupKeyListFunction]
@ -977,11 +979,11 @@ GetStartupKeyList3: ; Save module then quit
Mov [CS:StartupList], 0 Mov [CS:StartupList], 0
Ret Ret
EndP GetStartupKeyList ;EndP GetStartupKeyList
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Proc CrashRecovery Far ; CtrlAltDel location. CrashRecovery:;Far ; CtrlAltDel location.
ClD ClD
StI StI
@ -999,11 +1001,11 @@ Proc CrashRecovery Far ; CtrlAltDel location.
Mov CX, 0FFFFh Mov CX, 0FFFFh
Jmp M_Object1List Jmp M_Object1List
EndP CrashRecovery ;EndP CrashRecovery
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Proc GetEnvironment Far ; DS:SI points to string. GetEnvironment:;Far ; DS:SI points to string.
; CX = length of string. ; CX = length of string.
; Returns ES:DI ; Returns ES:DI
@ -1042,11 +1044,11 @@ GetEnvironment3:
ClC ClC
Ret Ret
EndP GetEnvironment ;EndP GetEnvironment
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Proc Refresh Far Refresh:;Far
Call D_GetPreShellDirectory Call D_GetPreShellDirectory
Call S_InitScreen Call S_InitScreen
@ -1057,11 +1059,11 @@ Proc Refresh Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Refresh ;EndP Refresh
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Proc DOSShell Far DOSShell:;Far
PushAD PushAD
Push DS Push DS
@ -1090,7 +1092,7 @@ DOSShell3:
Push CS Push CS
Pop DS Pop DS
Pop ES Pop ES
Assume DS:StartUp ;Assume DS:StartUp
Mov AH, 9 Mov AH, 9
Mov DX, Offset ShellMsg Mov DX, Offset ShellMsg
@ -1107,7 +1109,7 @@ DOSShell3:
DOSShell1: DOSShell1:
ClI ClI
Int 21h Int 21h
Assume DS:Nothing ;Assume DS:Nothing
PopF PopF
@ -1134,8 +1136,8 @@ DOSShell5:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP DOSShell ;EndP DOSShell
Assume DS:Nothing ;Assume DS:Nothing
;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ

1121
it_disk.s

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

107
it_ems.s
View File

@ -2,7 +2,7 @@
;ウ EMS Module ウ ;ウ EMS Module ウ
;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル ;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル
include switch.inc %include "switch.inc"
; Memory structure for patterns: ; Memory structure for patterns:
; Memory Block Header ; Memory Block Header
@ -16,27 +16,24 @@ include switch.inc
; Offset 9-0Fh: Not used ; Offset 9-0Fh: Not used
; Offset 10h Data ; Offset 10h Data
Jumps
.386
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Externals ウ ;ウ Externals ウ
;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル ;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル
Segment Object1 BYTE Public 'Data' Segment Object1 BYTE Public 'Data'
Extrn EMSErrorValue:Word extern EMSErrorValue:Word
Extrn EMSErrorValue2:Word extern EMSErrorValue2:Word
Extrn EMSErrorValue3:Word extern EMSErrorValue3:Word
Extrn EMSErrorValue4:Word extern EMSErrorValue4:Word
Extrn EMSErrorValue5:Word extern EMSErrorValue5:Word
Extrn EMSErrorValue6:Word extern EMSErrorValue6:Word
Extrn EMSErrorValue7:Word extern EMSErrorValue7:Word
Extrn EMSErrorValue8:Word extern EMSErrorValue8:Word
EndS EndS
Extrn M_Object1List:Far extern M_Object1List:Far
Extrn O1_EMSWarningMessage extern O1_EMSWarningMessage
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Globals ウ ;ウ Globals ウ
@ -57,37 +54,37 @@ EndS
Global E_GetEMSVersion:Far Global E_GetEMSVersion:Far
Global E_GetInternalEMSHandle:Far Global E_GetInternalEMSHandle:Far
IF EMSDEBUG %IF EMSDEBUG
Global E_DumpEMSMemory:Far Global E_DumpEMSMemory:Far
ENDIF %ENDIF
;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ ;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ
Segment EMS WORD Public 'Code' USE16 Segment EMS WORD Public 'Code' USE16
Assume CS:EMS, DS:Nothing ;Assume CS:EMS, DS:Nothing
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Variables ウ ;ウ Variables ウ
;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル ;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル
CREATENEWLOGFILE EQU 0 CREATENEWLOGFILE EQU 0
include debug.inc %include "debug.inc"
EMSDetectString DB "EMMXXXX0" ; Identification string EMSDetectString DB "EMMXXXX0" ; Identification string
EMSHandlesRemaining DW 0 EMSHandlesRemaining DW 0
EMSAvailable DW 0 ; Assume that it's not avail. EMSAvailable DW 0 ; ;Assume that it's not avail.
EMSPageFrame DW 0 EMSPageFrame DW 0
EMSHandle DW 0 EMSHandle DW 0
EMSVersion DB 0 EMSVersion DB 0
DB 0 DB 0
IF EMSDEBUG %IF EMSDEBUG
EMSDumpName DB "EMSDump", 0 EMSDumpName DB "EMSDump", 0
ENDIF %ENDIF
EMSCorrespondenceList Label Word EMSCorrespondenceList Label Word
Page0 DB 0, 0 Page0 DB 0, 0
@ -122,7 +119,7 @@ Proc E_InitEMS Far
Push CS Push CS
Pop DS Pop DS
Assume DS:EMS ;Assume DS:EMS
Mov SI, Offset EMSDetectString Mov SI, Offset EMSDetectString
@ -242,8 +239,8 @@ E_InitEMS1:
Pop DS Pop DS
Ret Ret
EndP E_InitEMS ;EndP E_InitEMS
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -274,7 +271,7 @@ E_GetFreeEMS1:
Pop BX Pop BX
Ret Ret
EndP E_GetFreeEMS ;EndP E_GetFreeEMS
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -300,7 +297,7 @@ E_ReleaseEMS1:
Ret Ret
EndP E_ReleaseEMS ;EndP E_ReleaseEMS
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -312,7 +309,7 @@ Proc EMSWarning
Mov BX, Object1 Mov BX, Object1
Mov DS, BX Mov DS, BX
Assume DS:Object1 ;Assume DS:Object1
Mov Byte Ptr EMSErrorValue, AH Mov Byte Ptr EMSErrorValue, AH
Mov EMSErrorValue2, CX Mov EMSErrorValue2, CX
@ -343,8 +340,8 @@ Proc EMSWarning
Ret Ret
EndP EMSWarning ;EndP EMSWarning
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -375,7 +372,7 @@ E_MapAvailableEMSMemory2:
Ret Ret
EndP E_MapAvailableEMSMemory ;EndP E_MapAvailableEMSMemory
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -397,10 +394,10 @@ Proc E_MapEMSMemory Far ; CL = total pages in handle
E_MapEMSMemory003: E_MapEMSMemory003:
IF EMSUSE41 %IF EMSUSE41
Cmp CS:EMSVersion, 40h Cmp CS:EMSVersion, 40h
JAE E_MapEMSMemoryV4_1 JAE E_MapEMSMemoryV4_1
ENDIF %ENDIF
Xor BX, BX Xor BX, BX
@ -419,7 +416,7 @@ E_MapEMSMemory001:
JNZ E_MapEMSMemory001 JNZ E_MapEMSMemory001
Jmp E_MapEMSMemory002 Jmp E_MapEMSMemory002
IF EMSUSE41 %IF EMSUSE41
E_MapEMSMemoryV4_1: E_MapEMSMemoryV4_1:
Push DS Push DS
@ -430,7 +427,7 @@ E_MapEMSMemoryV4_1:
Push CS Push CS
Pop DS Pop DS
Assume DS:EMS ;Assume DS:EMS
Mov Page0, CH Mov Page0, CH
Inc CH Inc CH
@ -448,12 +445,12 @@ E_MapEMSMemoryV4_1:
PopF PopF
Pop SI Pop SI
Pop DS Pop DS
Assume DS:Nothing ;Assume DS:Nothing
Test AH, AH Test AH, AH
JZ E_MapEMSMemory002 JZ E_MapEMSMemory002
ENDIF %ENDIF
E_MapEMSMemory004: E_MapEMSMemory004:
; Call EMSWarning ; Call EMSWarning
@ -466,7 +463,7 @@ E_MapEMSMemory002:
E_MapEMSMemoryExit: E_MapEMSMemoryExit:
Ret Ret
EndP E_MapEMSMemory ;EndP E_MapEMSMemory
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -481,7 +478,7 @@ Proc E_UnInitEMS Far
E_UnInitEMS1: E_UnInitEMS1:
Ret Ret
EndP E_UnInitEMS ;EndP E_UnInitEMS
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -490,7 +487,7 @@ Proc E_GetEMSPageFrame Far
Mov AX, CS:EMSPageFrame Mov AX, CS:EMSPageFrame
Ret Ret
EndP E_GetEMSPageFrame ;EndP E_GetEMSPageFrame
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -514,7 +511,7 @@ Proc E_MapAlignedBlockEMS Far ; Given AX, Return DS:SI
Ret Ret
EndP E_MapAlignedBlockEMS ;EndP E_MapAlignedBlockEMS
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -635,7 +632,7 @@ AllocateBlockQuit:
StI StI
Ret Ret
EndP E_AllocateBlockEMS ;EndP E_AllocateBlockEMS
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -721,7 +718,7 @@ E_ReleaseBlockCleanup:
StI StI
Ret Ret
EndP E_ReleaseBlockEMS ;EndP E_ReleaseBlockEMS
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -771,7 +768,7 @@ E_AllocateEMS1:
Pop EBX Pop EBX
Ret Ret
EndP E_AllocateEMS ;EndP E_AllocateEMS
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -780,7 +777,7 @@ Proc E_EMSAvailable Far ; Returns Zero flag set if no EMS
Cmp CS:EMSAvailable, 0 Cmp CS:EMSAvailable, 0
Ret Ret
EndP E_EMSAvailable ;EndP E_EMSAvailable
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -805,7 +802,7 @@ E_SavePageFrame1:
Ret Ret
EndP E_SavePageFrame ;EndP E_SavePageFrame
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -828,7 +825,7 @@ E_RestorePageFrame1:
Ret Ret
EndP E_RestorePageFrame ;EndP E_RestorePageFrame
~ ~
@ -865,7 +862,7 @@ E_SaveEMSPageFrame2:
E_SaveEMSPageFrame1: E_SaveEMSPageFrame1:
Ret Ret
EndP E_SaveEMSPageFrame ;EndP E_SaveEMSPageFrame
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -887,7 +884,7 @@ Proc E_RestoreEMSPageFrame Far
E_RestoreEMSPageFrame1: E_RestoreEMSPageFrame1:
Ret Ret
EndP E_RestoreEMSPageFrame ;EndP E_RestoreEMSPageFrame
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -896,7 +893,7 @@ Proc E_GetEMSVersion Far
Mov AL, CS:EMSVersion Mov AL, CS:EMSVersion
Ret Ret
EndP E_GetEMSVersion ;EndP E_GetEMSVersion
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -905,17 +902,17 @@ Proc E_GetInternalEMSHandle Far
Mov AX, CS:EMSHandle Mov AX, CS:EMSHandle
Ret Ret
EndP E_GetInternalEMSHandle ;EndP E_GetInternalEMSHandle
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
IF EMSDEBUG %IF EMSDEBUG
Proc E_DumpEMSMemory Far Proc E_DumpEMSMemory Far
Push CS Push CS
Pop DS Pop DS
Assume DS:EMS ;Assume DS:EMS
Mov AH, 3Ch Mov AH, 3Ch
Xor CX, CX Xor CX, CX
@ -959,10 +956,10 @@ Proc E_DumpEMSMemory Far
Xor AX, AX Xor AX, AX
Ret Ret
EndP E_DumpEMSMemory ;EndP E_DumpEMSMemory
Assume DS:Nothing ;Assume DS:Nothing
ENDIF %ENDIF
;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ ;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ

View File

@ -23,7 +23,7 @@
;Segment Error BYTE Public 'Code' USE16 ;Segment Error BYTE Public 'Code' USE16
section .text section .text
%warning "USE16" %warning "USE16"
; Assume CS:Error ; ;Assume CS:Error
CREATENEWLOGFILE EQU 0 CREATENEWLOGFILE EQU 0
%include "debug.inc" %include "debug.inc"
@ -79,7 +79,7 @@ ErrorHandler:
Push CS Push CS
Pop DS Pop DS
; Assume DS:Error ; ;Assume DS:Error
Mov BX, DI Mov BX, DI
And BX, 0FFh And BX, 0FFh
@ -117,7 +117,7 @@ ErrorHandler4:
IRet IRet
;EndP ErrorHandler ;EndP ErrorHandler
; Assume DS:Nothing ; ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

633
it_f.s

File diff suppressed because it is too large Load Diff

View File

@ -2,13 +2,9 @@
;ウ Fast Fourier Transform Module ウ ;ウ Fast Fourier Transform Module ウ
;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル ;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル
Jumps %include "switch.inc"
.386P
.387
include switch.inc %IF SPECTRUMANALYSER
IF SPECTRUMANALYSER
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Externals ウ ;ウ Externals ウ
@ -19,27 +15,27 @@ EndS
Segment DiskData PARA Public 'Data' Segment DiskData PARA Public 'Data'
EndS EndS
Extrn O1_FourierDisplay:Far extern O1_FourierDisplay:Far
Extrn M_Object1List:Far extern M_Object1List:Far
Extrn Music_GetWaveForm:Far extern Music_GetWaveForm:Far
Extrn S_InitScreen:Far extern S_InitScreen:Far
Extrn S_SetDirectMode:Far extern S_SetDirectMode:Far
Global MouseUpdateEnable:Far, MouseUpdateDisable:Far Global MouseUpdateEnable:Far, MouseUpdateDisable:Far
Extrn VESA_Detect:Far extern VESA_Detect:Far
Extrn VESA_SetMode:Far extern VESA_SetMode:Far
Extrn VESA_SetBlock:Far extern VESA_SetBlock:Far
Extrn InitMouse:Far, UnInitMouse:Far extern InitMouse:Far, UnInitMouse:Far
Extrn S_DefineSmallNumbers:Far extern S_DefineSmallNumbers:Far
;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ ;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ
Segment Infopage BYTE Public 'Code' USE16 Segment Infopage BYTE Public 'Code' USE16
Assume CS:Infopage, DS:Nothing, ES:Nothing ;Assume CS:Infopage, DS:Nothing, ES:Nothing
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Variables ウ ;ウ Variables ウ
@ -79,7 +75,7 @@ Fourier_CreateTable2:
Ret Ret
EndP Fourier_CreateTable ;EndP Fourier_CreateTable
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -226,7 +222,7 @@ Fourier_CalculateMagnitudes1: ; Could be interleaved, but speed isn't
Ret Ret
EndP Fourier_Transform ;EndP Fourier_Transform
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -241,7 +237,7 @@ Public Fourier_ChangePalette
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Fourier_ChangePalette ;EndP Fourier_ChangePalette
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -366,7 +362,7 @@ Fourier_PaletteB5:
Ret Ret
EndP Fourier_SetPalette ;EndP Fourier_SetPalette
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -421,7 +417,7 @@ Fourier_End:
Ret Ret
EndP Fourier_Start ;EndP Fourier_Start
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -430,7 +426,7 @@ Public Fourier_PreDrawScreen
Ret Ret
EndP Fourier_PreDrawScreen ;EndP Fourier_PreDrawScreen
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -571,7 +567,7 @@ Fourier_DrawBars4:
Fourier_DrawScreen1: Fourier_DrawScreen1:
Ret Ret
EndP Fourier_DrawScreen ;EndP Fourier_DrawScreen
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -581,7 +577,7 @@ Public Fourier_IdleList
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Fourier_IdleList ;EndP Fourier_IdleList
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -599,14 +595,14 @@ Fourier_PostFunction2:
Mov AX, 4 Mov AX, 4
Ret Ret
EndP Fourier_PostFunction ;EndP Fourier_PostFunction
;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ ;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ
EndS EndS
ENDIF %ENDIF
End End

266
it_g.s
View File

@ -2,95 +2,93 @@
;ウ Global Key Handler ウ ;ウ Global Key Handler ウ
;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル ;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル
Jumps %include "switch.inc"
%include "network.inc"
include switch.inc
include network.inc
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Externals ウ ;ウ Externals ウ
;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル ;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル
Segment Pattern BYTE Public 'Code' Segment Pattern BYTE Public 'Code'
Extrn LastInstrument:Byte extern LastInstrument:Byte
Extrn Order:Word extern Order:Word
Extrn MaxRow:Word extern MaxRow:Word
Extrn NumberOfRows:Word extern NumberOfRows:Word
Extrn PatternNumber:Word extern PatternNumber:Word
EndS EndS
Segment Inst BYTE Public 'Code' Segment Inst BYTE Public 'Code'
Extrn SampleNumber:Byte extern SampleNumber:Byte
Extrn InstrumentScreen:Word extern InstrumentScreen:Word
EndS EndS
Segment Object1 BYTE Public 'Data' Segment Object1 BYTE Public 'Data'
EndS EndS
Extrn D_InitLoadModule:Far extern D_InitLoadModule:Far
Extrn D_InitLoadSamples:Far extern D_InitLoadSamples:Far
Extrn D_InitLoadInstruments:Far extern D_InitLoadInstruments:Far
Extrn Display_SelectDisplayList:Far extern Display_SelectDisplayList:Far
Extrn M_Object1List:Far extern M_Object1List:Far
Extrn I_ClearTables:Far extern I_ClearTables:Far
Extrn Music_GetInstrumentMode:Far extern Music_GetInstrumentMode:Far
Extrn Music_GetPlayMode:Far extern Music_GetPlayMode:Far
Extrn Music_PlayPattern:Far extern Music_PlayPattern:Far
Extrn Music_PlaySong:Far extern Music_PlaySong:Far
Extrn Music_Stop:Far extern Music_Stop:Far
Extrn Music_ToggleChannel:Far extern Music_ToggleChannel:Far
Extrn Music_GetSlaveChannelInformationTable:Far extern Music_GetSlaveChannelInformationTable:Far
Extrn Music_IncreaseSpeed:Far extern Music_IncreaseSpeed:Far
Extrn Music_DecreaseSpeed:Far extern Music_DecreaseSpeed:Far
Extrn Music_IncreaseVolume:Far extern Music_IncreaseVolume:Far
Extrn Music_DecreaseVolume:Far extern Music_DecreaseVolume:Far
Extrn Music_GetSongSegment:Far extern Music_GetSongSegment:Far
Extrn Music_GetDriverScreen:Far extern Music_GetDriverScreen:Far
Extrn SetInfoLine:Far extern SetInfoLine:Far
Extrn PE_GetCurrentPattern:Far extern PE_GetCurrentPattern:Far
Extrn PE_SetPatternModified:far extern PE_SetPatternModified:far
Extrn O1_InstrumentListGeneral:Far extern O1_InstrumentListGeneral:Far
Extrn O1_InstrumentListVolume:Far extern O1_InstrumentListVolume:Far
Extrn O1_InstrumentListPanning:Far extern O1_InstrumentListPanning:Far
Extrn O1_InstrumentListPitch:Far extern O1_InstrumentListPitch:Far
Extrn O1_KeyboardList:Far extern O1_KeyboardList:Far
Extrn O1_LoadSampleList:Far extern O1_LoadSampleList:Far
Extrn O1_OrderPanningList:Far extern O1_OrderPanningList:Far
Extrn O1_PatternEditList:Far extern O1_PatternEditList:Far
Extrn O1_PEConfigList:Far extern O1_PEConfigList:Far
Extrn O1_SampleList:Far extern O1_SampleList:Far
Extrn O1_LoadModuleList:Far extern O1_LoadModuleList:Far
Extrn O1_ViewInstrumentLibrary:Far extern O1_ViewInstrumentLibrary:Far
Extrn O1_SaveModuleList:Far extern O1_SaveModuleList:Far
Extrn O1_LoadInstrumentList:Far extern O1_LoadInstrumentList:Far
Extrn O1_MessageList:Far extern O1_MessageList:Far
Extrn O1_OrderVolumeList:Far extern O1_OrderVolumeList:Far
Extrn O1_DisplayList:Far extern O1_DisplayList:Far
Extrn I_DrawWaveForm:Far extern I_DrawWaveForm:Far
Extrn S_DefineSmallNumbers:Far extern S_DefineSmallNumbers:Far
Extrn S_SaveScreen:Far, S_RestoreScreen:Far extern S_SaveScreen:Far, S_RestoreScreen:Far
Extrn RestoreMouse:Far, RestoreMouseGraphics:Far extern RestoreMouse:Far, RestoreMouseGraphics:Far
Extrn D_ClearFileSpecifier:Far extern D_ClearFileSpecifier:Far
Extrn O1_ConfigureITList:Far extern O1_ConfigureITList:Far
Extrn O1_ViewSampleLibrary:Far extern O1_ViewSampleLibrary:Far
Extrn O1_ConfigurePaletteList:Far extern O1_ConfigurePaletteList:Far
Extrn O1_MIDIScreen:Far extern O1_MIDIScreen:Far
Extrn O1_TimerList:Far extern O1_TimerList:Far
Extrn I_MapEnvelope:Far extern I_MapEnvelope:Far
Extrn NewCharacterSet:Far extern NewCharacterSet:Far
Extrn S_GetDestination:Far extern S_GetDestination:Far
Extrn S_DefineHiASCII:Far extern S_DefineHiASCII:Far
IF MEMORYDEBUG %IF MEMORYDEBUG
Extrn O1_DebugList:Far extern O1_DebugList:Far
ENDIF %ENDIF
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Globals ウ ;ウ Globals ウ
@ -135,25 +133,25 @@ ENDIF
Global Glbl_SaveMode:Far Global Glbl_SaveMode:Far
Global Glbl_RestoreMode:Far Global Glbl_RestoreMode:Far
IF TIMERSCREEN %IF TIMERSCREEN
Global Glbl_TimerScreen:Far Global Glbl_TimerScreen:Far
ENDIF %ENDIF
Global CurrentMode:Byte Global CurrentMode:Byte
Public Glbl_F2_2 Public Glbl_F2_2
Public Glbl_F11_2 Public Glbl_F11_2
IF MEMORYDEBUG %IF MEMORYDEBUG
Global Glbl_Debug:Far Global Glbl_Debug:Far
ENDIF %ENDIF
Global Glbl_DriverScreen:Far Global Glbl_DriverScreen:Far
;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ ;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ
Segment Glbl BYTE Public 'Code' Segment Glbl BYTE Public 'Code'
Assume CS:Glbl, DS:Nothing ;Assume CS:Glbl, DS:Nothing
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Variables ウ ;ウ Variables ウ
@ -227,7 +225,7 @@ Glbl_F2_1:
Mov AX, Pattern Mov AX, Pattern
Mov DS, AX Mov DS, AX
Assume DS:Pattern ;Assume DS:Pattern
Mov AX, MaxRow Mov AX, MaxRow
Inc AX Inc AX
@ -240,13 +238,13 @@ Glbl_F2_1:
Mov AX, Pattern Mov AX, Pattern
Mov DS, AX Mov DS, AX
Assume DS:Pattern ;Assume DS:Pattern
Mov BX, NumberOfRows Mov BX, NumberOfRows
Dec BX Dec BX
Mov MaxRow, BX Mov MaxRow, BX
IF NETWORKENABLED %IF NETWORKENABLED
Call Network_GetSendQueue Call Network_GetSendQueue
JZ Glbl_F2_Network JZ Glbl_F2_Network
@ -258,14 +256,14 @@ IF NETWORKENABLED
Glbl_F2_Network: Glbl_F2_Network:
Call Network_FinishedSendQueue Call Network_FinishedSendQueue
ENDIF %ENDIF
Mov CS:CurrentMode, 2 Mov CS:CurrentMode, 2
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_F2 ;EndP Glbl_F2
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -281,7 +279,7 @@ Proc Glbl_F3 Far
Mov DX, Offset O1_SampleList Mov DX, Offset O1_SampleList
Ret Ret
EndP Glbl_F3 ;EndP Glbl_F3
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -292,7 +290,7 @@ Proc Glbl_F4 Far
Mov AX, Pattern Mov AX, Pattern
Mov DS, AX Mov DS, AX
Assume DS:Pattern ;Assume DS:Pattern
Mov BL, LastInstrument Mov BL, LastInstrument
And BL, BL And BL, BL
@ -303,7 +301,7 @@ Proc Glbl_F4 Far
Glbl_F4_1: Glbl_F4_1:
Mov AX, Inst Mov AX, Inst
Mov DS, AX Mov DS, AX
Assume DS:Inst ;Assume DS:Inst
Mov SampleNumber, BL Mov SampleNumber, BL
Proc Glbl_F4_2 Far Proc Glbl_F4_2 Far
@ -321,10 +319,10 @@ Proc Glbl_F4_2 Far
Ret Ret
EndP Glbl_F4_2 ;EndP Glbl_F4_2
EndP Glbl_F4 ;EndP Glbl_F4
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -370,7 +368,7 @@ Glbl_F5_2:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_F5 ;EndP Glbl_F5
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -385,7 +383,7 @@ Proc Glbl_F6 Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_F6 ;EndP Glbl_F6
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -401,7 +399,7 @@ Proc Glbl_LoadSample Far
Mov DX, Offset O1_LoadSampleList Mov DX, Offset O1_LoadSampleList
Ret Ret
EndP Glbl_LoadSample ;EndP Glbl_LoadSample
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -417,7 +415,7 @@ Proc Glbl_LoadInstrument Far
Mov DX, Offset O1_LoadInstrumentList Mov DX, Offset O1_LoadInstrumentList
Ret Ret
EndP Glbl_LoadInstrument ;EndP Glbl_LoadInstrument
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -431,7 +429,7 @@ Proc Glbl_Shift_F1 Far
Mov DX, Offset O1_MIDIScreen Mov DX, Offset O1_MIDIScreen
Ret Ret
EndP Glbl_Shift_F1 ;EndP Glbl_Shift_F1
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -447,7 +445,7 @@ Proc Glbl_Shift_F9 Far
Mov DX, Offset O1_MessageList Mov DX, Offset O1_MessageList
Ret Ret
EndP Glbl_Shift_F9 ;EndP Glbl_Shift_F9
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -457,7 +455,7 @@ Proc Glbl_Shift_F6 Far
Mov AX, Pattern Mov AX, Pattern
Mov DS, AX Mov DS, AX
Assume DS:Pattern ;Assume DS:Pattern
Mov AX, Order Mov AX, Order
Call Music_PlaySong Call Music_PlaySong
@ -465,8 +463,8 @@ Proc Glbl_Shift_F6 Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_Shift_F6 ;EndP Glbl_Shift_F6
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -477,7 +475,7 @@ Proc Glbl_F8 Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_F8 ;EndP Glbl_F8
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -498,7 +496,7 @@ Proc Glbl_F9 Far
Ret Ret
EndP Glbl_F9 ;EndP Glbl_F9
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -521,7 +519,7 @@ Proc Glbl_F10 Far
Ret Ret
EndP Glbl_F10 ;EndP Glbl_F10
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -549,7 +547,7 @@ Glbl_F11_1:
Mov DX, Offset O1_OrderVolumeList Mov DX, Offset O1_OrderVolumeList
Ret Ret
EndP Glbl_F11 ;EndP Glbl_F11
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -563,7 +561,7 @@ Proc Glbl_F12 Far
Mov DX, Offset O1_ConfigureITList Mov DX, Offset O1_ConfigureITList
Ret Ret
EndP Glbl_F12 ;EndP Glbl_F12
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -577,7 +575,7 @@ Proc Glbl_Ctrl_F1 Far
Mov DX, Offset O1_KeyboardList Mov DX, Offset O1_KeyboardList
Ret Ret
EndP Glbl_Ctrl_F1 ;EndP Glbl_Ctrl_F1
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -593,7 +591,7 @@ Proc Glbl_Ctrl_F3 Far
Mov DX, Offset O1_ViewSampleLibrary Mov DX, Offset O1_ViewSampleLibrary
Ret Ret
EndP Glbl_Ctrl_F3 ;EndP Glbl_Ctrl_F3
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -609,7 +607,7 @@ Proc Glbl_Ctrl_F4 Far
Mov DX, Offset O1_ViewInstrumentLibrary Mov DX, Offset O1_ViewInstrumentLibrary
Ret Ret
EndP Glbl_Ctrl_F4 ;EndP Glbl_Ctrl_F4
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -623,7 +621,7 @@ Proc Glbl_Ctrl_F5 Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_Ctrl_F5 ;EndP Glbl_Ctrl_F5
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -638,7 +636,7 @@ Proc Glbl_Ctrl_F12 Far
Ret Ret
EndP Glbl_Ctrl_F12 ;EndP Glbl_Ctrl_F12
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -647,7 +645,7 @@ Proc Glbl_GetHeaderMode Far
Push DS Push DS
Mov AX, Pattern Mov AX, Pattern
Mov DS, AX Mov DS, AX
Assume DS:Pattern ;Assume DS:Pattern
Mov AL, LastInstrument Mov AL, LastInstrument
Pop DS Pop DS
@ -673,7 +671,7 @@ Glbl_GetHeaderMode2:
Mov AX, Inst Mov AX, Inst
Mov DS, AX Mov DS, AX
Assume DS:Inst ;Assume DS:Inst
Pop AX Pop AX
Mov AL, SampleNumber Mov AL, SampleNumber
@ -681,8 +679,8 @@ Glbl_GetHeaderMode2:
Pop DS Pop DS
Ret Ret
EndP Glbl_GetHeaderMode ;EndP Glbl_GetHeaderMode
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -692,7 +690,7 @@ Proc Glbl_SetCurrentMode Far
Ret Ret
EndP Glbl_SetCurrentMode ;EndP Glbl_SetCurrentMode
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -702,7 +700,7 @@ Proc Glbl_GetCurrentMode Far ; Returns AL
Ret Ret
EndP Glbl_GetCurrentMode ;EndP Glbl_GetCurrentMode
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -714,7 +712,7 @@ Proc Glbl_Alt_F1 Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_Alt_F1 ;EndP Glbl_Alt_F1
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -726,7 +724,7 @@ Proc Glbl_Alt_F2 Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_Alt_F2 ;EndP Glbl_Alt_F2
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -738,7 +736,7 @@ Proc Glbl_Alt_F3 Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_Alt_F3 ;EndP Glbl_Alt_F3
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -750,7 +748,7 @@ Proc Glbl_Alt_F4 Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_Alt_F4 ;EndP Glbl_Alt_F4
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -762,7 +760,7 @@ Proc Glbl_Alt_F5 Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_Alt_F5 ;EndP Glbl_Alt_F5
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -774,7 +772,7 @@ Proc Glbl_Alt_F6 Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_Alt_F6 ;EndP Glbl_Alt_F6
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -786,7 +784,7 @@ Proc Glbl_Alt_F7 Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_Alt_F7 ;EndP Glbl_Alt_F7
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -798,7 +796,7 @@ Proc Glbl_Alt_F8 Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_Alt_F8 ;EndP Glbl_Alt_F8
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -814,7 +812,7 @@ Proc Glbl_LeftBrace Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_LeftBrace ;EndP Glbl_LeftBrace
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -830,7 +828,7 @@ Proc Glbl_RightBrace Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_RightBrace ;EndP Glbl_RightBrace
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -847,7 +845,7 @@ Proc Glbl_LeftSquareBracket Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_LeftSquareBracket ;EndP Glbl_LeftSquareBracket
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -864,7 +862,7 @@ Proc Glbl_RightSquareBracket Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Glbl_RightSquareBracket ;EndP Glbl_RightSquareBracket
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -889,7 +887,7 @@ Proc Glbl_SaveMode Far
Ret Ret
EndP Glbl_SaveMode ;EndP Glbl_SaveMode
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -909,11 +907,11 @@ Proc Glbl_RestoreMode Far
Ret Ret
EndP Glbl_RestoreMode ;EndP Glbl_RestoreMode
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
IF MEMORYDEBUG %IF MEMORYDEBUG
Proc Glbl_Debug Far Proc Glbl_Debug Far
@ -925,9 +923,9 @@ Proc Glbl_Debug Far
Mov DX, Offset O1_DebugList Mov DX, Offset O1_DebugList
Ret Ret
EndP Glbl_Debug ;EndP Glbl_Debug
ENDIF %ENDIF
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -938,14 +936,14 @@ Proc Glbl_SampleToInstrument
Call Music_GetSongSegment Call Music_GetSongSegment
Mov DS, AX Mov DS, AX
Assume DS:Nothing ;Assume DS:Nothing
Test Byte Ptr [DS:2Ch], 4 Test Byte Ptr [DS:2Ch], 4
JZ Glbl_SampleToInstrument1 JZ Glbl_SampleToInstrument1
Mov AX, Pattern Mov AX, Pattern
Mov ES, AX Mov ES, AX
Assume ES:Pattern ;Assume ES:Pattern
Mov AH, ES:LastInstrument Mov AH, ES:LastInstrument
Mov BX, [DS:64712] ; Offset of first instrument Mov BX, [DS:64712] ; Offset of first instrument
@ -982,12 +980,12 @@ Glbl_SampleToInstrument3:
Glbl_SampleToInstrument1: Glbl_SampleToInstrument1:
Ret Ret
EndP Glbl_SampleToInstrument ;EndP Glbl_SampleToInstrument
Assume ES:Nothing ;Assume ES:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
IF TIMERSCREEN %IF TIMERSCREEN
Proc Glbl_TimerScreen Far Proc Glbl_TimerScreen Far
@ -999,9 +997,9 @@ Proc Glbl_TimerScreen Far
Mov DX, Offset O1_TimerList Mov DX, Offset O1_TimerList
Ret Ret
EndP Glbl_TimerScreen ;EndP Glbl_TimerScreen
ENDIF %ENDIF
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1015,7 +1013,7 @@ Proc Glbl_DriverScreen Far
Glbl_DriverScreen1: Glbl_DriverScreen1:
Ret Ret
EndP Glbl_DriverScreen ;EndP Glbl_DriverScreen
;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ ;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ

1565
it_h.s

File diff suppressed because it is too large Load Diff

913
it_i.s

File diff suppressed because it is too large Load Diff

93
it_k.s
View File

@ -2,28 +2,25 @@
;ウ Keyboard Module ウ ;ウ Keyboard Module ウ
;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル ;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル
Jumps %include "switch.inc"
.386
include switch.inc
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Externals ウ ;ウ Externals ウ
;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル ;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル
Extrn D_GotoStartingDirectory:Far extern D_GotoStartingDirectory:Far
Extrn E_UnInitEMS:Far extern E_UnInitEMS:Far
Extrn S_GetDestination:Far extern S_GetDestination:Far
Extrn Music_Stop:Far extern Music_Stop:Far
Extrn Music_KBPlaySong:Far extern Music_KBPlaySong:Far
Extrn Music_IncreaseVolume:Far extern Music_IncreaseVolume:Far
Extrn Music_DecreaseVolume:Far extern Music_DecreaseVolume:Far
Extrn S_DrawString:Far extern S_DrawString:Far
Extrn CrashRecovery:Far extern CrashRecovery:Far
Extrn IsStartupKeyList:Far extern IsStartupKeyList:Far
Extrn GetStartupKeyList:Far extern GetStartupKeyList:Far
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Globals ウ ;ウ Globals ウ
@ -54,10 +51,10 @@ include switch.inc
;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ ;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ
Segment KeyBoard BYTE Public 'Code' USE16 Segment KeyBoard BYTE Public 'Code' USE16
Assume CS:KeyBoard, DS:KeyBoard ;Assume CS:KeyBoard, DS:KeyBoard
CREATENEWLOGFILE EQU 0 CREATENEWLOGFILE EQU 0
include debug.inc %include "debug.inc"
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Variables ウ ;ウ Variables ウ
@ -744,7 +741,7 @@ K_KBHandler2:
Pop AX Pop AX
IRet IRet
EndP K_KBHandler ;EndP K_KBHandler
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -813,7 +810,7 @@ K_DOSKBHandler6:
Pop AX Pop AX
IRet IRet
EndP K_DOSKBHandler ;EndP K_DOSKBHandler
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -848,7 +845,7 @@ K_SetKeyBoardLights3:
Ret Ret
EndP K_SetKeyBoardLights ;EndP K_SetKeyBoardLights
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -933,7 +930,7 @@ K_InitKeyBoard3: ; Chained to from K_UnInstallDOS
Ret Ret
EndP K_InitKeyBoard ;EndP K_InitKeyBoard
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -987,7 +984,7 @@ K_UnInitKeyBoard1:
Ret Ret
EndP K_UnInitKeyBoard ;EndP K_UnInitKeyBoard
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1017,7 +1014,7 @@ Proc K_InstallDOSHandler Far
Jmp K_UnInitKeyBoard3 Jmp K_UnInitKeyBoard3
EndP K_InstallDOSHandler ;EndP K_InstallDOSHandler
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1045,7 +1042,7 @@ Proc K_UnInstallDOSHandler Far
Jmp K_InitKeyBoard3 Jmp K_InitKeyBoard3
EndP K_UnInstallDOSHandler ;EndP K_UnInstallDOSHandler
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1057,7 +1054,7 @@ Proc K_GetNextKeyByte
Ret Ret
EndP K_GetNextKeyByte ;EndP K_GetNextKeyByte
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1101,7 +1098,7 @@ K_IsKeyWaiting1:
Pop DS Pop DS
Ret Ret
EndP K_IsKeyWaiting ;EndP K_IsKeyWaiting
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1272,7 +1269,7 @@ K_TranslateAltRelease:
K_TranslateKeyPress: K_TranslateKeyPress:
LDS SI, TranslationTable LDS SI, TranslationTable
Assume DS:Nothing ;Assume DS:Nothing
K_TranslateKey1: K_TranslateKey1:
LodsB LodsB
@ -1438,7 +1435,7 @@ K_GetKey20:
Ret Ret
EndP K_GetKey ;EndP K_GetKey
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1457,7 +1454,7 @@ K_ClearKeyBoardQueue2:
Pop AX Pop AX
Ret Ret
EndP K_ClearKeyBoardQueue ;EndP K_ClearKeyBoardQueue
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1469,7 +1466,7 @@ Proc K_IsAnyKeyDown Far ; Returns AL = 1 if key is down.
Push CS Push CS
Pop DS Pop DS
Assume DS:Keyboard ;Assume DS:Keyboard
Mov SI, Offset KeyBoardTable Mov SI, Offset KeyBoardTable
Mov CX, 256 Mov CX, 256
@ -1490,7 +1487,7 @@ K_IsAnyKeyDown2:
Ret Ret
EndP K_IsAnyKeyDown ;EndP K_IsAnyKeyDown
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1499,7 +1496,7 @@ Proc K_IsKeyDown Far ; BX = key to test
Cmp [CS:KeyboardTable+BX], 0 Cmp [CS:KeyboardTable+BX], 0
Ret Ret
EndP K_IsKeyDown ;EndP K_IsKeyDown
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1515,7 +1512,7 @@ Proc K_ResetKeyboardTables Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP K_ResetKeyboardTables ;EndP K_ResetKeyboardTables
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1526,7 +1523,7 @@ Proc K_DrawTables Far
Push CS Push CS
Pop DS Pop DS
Assume DS:KeyBoard ;Assume DS:KeyBoard
Mov SI, Offset KeyboardBuffer Mov SI, Offset KeyboardBuffer
Mov CX, 2004h ; CH = row count, CL = ShR Mov CX, 2004h ; CH = row count, CL = ShR
@ -1616,8 +1613,8 @@ K_DrawTable7:
Xor AX, AX Xor AX, AX
Ret Ret
EndP K_DrawTables ;EndP K_DrawTables
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1625,7 +1622,7 @@ Proc K_ShowMIDIInput Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Keyboard ;Assume DS:Keyboard
; Now to shove the MIDI input info. ; Now to shove the MIDI input info.
Xor AX, AX Xor AX, AX
@ -1646,8 +1643,8 @@ Proc K_ShowMIDIInput Far
Xor AX, AX Xor AX, AX
Ret Ret
EndP K_ShowMIDIInput ;EndP K_ShowMIDIInput
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1657,7 +1654,7 @@ Proc K_InstallKeyboardType Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Keyboard ;Assume DS:Keyboard
Mov AX, 3D00h Mov AX, 3D00h
Mov DX, Offset KeyboardFile Mov DX, Offset KeyboardFile
@ -1715,7 +1712,7 @@ K_InstallKeyboardType1:
K_InstallKeyboardType2: K_InstallKeyboardType2:
Ret Ret
EndP K_InstallKeyboardType ;EndP K_InstallKeyboardType
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1723,7 +1720,7 @@ Proc K_RemoveKeyboardType Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Keyboard ;Assume DS:Keyboard
Mov AX, TranslationTableSegment Mov AX, TranslationTableSegment
Mov BX, CS Mov BX, CS
@ -1737,7 +1734,7 @@ Proc K_RemoveKeyboardType Far
K_RemoveKeyboardType1: K_RemoveKeyboardType1:
Ret Ret
EndP K_RemoveKeyboardType ;EndP K_RemoveKeyboardType
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1749,7 +1746,7 @@ Proc K_SetScrollLock Far
Call K_SetKeyboardLights Call K_SetKeyboardLights
Ret Ret
EndP K_SetScrollLock ;EndP K_SetScrollLock
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1759,7 +1756,7 @@ Proc MIDIBufferEmpty Far ; Returns carry set if input OK.
Cmp [CS:MIDIDataInput], 2 Cmp [CS:MIDIDataInput], 2
Ret Ret
EndP MIDIBufferEmpty ;EndP MIDIBufferEmpty
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1769,7 +1766,7 @@ Proc MIDISend Far ; Given AL = data byte.
Push CS Push CS
Pop DS Pop DS
Assume DS:Keyboard ;Assume DS:Keyboard
Test AL, AL ; Status byte? Test AL, AL ; Status byte?
JNS MIDISend1 JNS MIDISend1
@ -1800,8 +1797,8 @@ MIDISendEnd:
Pop DS Pop DS
Ret Ret
EndP MIDISend ;EndP MIDISend
Assume DS:Nothing ;Assume DS:Nothing
;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ ;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ

103
it_l.s
View File

@ -2,39 +2,36 @@
;ウ Info Line Module - Playing info updates / other messages ウ ;ウ Info Line Module - Playing info updates / other messages ウ
;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル ;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル
Jumps %include "switch.inc"
.386
include switch.inc
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Externals ウ ;ウ Externals ウ
;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル ;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル
Segment Glbl BYTE Public 'Code' Segment Glbl BYTE Public 'Code'
Extrn CurrentMode:Byte extern CurrentMode:Byte
EndS EndS
Extrn I_ShowSamplePlay:Far extern I_ShowSamplePlay:Far
Extrn I_ShowInstrumentPlay:Far extern I_ShowInstrumentPlay:Far
Extrn S_UpdateScreen:Far extern S_UpdateScreen:Far
Extrn S_DrawString:Far extern S_DrawString:Far
Extrn S_SetDirectMode:Far extern S_SetDirectMode:Far
Extrn S_GetDestination:Far extern S_GetDestination:Far
Extrn Music_GetPlayMode:Far extern Music_GetPlayMode:Far
Extrn Music_Poll:Far extern Music_Poll:Far
Extrn Music_GetSlaveChannelInformationTable:Far extern Music_GetSlaveChannelInformationTable:Far
IF NETWORKENABLED %IF NETWORKENABLED
Extrn Network_Poll:Far extern Network_Poll:Far
ENDIF %ENDIF
Extrn PE_ShowOrder:Far extern PE_ShowOrder:Far
Extrn PE_FillSpeedTempo:Far extern PE_FillSpeedTempo:Far
Extrn PE_GetMaxOrder:Far extern PE_GetMaxOrder:Far
Extrn Glbl_TutorialHandler:Far extern Glbl_TutorialHandler:Far
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Globals ウ ;ウ Globals ウ
@ -54,10 +51,10 @@ ENDIF
;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ ;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ
Segment InfoLine DWORD Public 'Code' USE16 Segment InfoLine DWORD Public 'Code' USE16
Assume CS:InfoLine, DS:InfoLine ;Assume CS:InfoLine, DS:InfoLine
CREATENEWLOGFILE EQU 0 CREATENEWLOGFILE EQU 0
include debug.inc %include "debug.inc"
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Variables ウ ;ウ Variables ウ
@ -101,7 +98,7 @@ Proc TimerInterruptHandler
Inc CS:TimerCounter Inc CS:TimerCounter
Jmp [CS:OldTimerHandler] Jmp [CS:OldTimerHandler]
EndP TimerInterruptHandler ;EndP TimerInterruptHandler
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -126,7 +123,7 @@ Proc InitTimerHandler Far
Pop DS Pop DS
Ret Ret
EndP InitTimerHandler ;EndP InitTimerHandler
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -145,7 +142,7 @@ Proc UninitTimerHandler Far
Pop DS Pop DS
Ret Ret
EndP UninitTimerHandler ;EndP UninitTimerHandler
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -166,7 +163,7 @@ UpdateInfoLineEOL2:
Pop ES Pop ES
Ret Ret
EndP FillToEOL ;EndP FillToEOL
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -177,7 +174,7 @@ Proc UpdateInfoLine Far
Push Glbl Push Glbl
Pop DS Pop DS
Assume DS:Glbl ;Assume DS:Glbl
Cmp CurrentMode, 200 Cmp CurrentMode, 200
JAE UpdateInfoLineEnd2 JAE UpdateInfoLineEnd2
@ -322,8 +319,8 @@ UpdateInfoLine7:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP UpdateInfoLine ;EndP UpdateInfoLine
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -331,33 +328,33 @@ Proc IdleUpdateInfoLine Far
Call Music_Poll Call Music_Poll
IF TUTORIAL %IF TUTORIAL
ELSE %ELSE
Mov AL, 1 Mov AL, 1
Call S_SetDirectMode Call S_SetDirectMode
ENDIF %ENDIF
Call UpdateInfoLine Call UpdateInfoLine
IF TUTORIAL %IF TUTORIAL
Call Glbl_TutorialHandler Call Glbl_TutorialHandler
ENDIF %ENDIF
IF TUTORIAL %IF TUTORIAL
Call S_UpdateScreen Call S_UpdateScreen
ELSE %ELSE
Mov AL, 0 Mov AL, 0
Call S_SetDirectMode Call S_SetDirectMode
ENDIF %ENDIF
IF NETWORKENABLED %IF NETWORKENABLED
Jmp Network_Poll Jmp Network_Poll
ELSE %ELSE
Xor AX, AX Xor AX, AX
Ret Ret
ENDIF %ENDIF
EndP IdleUpdateInfoLine ;EndP IdleUpdateInfoLine
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -367,7 +364,7 @@ Proc ClearInfoLine Far
Ret Ret
EndP ClearInfoLine ;EndP ClearInfoLine
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -382,7 +379,7 @@ SetInfoLineChain:
Ret Ret
EndP SetInfoLine ;EndP SetInfoLine
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -391,7 +388,7 @@ Proc SetInfoLine2 Far ; DS:SI points to msg.
Mov CS:InfoLineDelay, BX Mov CS:InfoLineDelay, BX
Jmp SetInfoLineChain Jmp SetInfoLineChain
EndP SetInfoLine2 ;EndP SetInfoLine2
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -399,7 +396,7 @@ Proc UpdatePointers ; BX = row, CX = pattern
Mov SI, Glbl Mov SI, Glbl
Mov DS, SI Mov DS, SI
Assume DS:Glbl ;Assume DS:Glbl
Mov AH, CurrentMode Mov AH, CurrentMode
@ -459,8 +456,8 @@ UpdatePointers5:
UpdatePointersEnd: UpdatePointersEnd:
Ret Ret
EndP UpdatePointers ;EndP UpdatePointers
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -471,7 +468,7 @@ Proc ShowTime
Push CS Push CS
Pop DS Pop DS
Assume DS:InfoLine ;Assume DS:InfoLine
Cmp AX, 2 Cmp AX, 2
Mov EAX, [TimerCounter] Mov EAX, [TimerCounter]
@ -525,8 +522,8 @@ ShowTime2:
Ret Ret
EndP ShowTime ;EndP ShowTime
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -539,7 +536,7 @@ Proc StartClock Far
Ret Ret
EndP StartClock ;EndP StartClock
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -548,7 +545,7 @@ Proc GetTimerCounter Far
Mov EAX, [CS:TimerCounter] Mov EAX, [CS:TimerCounter]
Ret Ret
EndP GetTimerCounter ;EndP GetTimerCounter
;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ ;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ

133
it_m.s
View File

@ -2,10 +2,7 @@
;ウ Main Module ウ ;ウ Main Module ウ
;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル ;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル
Jumps %include "switch.inc"
.386
include switch.inc
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Externals ウ ;ウ Externals ウ
@ -15,65 +12,65 @@ Segment Object1 BYTE Public 'Data' USE16
EndS EndS
Extrn F_DrawStringInput:Far extern F_DrawStringInput:Far
Extrn F_PreStringInput:Far extern F_PreStringInput:Far
Extrn F_PostStringInput:Far extern F_PostStringInput:Far
Extrn F_Nothing:Far extern F_Nothing:Far
Extrn F_DrawBoxObject:Far extern F_DrawBoxObject:Far
Extrn F_DrawTextObject:Far extern F_DrawTextObject:Far
Extrn F_PostExitObject:Far extern F_PostExitObject:Far
Extrn F_SetDirectMode:Far extern F_SetDirectMode:Far
Extrn F_CharacterDefinitions:Far extern F_CharacterDefinitions:Far
Extrn F_DrawButtonObject:Far extern F_DrawButtonObject:Far
Extrn F_PreButtonObject:Far extern F_PreButtonObject:Far
Extrn F_PostButtonObject:Far extern F_PostButtonObject:Far
Extrn F_CallFarFunction:Far extern F_CallFarFunction:Far
Extrn F_DrawThumbBar:Far extern F_DrawThumbBar:Far
Extrn F_DrawScalableThumbBar:Far extern F_DrawScalableThumbBar:Far
Extrn F_PreThumbBar:Far extern F_PreThumbBar:Far
Extrn F_PreScalableThumbBar:Far extern F_PreScalableThumbBar:Far
Extrn F_PostThumbBar:Far extern F_PostThumbBar:Far
Extrn F_PostScalableThumbBar:Far extern F_PostScalableThumbBar:Far
Extrn F_DrawInfoLine:Far extern F_DrawInfoLine:Far
Extrn F_CallFarPreFunction:Far extern F_CallFarPreFunction:Far
Extrn F_CallFarPostFunction:Far extern F_CallFarPostFunction:Far
Extrn F_DrawToggle:Far extern F_DrawToggle:Far
Extrn F_PreToggle:Far extern F_PreToggle:Far
Extrn F_PostToggle:Far extern F_PostToggle:Far
Extrn F_Draw5Num:Far extern F_Draw5Num:Far
Extrn F_Pre5Num:Far extern F_Pre5Num:Far
Extrn F_Post5Num:Far extern F_Post5Num:Far
Extrn F_Draw3Num:Far extern F_Draw3Num:Far
Extrn F_Pre3Num:Far extern F_Pre3Num:Far
Extrn F_Post3Num:Far extern F_Post3Num:Far
Extrn Glbl_TutorialHandler:Far extern Glbl_TutorialHandler:Far
Extrn H_SetHelpContext:Far extern H_SetHelpContext:Far
Extrn K_GetKey:Far extern K_GetKey:Far
Extrn K_InitKeyBoard:Far extern K_InitKeyBoard:Far
Extrn K_UnInitKeyBoard:Far extern K_UnInitKeyBoard:Far
Extrn K_IsKeyWaiting:Far extern K_IsKeyWaiting:Far
Extrn K_IsAnyKeyDown:Far extern K_IsAnyKeyDown:Far
Extrn PE_DrawOrderList:Far extern PE_DrawOrderList:Far
Extrn PE_PreOrderList:Far extern PE_PreOrderList:Far
Extrn PE_PostOrderList:Far extern PE_PostOrderList:Far
Extrn S_Set80x25Mode:Far extern S_Set80x25Mode:Far
Extrn S_SetPalette:Far extern S_SetPalette:Far
Extrn S_RedefineCharacters:Far extern S_RedefineCharacters:Far
Extrn S_DrawBox:Far extern S_DrawBox:Far
Extrn S_ClearScreen:Far extern S_ClearScreen:Far
Extrn S_UpdateScreen:Far extern S_UpdateScreen:Far
; Extrn MouseDirectEnable:Far, MouseDirectDisable:Far ; extern MouseDirectEnable:Far, MouseDirectDisable:Far
Extrn MouseSaveEvents:Far, MouseRestoreEvents:Far extern MouseSaveEvents:Far, MouseRestoreEvents:Far
Extrn MouseInput:Far, MouseClearEvents:Far extern MouseInput:Far, MouseClearEvents:Far
Extrn GetKeyboardLock:Far, MIDIBufferEmpty:Far extern GetKeyboardLock:Far, MIDIBufferEmpty:Far
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Globals ウ ;ウ Globals ウ
@ -88,7 +85,7 @@ EndS
;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ ;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ
Segment Main DWORD Public 'Code' USE16 Segment Main DWORD Public 'Code' USE16
Assume CS:Main, DS:Nothing ;Assume CS:Main, DS:Nothing
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Variables ウ ;ウ Variables ウ
@ -165,7 +162,7 @@ ReleaseTimeSlice DB 0
;ウ Functions ウ ;ウ Functions ウ
;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル ;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル
Proc M_FunctionDivider Far ; Given DS:SI points to list M_FunctionDivider:;:;Far ; Given DS:SI points to list
; Carry set if none found ; Carry set if none found
Push BX Push BX
@ -264,11 +261,11 @@ M_FunctionDivider4: ;
Ret Ret
EndP M_FunctionDivider ;EndP M_FunctionDivider
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc M_FunctionHandler Far M_FunctionHandler:;:;Far
ARG ObjectList:DWord ARG ObjectList:DWord
Push BP Push BP
@ -333,9 +330,9 @@ M_FunctionHandler20:
M_FunctionHandler21: M_FunctionHandler21:
IF TUTORIAL %IF TUTORIAL
Call Glbl_TutorialHandler Call Glbl_TutorialHandler
ENDIF %ENDIF
Call S_UpdateScreen Call S_UpdateScreen
@ -627,15 +624,15 @@ M_FunctionHandler15:
Add Word Ptr CS:GlobalKeyList, 7 Add Word Ptr CS:GlobalKeyList, 7
Jmp M_FunctionHandler10 Jmp M_FunctionHandler10
EndP M_FunctionHandler ;EndP M_FunctionHandler
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc M_Object1ListDefault Far ; Reqs: DI = offset of list M_Object1ListDefault:;:;Far ; Reqs: DI = offset of list
Mov CX, 0FFFFh Mov CX, 0FFFFh
Proc M_Object1List Far ; Reqs.. CX = inital object. M_Object1List:;:;Far ; Reqs.. CX = inital object.
; Reqs.. DI = offset of list ; Reqs.. DI = offset of list
Mov AX, Object1 Mov AX, Object1
@ -652,13 +649,9 @@ M_Object1List1:
Ret Ret
EndP M_Object1List ;EndP M_Object1List
EndP M_Object1ListDefault ;EndP M_Object1ListDefault
;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ ;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ
EndS EndS
;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
End

View File

@ -4,17 +4,17 @@
.386 .386
include switch.inc %include "switch.inc"
;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
;³ Externals ³ ;³ Externals ³
;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Extrn E_AllocateEMS:Far extern E_AllocateEMS:Far
Extrn E_GetEMSPageFrame:Far extern E_GetEMSPageFrame:Far
Extrn E_ReleaseEMS:Far extern E_ReleaseEMS:Far
Extrn E_MapEMSMemory:Far extern E_MapEMSMemory:Far
Extrn Music_Stop:Far extern Music_Stop:Far
;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
;³ Globals ³ ;³ Globals ³
@ -26,10 +26,10 @@ include switch.inc
;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
Segment MMTSR PARA Public USE16 'Code' Segment MMTSR PARA Public USE16 'Code'
Assume CS:MMTSR, DS:MMTSR ;Assume CS:MMTSR, DS:MMTSR
CREATENEWLOGFILE EQU 0 CREATENEWLOGFILE EQU 0
include debug.inc %include "debug.inc"
;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
;³ Variables ³ ;³ Variables ³
@ -117,7 +117,7 @@ Proc MMTSR_InstallMMTSR Far
@error0: ; print message at offset DS:DX onto screen @error0: ; print message at offset DS:DX onto screen
Ret Ret
EndP MMTSR_InstallMMTSR ;EndP MMTSR_InstallMMTSR
;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
@ -140,7 +140,7 @@ Proc MMTSR_UninstallMMTSR Far
MMTSR_UninstallMMTSR1: MMTSR_UninstallMMTSR1:
Ret Ret
EndP MMTSR_UninstallMMTSR ;EndP MMTSR_UninstallMMTSR
;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ

View File

@ -2,9 +2,6 @@
;³ Mouse Module ³ ;³ Mouse Module ³
;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Jumps
.386P
; MouseRecord Structure... ; MouseRecord Structure...
; Area DW Left, Top, Right, Bottom ; Area DW Left, Top, Right, Bottom
; Condition DB ? ; Condition DB ?
@ -31,15 +28,15 @@
; On - Cursor outside area ; On - Cursor outside area
; Bit 4: Always call, ignore area ; Bit 4: Always call, ignore area
include switch.inc %include "switch.inc"
;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
;³ Externals ³ ;³ Externals ³
;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Extrn S_SetSequencer:Far, S_ResetSequencer:Far extern S_SetSequencer:Far, S_ResetSequencer:Far
Extrn S_SetDirectMode:Far extern S_SetDirectMode:Far
Extrn S_GetDestination:Far extern S_GetDestination:Far
;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
;³ Globals ³ ;³ Globals ³
@ -63,10 +60,10 @@ include switch.inc
;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
Segment Mouse PARA Public 'Code' USE16 Segment Mouse PARA Public 'Code' USE16
Assume CS:Mouse, DS:Nothing ;Assume CS:Mouse, DS:Nothing
CREATENEWLOGFILE EQU 0 CREATENEWLOGFILE EQU 0
include debug.inc %include "debug.inc"
; Assumes 80x50 display (512 characters, 8x8 pixels per char.) ; Assumes 80x50 display (512 characters, 8x8 pixels per char.)
@ -199,7 +196,7 @@ Proc RestoreMouse Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Mouse ;Assume DS:Mouse
Cmp MouseDisplay, 0 Cmp MouseDisplay, 0
JE RestoreMouse1 JE RestoreMouse1
@ -209,14 +206,14 @@ Proc RestoreMouse Far
RestoreMouse1: RestoreMouse1:
Ret Ret
EndP RestoreMouse ;EndP RestoreMouse
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Proc RemoveMouseCursor ; Given ES=cursor to remove Proc RemoveMouseCursor ; Given ES=cursor to remove
Assume DS:Mouse ;Assume DS:Mouse
Mov BX, Offset OldCharacterData Mov BX, Offset OldCharacterData
Mov DI, MouseCursorOffset Mov DI, MouseCursorOffset
@ -270,8 +267,8 @@ RemoveMouseCursor8:
RemoveMouseCursor3: RemoveMouseCursor3:
Ret Ret
EndP RemoveMouseCursor ;EndP RemoveMouseCursor
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -279,7 +276,7 @@ Proc RestoreMouseGraphics Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Mouse ;Assume DS:Mouse
Mov AL, RestoreGraphicsRequired Mov AL, RestoreGraphicsRequired
Cmp MouseDisplay, 0 Cmp MouseDisplay, 0
@ -343,13 +340,13 @@ RestoreMouseGraphics3:
RestoreMouseGraphics4: RestoreMouseGraphics4:
Ret Ret
EndP RestoreMouseGraphics ;EndP RestoreMouseGraphics
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Proc SaveMouseCursor Proc SaveMouseCursor
Assume DS:Mouse ;Assume DS:Mouse
Push CS ; *** Push CS ; ***
Pop DS ; *** Pop DS ; ***
@ -482,13 +479,13 @@ SaveMouseCursor7:
SaveMouseCursor9: SaveMouseCursor9:
Ret Ret
EndP SaveMouseCursor ;EndP SaveMouseCursor
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Proc GenerateMouseCursor Proc GenerateMouseCursor
Assume DS:Mouse ;Assume DS:Mouse
; Push CS ; *** ; Push CS ; ***
; Pop DS ; *** ; Pop DS ; ***
@ -628,13 +625,13 @@ GenerateMouseCharacter6:
Ret Ret
EndP GenerateMouseCursor ;EndP GenerateMouseCursor
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Proc PlotMouseCursor Proc PlotMouseCursor
Assume DS:Mouse ;Assume DS:Mouse
Push CS ; *** Push CS ; ***
Pop DS ; *** Pop DS ; ***
@ -675,8 +672,8 @@ PlotMouseCursor3:
PlotMouseCursor4: PlotMouseCursor4:
Ret Ret
EndP PlotMouseCursor ;EndP PlotMouseCursor
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -692,7 +689,7 @@ Proc DrawMouseCursor ; Given ES to write to.
Ret Ret
EndP DrawMouseCursor ;EndP DrawMouseCursor
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -700,7 +697,7 @@ Proc DrawMouse Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Mouse ;Assume DS:Mouse
Cmp MouseDisplay, 0 Cmp MouseDisplay, 0
JE DrawMouse1 JE DrawMouse1
@ -710,8 +707,8 @@ Proc DrawMouse Far
DrawMouse1: DrawMouse1:
Ret Ret
EndP DrawMouse ;EndP DrawMouse
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -728,7 +725,7 @@ Proc MouseInterruptHandler Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Mouse ;Assume DS:Mouse
Mov NewMouseX, CX Mov NewMouseX, CX
Mov NewMouseY, DX Mov NewMouseY, DX
@ -891,8 +888,8 @@ MouseInterruptHandler1:
Ret Ret
EndP MouseInterruptHandler ;EndP MouseInterruptHandler
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -951,7 +948,7 @@ InitMouse1:
Ret Ret
EndP InitMouse ;EndP InitMouse
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -962,7 +959,7 @@ Proc UnInitMouse Far
Ret Ret
EndP UnInitMouse ;EndP UnInitMouse
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -971,7 +968,7 @@ Proc MouseSecondSetEnable Far
Mov CS:OverwriteSecondSet, 0 Mov CS:OverwriteSecondSet, 0
Ret Ret
EndP MouseSecondSetEnable ;EndP MouseSecondSetEnable
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -980,7 +977,7 @@ Proc MouseSecondSetDisable Far
Mov CS:OverwriteSecondSet, 1 Mov CS:OverwriteSecondSet, 1
Ret Ret
EndP MouseSecondSetDisable ;EndP MouseSecondSetDisable
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -988,7 +985,7 @@ Proc MouseToggle Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Mouse ;Assume DS:Mouse
Cmp MouseAvailable, 0 Cmp MouseAvailable, 0
JE MouseToggle1 JE MouseToggle1
@ -1008,8 +1005,8 @@ MouseToggle1:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP MouseToggle ;EndP MouseToggle
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1062,7 +1059,7 @@ MouseSetXY1:
Ret Ret
EndP MouseSetXY ;EndP MouseSetXY
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1073,7 +1070,7 @@ Proc MouseSaveEvents Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Mouse ;Assume DS:Mouse
Cmp MouseAvailable, 0 Cmp MouseAvailable, 0
JE MouseSaveEvents1 JE MouseSaveEvents1
@ -1094,8 +1091,8 @@ MouseSaveEvents1:
Ret Ret
EndP MouseSaveEvents ;EndP MouseSaveEvents
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1106,7 +1103,7 @@ Proc MouseRestoreEvents Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Mouse ;Assume DS:Mouse
Cmp MouseAvailable, 0 Cmp MouseAvailable, 0
JE MouseRestoreEvents1 JE MouseRestoreEvents1
@ -1127,8 +1124,8 @@ MouseRestoreEvents1:
Ret Ret
EndP MouseRestoreEvents ;EndP MouseRestoreEvents
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1137,7 +1134,7 @@ Proc SetKeyboardLock Far ; AL = lock state
Mov CS:LockKeyBoard, AL Mov CS:LockKeyBoard, AL
Ret Ret
EndP SetKeyboardLock ;EndP SetKeyboardLock
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1146,7 +1143,7 @@ Proc GetKeyboardLock Far
Mov AL, CS:LockKeyBoard Mov AL, CS:LockKeyBoard
Ret Ret
EndP GetKeyboardLock ;EndP GetKeyboardLock
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1156,7 +1153,7 @@ Proc AddMouseQueue Far ; AX, CX, DX
Push CS Push CS
Pop DS Pop DS
Assume DS:Mouse ;Assume DS:Mouse
Mov BH, QUEUEELEMENTSIZE Mov BH, QUEUEELEMENTSIZE
Mov BL, MouseQueueEnd Mov BL, MouseQueueEnd
@ -1175,8 +1172,8 @@ AddMouseQueue1:
Pop DS Pop DS
Ret Ret
EndP AddMouseQueue ;EndP AddMouseQueue
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1186,7 +1183,7 @@ Proc MouseInput Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Mouse ;Assume DS:Mouse
ClI ClI
@ -1226,8 +1223,8 @@ MouseInput3:
PopF PopF
Ret Ret
EndP MouseInput ;EndP MouseInput
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1262,7 +1259,7 @@ MouseAddEvent1:
PopF PopF
Ret Ret
EndP MouseAddEvent ;EndP MouseAddEvent
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1272,7 +1269,7 @@ Proc MouseClearEvents Far
Mov CS:MouseEventEnd, AX Mov CS:MouseEventEnd, AX
Ret Ret
EndP MouseClearEvents ;EndP MouseClearEvents
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1282,7 +1279,7 @@ Proc MouseRemoveEvents Far ; AX = number to remove
Sub CS:MouseEventEnd, AX Sub CS:MouseEventEnd, AX
Ret Ret
EndP MouseRemoveEvents ;EndP MouseRemoveEvents
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1291,7 +1288,7 @@ Proc MouseGetStatus Far
Mov AL, CS:MouseStatus Mov AL, CS:MouseStatus
Ret Ret
EndP MouseGetStatus ;EndP MouseGetStatus
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1300,7 +1297,7 @@ Proc NewCharacterSet Far
Or CS:RestoreGraphicsRequired, 2 Or CS:RestoreGraphicsRequired, 2
Ret Ret
EndP NewCharacterSet ;EndP NewCharacterSet
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1309,7 +1306,7 @@ Proc MouseUpdateEnable Far
Mov CS:UpdateScreen, 1 Mov CS:UpdateScreen, 1
Ret Ret
EndP MouseUpdateEnable ;EndP MouseUpdateEnable
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1318,7 +1315,7 @@ Proc MouseUpdateDisable Far
Mov CS:UpdateScreen, 0 Mov CS:UpdateScreen, 0
Ret Ret
EndP MouseUpdateDisable ;EndP MouseUpdateDisable
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1329,7 +1326,7 @@ Proc SetMouseCursorType Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Mouse ;Assume DS:Mouse
ClI ClI
Mov MouseCursorType, BX Mov MouseCursorType, BX
@ -1376,7 +1373,7 @@ SetMouseCursorType4:
PopF PopF
Ret Ret
EndP SetMouseCursorType ;EndP SetMouseCursorType
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1385,7 +1382,7 @@ Proc CmdLineDisableMouse Far
Mov Word Ptr CS:MouseDisplay, 0 Mov Word Ptr CS:MouseDisplay, 0
Ret Ret
EndP CmdLineDisableMouse ;EndP CmdLineDisableMouse
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1399,7 +1396,7 @@ Proc ForceMouseRestore Far
StI StI
Jmp MouseUpdateEnable Jmp MouseUpdateEnable
EndP ForceMouseRestore ;EndP ForceMouseRestore
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

150
it_msg.s
View File

@ -9,11 +9,11 @@
;ウ Externals ウ ;ウ Externals ウ
;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル ;タトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトル
Extrn M_FunctionDivider:Far extern M_FunctionDivider:Far
Extrn M_Object1List:Far extern M_Object1List:Far
Extrn S_GetDestination:Far extern S_GetDestination:Far
Extrn O1_LongMessageList:Far extern O1_LongMessageList:Far
Extrn O1_ConfirmClearMessage:Far extern O1_ConfirmClearMessage:Far
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Globals ウ ;ウ Globals ウ
@ -29,7 +29,7 @@
;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ ;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ
Segment Message BYTE Public 'Code' USE16 Segment Message BYTE Public 'Code' USE16
Assume CS:Message, DS:Nothing ;Assume CS:Message, DS:Nothing
;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ ;レトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトソ
;ウ Variables ウ ;ウ Variables ウ
@ -168,7 +168,7 @@ Proc Msg_ResetMessage Far
Ret Ret
EndP Msg_ResetMessage ;EndP Msg_ResetMessage
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -178,7 +178,7 @@ Proc Msg_DrawMessage Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Message ;Assume DS:Message
Cmp Edit, 0 Cmp Edit, 0
JE Msg_DrawMessage7 JE Msg_DrawMessage7
@ -302,8 +302,8 @@ Msg_DrawMessage13:
Msg_DrawMessageEnd: Msg_DrawMessageEnd:
Ret Ret
EndP Msg_DrawMessage ;EndP Msg_DrawMessage
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -311,7 +311,7 @@ Proc Msg_PreMessage Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Message ;Assume DS:Message
Cmp Edit, 0 Cmp Edit, 0
JE Msg_PreMessage1 JE Msg_PreMessage1
@ -331,8 +331,8 @@ Proc Msg_PreMessage Far
Msg_PreMessage1: Msg_PreMessage1:
Ret Ret
EndP Msg_PreMessage ;EndP Msg_PreMessage
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -393,8 +393,8 @@ Msg_PostMessage5:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_PostMessage ;EndP Msg_PostMessage
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -412,12 +412,12 @@ Msg_Tab1:
Ret Ret
EndP Msg_Tab ;EndP Msg_Tab
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc Msg_ViewMsgUp Far Proc Msg_ViewMsgUp Far
Assume DS:Message ;Assume DS:Message
Mov AX, TopLine Mov AX, TopLine
Sub AX, 1 Sub AX, 1
@ -427,13 +427,13 @@ Proc Msg_ViewMsgUp Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_ViewMsgUp ;EndP Msg_ViewMsgUp
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc Msg_ViewMsgDown Far Proc Msg_ViewMsgDown Far
Assume DS:Message ;Assume DS:Message
Mov AX, TopLine Mov AX, TopLine
Inc AX Inc AX
@ -448,13 +448,13 @@ Msg_ViewMsgDown1:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_ViewMsgDown ;EndP Msg_ViewMsgDown
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc Msg_ViewMsgPgUp Far Proc Msg_ViewMsgPgUp Far
Assume DS:Message ;Assume DS:Message
Mov AX, TopLine Mov AX, TopLine
Sub AX, 35 Sub AX, 35
@ -468,13 +468,13 @@ Msg_ViewMsgPgUp1:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_ViewMsgPgUp ;EndP Msg_ViewMsgPgUp
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc Msg_ViewMsgPgDn Far Proc Msg_ViewMsgPgDn Far
Assume DS:Message ;Assume DS:Message
Mov AX, TopLine Mov AX, TopLine
Add AX, 35 Add AX, 35
@ -489,13 +489,13 @@ Msg_ViewMsgPgDn1:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_ViewMsgPgDn ;EndP Msg_ViewMsgPgDn
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc Msg_ViewMsgEdit Far Proc Msg_ViewMsgEdit Far
Assume DS:Message ;Assume DS:Message
Mov TopLine, 0 Mov TopLine, 0
Mov CurrentLine, 0 Mov CurrentLine, 0
@ -505,26 +505,26 @@ Proc Msg_ViewMsgEdit Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_ViewMsgEdit ;EndP Msg_ViewMsgEdit
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc Msg_EditMsgView Far Proc Msg_EditMsgView Far
Assume DS:Message ;Assume DS:Message
Mov Edit, 0 Mov Edit, 0
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_EditMsgView ;EndP Msg_EditMsgView
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc Msg_EditMsgLeft Far Proc Msg_EditMsgLeft Far
Assume DS:Message ;Assume DS:Message
Sub CurrentPosition, 1 Sub CurrentPosition, 1
AdC CurrentPosition, 0 AdC CurrentPosition, 0
@ -532,13 +532,13 @@ Proc Msg_EditMsgLeft Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_EditMsgLeft ;EndP Msg_EditMsgLeft
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc Msg_EditMsgRight Far Proc Msg_EditMsgRight Far
Assume DS:Message ;Assume DS:Message
Mov SI, CurrentPosition Mov SI, CurrentPosition
Cmp SI, MESSAGELENGTH-2 Cmp SI, MESSAGELENGTH-2
@ -553,13 +553,13 @@ Msg_EditMsgRight1:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_EditMsgRight ;EndP Msg_EditMsgRight
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc Msg_EditMsgUp Far Proc Msg_EditMsgUp Far
Assume DS:Message ;Assume DS:Message
Mov SI, CurrentPosition ; Need to search back Mov SI, CurrentPosition ; Need to search back
; twice... ; twice...
@ -590,8 +590,8 @@ Msg_EditMsgUpEnd:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_EditMsgUp ;EndP Msg_EditMsgUp
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -608,12 +608,12 @@ Msg_EditMsgPgUp1:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_EditMsgPgUp ;EndP Msg_EditMsgPgUp
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc Msg_EditMsgDown Far Proc Msg_EditMsgDown Far
Assume DS:Message ;Assume DS:Message
; Search for enter ; Search for enter
Mov SI, CurrentPosition Mov SI, CurrentPosition
@ -650,8 +650,8 @@ Msg_EditMsgDownEnd:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_EditMsgDown ;EndP Msg_EditMsgDown
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -668,12 +668,12 @@ Msg_EditMsgPgDn1:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_EditMsgPgDn ;EndP Msg_EditMsgPgDn
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc Msg_EditMsgDelete Far Proc Msg_EditMsgDelete Far
Assume DS:Message ;Assume DS:Message
Mov SI, CurrentPosition Mov SI, CurrentPosition
Mov DX, 1 Mov DX, 1
@ -683,8 +683,8 @@ Proc Msg_EditMsgDelete Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_EditMsgDelete ;EndP Msg_EditMsgDelete
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -702,12 +702,12 @@ Msg_EditMsgInsert1:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_EditMsgInsert ;EndP Msg_EditMsgInsert
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc Msg_EditMsgBackspace Far Proc Msg_EditMsgBackspace Far
Assume DS:Message ;Assume DS:Message
Mov SI, CurrentPosition Mov SI, CurrentPosition
And SI, SI And SI, SI
@ -720,13 +720,13 @@ Msg_EditMsgBackspace1:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_EditMsgBackspace ;EndP Msg_EditMsgBackspace
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc Msg_EditMsgDeleteLine Far Proc Msg_EditMsgDeleteLine Far
Assume DS:Message ;Assume DS:Message
Mov SI, CurrentPosition ; Search back for Mov SI, CurrentPosition ; Search back for
; start of line.. ; start of line..
@ -753,8 +753,8 @@ Msg_EditMsgDeleteLine4:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_EditMsgDeleteLine ;EndP Msg_EditMsgDeleteLine
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -773,12 +773,12 @@ Msg_ClearMessage1:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_ClearMessage ;EndP Msg_ClearMessage
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc Msg_EditMsgHome Far Proc Msg_EditMsgHome Far
Assume DS:Message ;Assume DS:Message
Mov SI, CurrentPosition Mov SI, CurrentPosition
Call FindStart Call FindStart
@ -787,13 +787,13 @@ Proc Msg_EditMsgHome Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_EditMsgHome ;EndP Msg_EditMsgHome
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc Msg_EditMsgEnd Far Proc Msg_EditMsgEnd Far
Assume DS:Message ;Assume DS:Message
Mov SI, CurrentPosition Mov SI, CurrentPosition
@ -815,8 +815,8 @@ Msg_EditMsgEnd1:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_EditMsgEnd ;EndP Msg_EditMsgEnd
Assume DS:Nothing ;Assume DS:Nothing
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -833,7 +833,7 @@ FindStart2:
Inc SI Inc SI
Ret Ret
EndP FindStart ;EndP FindStart
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -881,12 +881,12 @@ InsertDataEnd:
Pop CX Pop CX
Ret Ret
EndP InsertData ;EndP InsertData
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc DeleteData ; SI = pos, DX = length Proc DeleteData ; SI = pos, DX = length
; Assume DS:Message ; ;Assume DS:Message
Push CX Push CX
Push DX Push DX
@ -916,7 +916,7 @@ DeleteData1:
Pop CX Pop CX
Ret Ret
EndP DeleteData ;EndP DeleteData
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -969,7 +969,7 @@ CheckWordWrap7: ; Insert an enter
CheckWordWrap8: CheckWordWrap8:
Ret Ret
EndP CheckWordWrap ;EndP CheckWordWrap
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -995,7 +995,7 @@ Msg_GetMessageLength1:
Pop DS Pop DS
Ret Ret
EndP Msg_GetMessageLength ;EndP Msg_GetMessageLength
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
@ -1007,20 +1007,20 @@ Proc Msg_GetMessageOffset Far
Mov DX, Offset MessageData Mov DX, Offset MessageData
Ret Ret
EndP Msg_GetMessageOffset ;EndP Msg_GetMessageOffset
;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト ;トトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトトト
Proc Msg_ToggleCharacterSet Far Proc Msg_ToggleCharacterSet Far
Assume DS:Message ;Assume DS:Message
Xor CharacterColour, 6 xor 12 Xor CharacterColour, 6 xor 12
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Msg_ToggleCharacterSet ;EndP Msg_ToggleCharacterSet
Assume DS:Nothing ;Assume DS:Nothing
;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ ;ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ

File diff suppressed because it is too large Load Diff

299
it_net.s
View File

@ -2,12 +2,9 @@
;³ Network Module ³ ;³ Network Module ³
;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Jumps %include "switch.inc"
.386P
include switch.inc %IF NETWORKENABLED
IF NETWORKENABLED
SHOWQUEUESIZE EQU 0 SHOWQUEUESIZE EQU 0
@ -28,61 +25,61 @@ NUMPROVIDEDFUNCTIONS EQU 16 ; Number of functions (DW Offsets) provided by
;³ Externals ³ ;³ Externals ³
;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Extrn D_ClearFileName:Far extern D_ClearFileName:Far
Extrn E_AllocateEMS:Far extern E_AllocateEMS:Far
Extrn E_ReleaseEMS:Far extern E_ReleaseEMS:Far
Extrn E_MapEMSMemory:Far extern E_MapEMSMemory:Far
Extrn E_GetEMSPageFrame:Far extern E_GetEMSPageFrame:Far
Extrn E_GetEMSVersion:Far extern E_GetEMSVersion:Far
; Extrn E_SavePageFrame:Far ; extern E_SavePageFrame:Far
; Extrn E_RestorePageFrame:Far ; extern E_RestorePageFrame:Far
Extrn F_DrawHeader:Far extern F_DrawHeader:Far
Extrn Glbl_SetCurrentMode:Far extern Glbl_SetCurrentMode:Far
Extrn Glbl_GetCurrentMode:Far extern Glbl_GetCurrentMode:Far
Extrn I_MapEnvelope:Far extern I_MapEnvelope:Far
Extrn M_FunctionDivider:Far extern M_FunctionDivider:Far
Extrn M_FunctionHandler:Far extern M_FunctionHandler:Far
Extrn M_Object1List:Far extern M_Object1List:Far
Extrn Music_GetPatternLocation:Far ; Returns AX = handle extern Music_GetPatternLocation:Far ; Returns AX = handle
; EBX = segment:offset ; EBX = segment:offset
; DL = type. ; DL = type.
; CX = pattern length ; CX = pattern length
Extrn Music_GetPatternLocationNoCount:Far ; Returns AX = handle extern Music_GetPatternLocationNoCount:Far ; Returns AX = handle
; EBX = segment:offset ; EBX = segment:offset
; DL = type. ; DL = type.
Extrn Music_ReleasePattern:Far ; Requires AX = pattern extern Music_ReleasePattern:Far ; Requires AX = pattern
Extrn Music_AllocatePattern:Far ; SI = pattern, DX = length extern Music_AllocatePattern:Far ; SI = pattern, DX = length
Extrn Music_UpdatePatternOffset:Far extern Music_UpdatePatternOffset:Far
Extrn Music_ReleaseAllSamples:Far extern Music_ReleaseAllSamples:Far
Extrn Music_AllocateSample:Far extern Music_AllocateSample:Far
Extrn Music_Stop:Far extern Music_Stop:Far
Extrn Music_ReleaseSample:Far extern Music_ReleaseSample:Far
Extrn IdleUpdateInfoLine:Far extern IdleUpdateInfoLine:Far
Extrn SetInfoLine:Far extern SetInfoLine:Far
Extrn SetInfoLine2:Far extern SetInfoLine2:Far
Extrn GetTimerCounter:Far extern GetTimerCounter:Far
Extrn O1_LoadNetworkDriver:Far extern O1_LoadNetworkDriver:Far
Extrn O1_NetworkErrorList:Far extern O1_NetworkErrorList:Far
Extrn GlobalKeyList extern GlobalKeyList
Extrn PE_FillHeader:Far extern PE_FillHeader:Far
Extrn PE_NewPattern:Far extern PE_NewPattern:Far
Extrn PEFunction_OutOfMemoryMessage:Far extern PEFunction_OutOfMemoryMessage:Far
Extrn PEFunction_StoreCurrentPattern:Far extern PEFunction_StoreCurrentPattern:Far
Extrn PE_GetLastInstrument:Far extern PE_GetLastInstrument:Far
Extrn S_GetDestination:Far extern S_GetDestination:Far
Extrn S_DrawString:Far extern S_DrawString:Far
Extrn S_SaveScreen:Far extern S_SaveScreen:Far
Extrn S_RestoreScreen:Far extern S_RestoreScreen:Far
Segment Object1 BYTE Public 'Data' Segment Object1 BYTE Public 'Data'
EndS EndS
@ -117,7 +114,7 @@ EndS
; Not used? ; Not used?
; ;
;Segment Network BYTE Public 'Code' USE16 ;Segment Network BYTE Public 'Code' USE16
; Assume CS:Network, DS:Nothing, ES:Nothing ; ;Assume CS:Network, DS:Nothing, ES:Nothing
;EndS ;EndS
; ;
;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
@ -128,24 +125,24 @@ EndS
;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
Segment Pattern BYTE Public 'Code' USE16 Segment Pattern BYTE Public 'Code' USE16
Extrn PatternDataArea:Word extern PatternDataArea:Word
Extrn PatternNumber:Word extern PatternNumber:Word
Extrn Modified:Byte extern Modified:Byte
Extrn PatternModified:Byte extern PatternModified:Byte
Extrn MaxRow:Word extern MaxRow:Word
EndS EndS
Segment Music BYTE Public 'Code' USE16 Segment Music BYTE Public 'Code' USE16
Extrn CurrentOrder:Word extern CurrentOrder:Word
Extrn CurrentPattern:Word extern CurrentPattern:Word
Extrn CurrentRow:Word extern CurrentRow:Word
EndS EndS
Segment Disk DWORD Public 'Code' USE16 Segment Disk DWORD Public 'Code' USE16
Assume CS:Disk, DS:Nothing, ES:Nothing ;Assume CS:Disk, DS:Nothing, ES:Nothing
Extrn DiskDataArea:Word extern DiskDataArea:Word
Extrn D_GotoStartingDirectory:Far extern D_GotoStartingDirectory:Far
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -196,9 +193,9 @@ DriverMask DB "IT*.NET", 0
NoDriverMsg DB "No Network Drivers Found", 0 NoDriverMsg DB "No Network Drivers Found", 0
NetworkDriverUnloaded DB "Network driver unloaded", 0 NetworkDriverUnloaded DB "Network driver unloaded", 0
IF SHOWQUEUESIZE %IF SHOWQUEUESIZE
DebugMessage DB "SendQueueSize: ", 0FDh, "D", 0 DebugMessage DB "SendQueueSize: ", 0FDh, "D", 0
ENDIF %ENDIF
; NetworkOverflowMessage DB "Network Overflow: Driver Unloaded", 0 ; NetworkOverflowMessage DB "Network Overflow: Driver Unloaded", 0
ALIGN 2 ALIGN 2
@ -263,7 +260,7 @@ Proc Network_EmptyFunction Far
Xor AX, AX Xor AX, AX
Ret Ret
EndP Network_EmptyFunction ;EndP Network_EmptyFunction
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -277,7 +274,7 @@ Proc Network_DriverScreen Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Disk ;Assume DS:Disk
Cmp [DriverSegment], 0 Cmp [DriverSegment], 0
JE Network_DriverScreen1 JE Network_DriverScreen1
@ -388,7 +385,7 @@ Network_DriverScreenLoadFileNamesEnd:
Mov DX, Offset O1_LoadNetworkDriver Mov DX, Offset O1_LoadNetworkDriver
Ret Ret
EndP Network_DriverScreen ;EndP Network_DriverScreen
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -396,7 +393,7 @@ Proc Network_DrawDriverScreen Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Disk ;Assume DS:Disk
Call S_GetDestination ; Gets ES Call S_GetDestination ; Gets ES
@ -447,7 +444,7 @@ Network_DrawDriverScreenClip2:
ShL SI, 7 ShL SI, 7
Mov DS, [DiskDataArea] Mov DS, [DiskDataArea]
Assume DS:Nothing ;Assume DS:Nothing
Cmp DX, 36 Cmp DX, 36
JB Network_DrawDriverScreenClip JB Network_DrawDriverScreenClip
@ -482,8 +479,8 @@ Network_DrawDriverScreenDriverName:
Network_DrawDriverScreenEnd: Network_DrawDriverScreenEnd:
Ret Ret
EndP Network_DrawDriverScreen ;EndP Network_DrawDriverScreen
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -491,7 +488,7 @@ Proc Network_PreDriverScreen Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Disk ;Assume DS:Disk
Cmp [NumDrivers], 0 Cmp [NumDrivers], 0
JE Network_PreDriverScreenEnd JE Network_PreDriverScreenEnd
@ -522,13 +519,13 @@ Network_PreDriverScreen2:
Network_PreDriverScreenEnd: Network_PreDriverScreenEnd:
Ret Ret
EndP Network_PreDriverScreen ;EndP Network_PreDriverScreen
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Proc Network_Up Far Proc Network_Up Far
Assume DS:Disk ;Assume DS:Disk
Sub [CurrentDriver], 1 Sub [CurrentDriver], 1
AdC [CurrentDriver], 0 AdC [CurrentDriver], 0
@ -536,8 +533,8 @@ Proc Network_Up Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Network_Up ;EndP Network_Up
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -554,7 +551,7 @@ Network_Down1:
Mov AX, 1 Mov AX, 1
Ret Ret
EndP Network_Down ;EndP Network_Down
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -564,7 +561,7 @@ Proc Network_PostDriverScreen Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Disk ;Assume DS:Disk
Mov SI, Offset NetworkKeys Mov SI, Offset NetworkKeys
Call M_FunctionDivider Call M_FunctionDivider
@ -576,12 +573,12 @@ Network_PostDriverScreen1:
Xor AX, AX Xor AX, AX
Ret Ret
EndP Network_PostDriverScreen ;EndP Network_PostDriverScreen
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Proc Network_LoadDriver Far Proc Network_LoadDriver Far
Assume DS:Disk ;Assume DS:Disk
; Allocate EMS memory buffers first ; Allocate EMS memory buffers first
@ -643,7 +640,7 @@ Network_LoadDriverMemoryAlreadyAllocated2:
Network_LoadDriver1: Network_LoadDriver1:
ShL DX, 7 ShL DX, 7
Mov DS, [DiskDataArea] Mov DS, [DiskDataArea]
Assume DS:Nothing ;Assume DS:Nothing
Mov DI, DX Mov DI, DX
; Try allocating memory first. ; Try allocating memory first.
@ -680,7 +677,7 @@ Network_LoadDriver2:
Push CS Push CS
Pop DS Pop DS
Assume DS:Disk ;Assume DS:Disk
Mov AH, 3Fh Mov AH, 3Fh
Mov CX, NUMPROVIDEDVARIABLES Mov CX, NUMPROVIDEDVARIABLES
@ -732,7 +729,7 @@ Network_InitialiseBuffers1:
; Should jump to network initialise function now. ; Should jump to network initialise function now.
Jmp NetworkDriver_Initialise Jmp NetworkDriver_Initialise
Assume DS:Nothing ;Assume DS:Nothing
Network_LoadDriver4: Network_LoadDriver4:
Mov AH, 3Eh Mov AH, 3Eh
@ -741,8 +738,8 @@ Network_LoadDriver4:
Network_LoadDriver3: Network_LoadDriver3:
Jmp Network_UnloadDriver Jmp Network_UnloadDriver
EndP Network_LoadDriver ;EndP Network_LoadDriver
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -752,7 +749,7 @@ Proc Network_UnloadDriver Far
Push CS Push CS
Pop DS Pop DS
Pop ES Pop ES
Assume DS:Disk ;Assume DS:Disk
Mov SI, Offset NetworkDriverUnloaded Mov SI, Offset NetworkDriverUnloaded
Call SetInfoLine Call SetInfoLine
@ -781,8 +778,8 @@ Proc Network_UnloadDriver Far
Jmp Network_DriverScreen Jmp Network_DriverScreen
EndP Network_UnloadDriver ;EndP Network_UnloadDriver
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -805,7 +802,7 @@ Network_Poll1:
~ ~
Jmp NetworkDriver_Update Jmp NetworkDriver_Update
EndP Network_Poll ;EndP Network_Poll
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -847,7 +844,7 @@ Network_DecodeUserName3:
Network_DecodeUserNameEnd: Network_DecodeUserNameEnd:
Ret Ret
EndP Network_DecodeUserName ;EndP Network_DecodeUserName
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -869,7 +866,7 @@ Network_Shutdown1:
Network_Shutdown2: Network_Shutdown2:
Jmp NetworkDriver_Shutdown Jmp NetworkDriver_Shutdown
EndP Network_Shutdown ;EndP Network_Shutdown
;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
; ;
@ -961,7 +958,7 @@ Network_CalculateCRC1:
Ret Ret
EndP Network_CalculateCRC ;EndP Network_CalculateCRC
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -981,7 +978,7 @@ Proc Network_GetSendBufferPage Near
Ret Ret
EndP Network_GetSendBufferPage ;EndP Network_GetSendBufferPage
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1056,7 +1053,7 @@ Proc SendNetworkBlock0 Near
Push Pattern Push Pattern
Pop DS Pop DS
Assume DS:Pattern ;Assume DS:Pattern
Cmp DL, Byte Ptr PatternNumber ; Still editing the pattern? Cmp DL, Byte Ptr PatternNumber ; Still editing the pattern?
JE SendNetworkBlock0_0 JE SendNetworkBlock0_0
@ -1069,7 +1066,7 @@ Proc SendNetworkBlock0 Near
SendNetworkBlock0_0: SendNetworkBlock0_0:
StosW StosW
Mov DS, PatternDataArea Mov DS, PatternDataArea
Assume DS:Nothing ;Assume DS:Nothing
Mov AL, 64 Mov AL, 64
Mul CH Mul CH
@ -1178,8 +1175,8 @@ SendNetworkBlock0_9:
Ret Ret
EndP SendNetworkBlock0 ;EndP SendNetworkBlock0
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1187,7 +1184,7 @@ Proc ReceiveNetworkBlock0 Near
Push Pattern Push Pattern
Pop ES Pop ES
Assume ES:Pattern ;Assume ES:Pattern
Mov [Word Ptr ES:Modified], 101h Mov [Word Ptr ES:Modified], 101h
@ -1197,7 +1194,7 @@ Proc ReceiveNetworkBlock0 Near
JNE ReceiveNetworkBlock0_1 JNE ReceiveNetworkBlock0_1
Mov ES, [ES:PatternDataArea] Mov ES, [ES:PatternDataArea]
Assume ES:Nothing ;Assume ES:Nothing
Mov CX, [DS:08h] ; CL = Channel, CH = Row Mov CX, [DS:08h] ; CL = Channel, CH = Row
Mov BX, [DS:0Ah] ; BL = Width, BH = Height Mov BX, [DS:0Ah] ; BL = Width, BH = Height
@ -1315,8 +1312,8 @@ ReceiveNetworkBlock0_1: ; Not the same, or zero width -> mark modified
ReceiveNetworkBlock0_2: ReceiveNetworkBlock0_2:
Ret Ret
EndP ReceiveNetworkBlock0 ;EndP ReceiveNetworkBlock0
Assume ES:Nothing ;Assume ES:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1329,7 +1326,7 @@ Proc SendNetworkBlock1
Push Pattern Push Pattern
Pop FS Pop FS
Assume FS:Pattern ;Assume FS:Pattern
LodsB LodsB
Mov CS:SendDataQueueHead, SI Mov CS:SendDataQueueHead, SI
@ -1377,7 +1374,7 @@ SendNetworkBlock1_0:
Push CS Push CS
Pop DS Pop DS
Assume DS:Disk ;Assume DS:Disk
Add CX, 8 Add CX, 8
; Setup EMS transfer ; Setup EMS transfer
@ -1408,8 +1405,8 @@ SendNetworkBlock1_2:
Ret Ret
EndP SendNetworkBlock1 ;EndP SendNetworkBlock1
Assume DS:Nothing, FS:Nothing ;Assume DS:Nothing, FS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1419,7 +1416,7 @@ Proc ReceiveNetworkBlock1
Push Music Push Music
Pop FS Pop FS
Assume FS:Music ;Assume FS:Music
Mov EDX, [DS:8] Mov EDX, [DS:8]
Mov AL, [DS:7] Mov AL, [DS:7]
@ -1451,7 +1448,7 @@ Proc ReceiveNetworkBlock1
; Setup EMS transfer ; Setup EMS transfer
Push CS Push CS
Pop DS Pop DS
Assume DS:Disk ;Assume DS:Disk
Mov DestinationType, 1 Mov DestinationType, 1
Mov DestinationHandle, AX Mov DestinationHandle, AX
@ -1484,7 +1481,7 @@ ReceiveNetworkBlock1_1:
Push Pattern Push Pattern
Pop DS Pop DS
Assume DS:Pattern ;Assume DS:Pattern
Cmp AL, [Byte Ptr DS:PatternNumber] Cmp AL, [Byte Ptr DS:PatternNumber]
JNE ReceiveNetworkBlock1_0 JNE ReceiveNetworkBlock1_0
@ -1501,8 +1498,8 @@ ReceiveNetworkBlock1_2:
Pop FS Pop FS
Ret Ret
EndP ReceiveNetworkBlock1 ;EndP ReceiveNetworkBlock1
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1512,7 +1509,7 @@ Proc SendNetworkBlock2
Mov CS:SendDataQueueHead, SI Mov CS:SendDataQueueHead, SI
Ret Ret
EndP SendNetworkBlock2 ;EndP SendNetworkBlock2
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1530,7 +1527,7 @@ Proc ReceiveNetworkBlock2
ReceiveNetworkBlock2_1: ReceiveNetworkBlock2_1:
Ret Ret
EndP ReceiveNetworkBlock2 ;EndP ReceiveNetworkBlock2
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1551,7 +1548,7 @@ Proc SendNetworkBlock3
Ret Ret
EndP SendNetworkBlock3 ;EndP SendNetworkBlock3
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1576,7 +1573,7 @@ Proc ReceiveNetworkBlock3
ReceiveNetworkBlock3_1: ReceiveNetworkBlock3_1:
Ret Ret
EndP ReceiveNetworkBlock3 ;EndP ReceiveNetworkBlock3
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1599,7 +1596,7 @@ Proc SendNetworkBlock4
SendNetworkBlock4_1: SendNetworkBlock4_1:
Ret Ret
EndP SendNetworkBlock4 ;EndP SendNetworkBlock4
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1637,7 +1634,7 @@ ReceiveNetworkBlock4_1:
Ret Ret
EndP ReceiveNetworkBlock4 ;EndP ReceiveNetworkBlock4
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1669,7 +1666,7 @@ Proc SendNetworkBlock5 ; Does not send length or
Ret Ret
EndP SendNetworkBlock5 ;EndP SendNetworkBlock5
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1704,7 +1701,7 @@ Proc ReceiveNetworkBlock5
ReceiveNetworkBlock5_1: ReceiveNetworkBlock5_1:
Ret Ret
EndP ReceiveNetworkBlock5 ;EndP ReceiveNetworkBlock5
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1715,7 +1712,7 @@ Proc SendNetworkBlock6
Ret Ret
EndP SendNetworkBlock6 ;EndP SendNetworkBlock6
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1725,7 +1722,7 @@ Proc ReceiveNetworkBlock6
Push Pattern Push Pattern
Pop DS Pop DS
Assume DS:Pattern ;Assume DS:Pattern
Cmp AL, [Byte Ptr PatternNumber] Cmp AL, [Byte Ptr PatternNumber]
JNE ReceiveNetworkBlock6_1 JNE ReceiveNetworkBlock6_1
@ -1741,8 +1738,8 @@ ReceiveNetworkBlock6_2:
ReceiveNetworkBlock6_1: ReceiveNetworkBlock6_1:
Jmp ReceiveNetworkBlock0_1 ; Marks pattern as modified. Jmp ReceiveNetworkBlock0_1 ; Marks pattern as modified.
EndP ReceiveNetworkBlock6 ;EndP ReceiveNetworkBlock6
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1752,7 +1749,7 @@ Proc SendNetworkBlock7
Mov CS:SendDataQueueHead, SI Mov CS:SendDataQueueHead, SI
Ret Ret
EndP SendNetworkBlock7 ;EndP SendNetworkBlock7
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1769,7 +1766,7 @@ Proc ReceiveNetworkBlock7
ReceiveNetworkBlock7_1: ReceiveNetworkBlock7_1:
Ret Ret
EndP ReceiveNetworkBlock7 ;EndP ReceiveNetworkBlock7
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1781,7 +1778,7 @@ Proc SendNetworkBlock8 ; New sample
Ret Ret
EndP SendNetworkBlock8 ;EndP SendNetworkBlock8
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1818,7 +1815,7 @@ ReceiveNetworkBlock8_1:
ReceiveNetworkBlock8_2: ReceiveNetworkBlock8_2:
Ret Ret
EndP ReceiveNetworkBlock8 ;EndP ReceiveNetworkBlock8
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1891,7 +1888,7 @@ GetSampleLocation5:
Ret Ret
EndP GetSampleLocation ;EndP GetSampleLocation
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1912,7 +1909,7 @@ Proc SendNetworkBlock9
Push CS Push CS
Pop DS Pop DS
Assume DS:Disk ;Assume DS:Disk
Mov AX, NetworkSendEMSHandle Mov AX, NetworkSendEMSHandle
Mov DestinationType, 1 Mov DestinationType, 1
@ -1934,8 +1931,8 @@ SendNetworkBlock9_1:
Ret Ret
EndP SendNetworkBlock9 ;EndP SendNetworkBlock9
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1957,7 +1954,7 @@ Proc ReceiveNetworkBlock9
Push CS Push CS
Pop DS Pop DS
Assume DS:Disk ;Assume DS:Disk
ShR SI, 8 ShR SI, 8
Mov SourceType, 1 Mov SourceType, 1
@ -1973,8 +1970,8 @@ Proc ReceiveNetworkBlock9
ReceiveNetworkBlock9_1: ReceiveNetworkBlock9_1:
Ret Ret
EndP ReceiveNetworkBlock9 ;EndP ReceiveNetworkBlock9
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -2024,7 +2021,7 @@ Network_SendData3:
JZ Network_SendDataEnd JZ Network_SendDataEnd
Mov DS, SendQueueSegment Mov DS, SendQueueSegment
Assume DS:Nothing ;Assume DS:Nothing
Push AX Push AX
Push BX Push BX
@ -2124,7 +2121,7 @@ Network_SendDataError:
Xor DX, DX Xor DX, DX
Ret Ret
EndP Network_SendData ;EndP Network_SendData
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -2181,7 +2178,7 @@ Proc Network_ReceiveData Far
Network_ReceiveData1: Network_ReceiveData1:
Mov DX, [ES:65532] Mov DX, [ES:65532]
; Assume OK.. now place data into buffer, updating check word. ; ;Assume OK.. now place data into buffer, updating check word.
Network_ReceiveData2: Network_ReceiveData2:
LodsB LodsB
Add DL, AL Add DL, AL
@ -2250,7 +2247,7 @@ Network_ReceiveData3:
Ret Ret
EndP Network_ReceiveData ;EndP Network_ReceiveData
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -2275,7 +2272,7 @@ Proc Network_GetSendQueue Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Disk ;Assume DS:Disk
Comment ~ Comment ~
This code is incomplete This code is incomplete
@ -2303,8 +2300,8 @@ Network_GetSendQueue1:
Ret Ret
EndP Network_GetSendQueue ;EndP Network_GetSendQueue
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -2321,14 +2318,14 @@ Network_FinishedSendQueue1:
Pop EAX Pop EAX
Mov [BP+42], EAX Mov [BP+42], EAX
IF SHOWQUEUESIZE %IF SHOWQUEUESIZE
Push CS Push CS
Pop DS Pop DS
Mov AX, SendDataQueueTail Mov AX, SendDataQueueTail
Sub AX, SendDataQueueHead Sub AX, SendDataQueueHead
Mov SI, Offset DebugMessage Mov SI, Offset DebugMessage
Call SetInfoLine Call SetInfoLine
ENDIF %ENDIF
Pop ES Pop ES
Pop DS Pop DS
@ -2337,7 +2334,7 @@ ENDIF
Ret Ret
EndP Network_FinishedSendQueue ;EndP Network_FinishedSendQueue
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -2364,7 +2361,7 @@ Proc Network_NewConnection Far ; Called when this computer
Ret Ret
EndP Network_NewConnection ;EndP Network_NewConnection
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -2378,7 +2375,7 @@ Proc ResetDI
ResetDI1: ResetDI1:
Ret Ret
EndP ResetDI ;EndP ResetDI
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -2452,7 +2449,7 @@ Network_QueueSampleData2:
Ret Ret
EndP Network_QueueSampleData ;EndP Network_QueueSampleData
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -2562,7 +2559,7 @@ Network_EstablishConnection6:
Ret Ret
EndP Network_EstablishConnection ;EndP Network_EstablishConnection
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -2581,7 +2578,7 @@ Network_AddWordToQueue0:
Call Network_FinishedSendQueue Call Network_FinishedSendQueue
Ret Ret
EndP Network_AddWordToQueue ;EndP Network_AddWordToQueue
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -2629,9 +2626,9 @@ Network_UpdatePattern1:
Network_UpdatePatternEnd: Network_UpdatePatternEnd:
Ret Ret
EndP Network_UpdatePattern ;EndP Network_UpdatePattern
EndP Network_UpdatePatternIfIdle ;EndP Network_UpdatePatternIfIdle
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -2653,7 +2650,7 @@ Proc Network_EnsureNoNetwork Far
Network_EnsureNoNetwork1: Network_EnsureNoNetwork1:
Ret Ret
EndP Network_EnsureNoNetwork ;EndP Network_EnsureNoNetwork
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -2672,7 +2669,7 @@ Network_SendSampleHeader1:
Call Network_FinishedSendQueue Call Network_FinishedSendQueue
Ret Ret
EndP Network_SendSampleHeader ;EndP Network_SendSampleHeader
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -2691,7 +2688,7 @@ Network_SendInstrumentHeader1:
Call Network_FinishedSendQueue Call Network_FinishedSendQueue
Ret Ret
EndP Network_SendInstrumentHeader ;EndP Network_SendInstrumentHeader
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -2711,12 +2708,12 @@ Network_SendSongDataInformation1:
Call Network_FinishedSendQueue Call Network_FinishedSendQueue
Ret Ret
EndP Network_SendSongDataInformation ;EndP Network_SendSongDataInformation
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
EndS EndS
ENDIF %ENDIF
End End

3872
it_obj1.s

File diff suppressed because it is too large Load Diff

841
it_pe.s

File diff suppressed because it is too large Load Diff

123
it_s.s
View File

@ -2,20 +2,17 @@
;³ Screen Module ³ ;³ Screen Module ³
;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
include switch.inc %include "switch.inc"
Jumps
.386
Segment Mouse BYTE Public 'Code' Segment Mouse BYTE Public 'Code'
Extrn MouseCharacterGenerationOffset:Word extern MouseCharacterGenerationOffset:Word
EndS EndS
Extrn E_UnInitEMS:Far extern E_UnInitEMS:Far
Extrn DrawMouse:Far, RestoreMouse:Far, ForceMouseRestore:Far extern DrawMouse:Far, RestoreMouse:Far, ForceMouseRestore:Far
Extrn RestoreMouseGraphics:Far, NewCharacterSet:Far extern RestoreMouseGraphics:Far, NewCharacterSet:Far
Extrn MouseSecondSetEnable:Far, MouseSecondSetDisable:Far extern MouseSecondSetEnable:Far, MouseSecondSetDisable:Far
Extrn MouseUpdateEnable:Far, MouseUpdateDisable:Far extern MouseUpdateEnable:Far, MouseUpdateDisable:Far
;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
;³ Globals ³ ;³ Globals ³
@ -56,10 +53,10 @@ EndS
;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
Segment Screen BYTE Public 'Code' USE16 Segment Screen BYTE Public 'Code' USE16
Assume CS:Screen, DS:Screen ;Assume CS:Screen, DS:Screen
CREATENEWLOGFILE EQU 0 CREATENEWLOGFILE EQU 0
include debug.inc %include "debug.inc"
;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
;³ Variables ³ ;³ Variables ³
@ -292,9 +289,9 @@ BoxDefinitions Label Byte
DB 153,21h,148,21h,152,21h,146,21h,32, 3h,145,23h,151,21h,143,23h,150,23h ; 27 DB 153,21h,148,21h,152,21h,146,21h,32, 3h,145,23h,151,21h,143,23h,150,23h ; 27
DB 128,23h,129,23h,141,21h,131,23h,32,23h,132,21h,140,21h,134,21h,135,21h DB 128,23h,129,23h,141,21h,131,23h,32,23h,132,21h,140,21h,134,21h,135,21h
DB 128,21h,129,21h,141,21h,131,21h,32,23h,132,23h,140,21h,134,23h,135,23h DB 128,21h,129,21h,141,21h,131,21h,32,23h,132,23h,140,21h,134,23h,135,23h
IF TUTORIAL %IF TUTORIAL
DB 128,13h,129,13h,130,13h,131,13h,32,13h,132,13h,133,13h,134,13h,135,13h DB 128,13h,129,13h,130,13h,131,13h,32,13h,132,13h,133,13h,134,13h,135,13h
ENDIF %ENDIF
CharacterGenerationOffset DW 512*32 CharacterGenerationOffset DW 512*32
VGAFlags DB 0 ; Bit 0 = override VGA detection VGAFlags DB 0 ; Bit 0 = override VGA detection
@ -319,7 +316,7 @@ Proc S_InitScreen Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Screen ;Assume DS:Screen
Mov DirectVideo, 0 Mov DirectVideo, 0
@ -375,10 +372,10 @@ S_InitScreen5:
Push Mouse Push Mouse
Pop FS Pop FS
Assume FS:Mouse ;Assume FS:Mouse
Mov FS:MouseCharacterGenerationOffset, 2000h Mov FS:MouseCharacterGenerationOffset, 2000h
Assume FS:Nothing ;Assume FS:Nothing
S_InitScreen8: S_InitScreen8:
Call S_ResetSequencer Call S_ResetSequencer
@ -432,8 +429,8 @@ S_InitScreen6:
Pop DS Pop DS
Ret Ret
EndP S_InitScreen ;EndP S_InitScreen
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -452,13 +449,13 @@ Proc S_SaveScreen Far
Xor SI, SI Xor SI, SI
Xor DI, DI Xor DI, DI
IF USE32BITSCREENCOPY %IF USE32BITSCREENCOPY
Mov CX, 2000 Mov CX, 2000
Rep MovsD Rep MovsD
ELSE %ELSE
Mov CX, 4000 Mov CX, 4000
Rep MovsW Rep MovsW
ENDIF %ENDIF
Call ForceMouseRestore Call ForceMouseRestore
@ -469,7 +466,7 @@ ENDIF
Ret Ret
EndP S_SaveScreen ;EndP S_SaveScreen
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -488,13 +485,13 @@ Proc S_RestoreScreen Far
Pop DS Pop DS
Xor SI, SI Xor SI, SI
Xor DI, DI Xor DI, DI
IF USE32BITSCREENCOPY %IF USE32BITSCREENCOPY
Mov CX, 2000 Mov CX, 2000
Rep MovsD Rep MovsD
ELSE %ELSE
Mov CX, 4000 Mov CX, 4000
Rep MovsW Rep MovsW
ENDIF %ENDIF
Call ForceMouseRestore Call ForceMouseRestore
@ -507,7 +504,7 @@ ENDIF
Ret Ret
EndP S_RestoreScreen ;EndP S_RestoreScreen
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -562,7 +559,7 @@ S_Set80x50Mode1:
Ret Ret
EndP S_Set80x50Mode ;EndP S_Set80x50Mode
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -573,7 +570,7 @@ Proc S_SetPalette2 Far
Jmp SP3 Jmp SP3
EndP S_SetPalette2 ;EndP S_SetPalette2
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -606,7 +603,7 @@ SP3:
Push CS Push CS
Pop DS Pop DS
Assume DS:Screen ;Assume DS:Screen
Mov SI, Offset PaletteDefs Mov SI, Offset PaletteDefs
SP2: SP2:
@ -616,12 +613,12 @@ SP2:
Pop DS Pop DS
Assume DS:Nothing ;Assume DS:Nothing
PopA PopA
Ret Ret
EndP S_SetPalette ;EndP S_SetPalette
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -656,7 +653,7 @@ Proc S_SetSequencer Far
S_SetSequencer1: S_SetSequencer1:
Ret Ret
EndP S_SetSequencer ;EndP S_SetSequencer
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -688,7 +685,7 @@ Proc S_ResetSequencer Far
S_ResetSequencer1: S_ResetSequencer1:
Ret Ret
EndP S_ResetSequencer ;EndP S_ResetSequencer
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -740,7 +737,7 @@ RedefineCharacters1:
Ret Ret
EndP S_RedefineCharacters ;EndP S_RedefineCharacters
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -841,7 +838,7 @@ S_DefineSmallNumbers5:
Ret Ret
EndP S_DefineSmallNumbers ;EndP S_DefineSmallNumbers
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -860,7 +857,7 @@ Proc S_UnInitScreen Far
Ret Ret
EndP S_UnInitScreen ;EndP S_UnInitScreen
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -879,7 +876,7 @@ Proc S_GetDestination Far
S_GetDestination1: S_GetDestination1:
Ret Ret
EndP S_GetDestination ;EndP S_GetDestination
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -890,24 +887,24 @@ Proc S_ClearScreen Far
Push DI Push DI
Call S_GetDestination Call S_GetDestination
IF USE32BITSCREENCOPY %IF USE32BITSCREENCOPY
Mov CX, 2000 Mov CX, 2000
Mov EAX, 03000300h Mov EAX, 03000300h
Xor DI, DI Xor DI, DI
Rep StosD Rep StosD
ELSE %ELSE
Mov CX, 4000 Mov CX, 4000
Mov AX, 300h Mov AX, 300h
Xor DI, DI Xor DI, DI
Rep StosW Rep StosW
ENDIF %ENDIF
Pop DI Pop DI
Pop ES Pop ES
Pop CX Pop CX
Ret Ret
EndP S_ClearScreen ;EndP S_ClearScreen
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1007,7 +1004,7 @@ DrawBox3:
Pop BP Pop BP
Ret Ret
EndP S_DrawBox ;EndP S_DrawBox
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1047,13 +1044,13 @@ S_UpdateScreen2:
Mov DS, CS:ScreenDataArea Mov DS, CS:ScreenDataArea
Mov CX, 0B800h Mov CX, 0B800h
Mov ES, CX Mov ES, CX
IF USE32BITSCREENCOPY %IF USE32BITSCREENCOPY
Mov CX, 2000 Mov CX, 2000
Rep MovsD Rep MovsD
ELSE %ELSE
Mov CX, 4000 Mov CX, 4000
Rep MovsW Rep MovsW
ENDIF %ENDIF
Mov ES, CS:ScreenDataArea Mov ES, CS:ScreenDataArea
Call RestoreMouse Call RestoreMouse
@ -1067,7 +1064,7 @@ ENDIF
S_UpdateScreen1: S_UpdateScreen1:
Ret Ret
EndP S_UpdateScreen ;EndP S_UpdateScreen
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1094,13 +1091,13 @@ S_SetDirectMode1:
Mov DS, CX Mov DS, CX
Xor SI, SI Xor SI, SI
Xor DI, DI Xor DI, DI
IF USE32BITSCREENCOPY %IF USE32BITSCREENCOPY
Mov CX, 2000 Mov CX, 2000
Rep MovsD Rep MovsD
ELSE %ELSE
Mov CX, 4000 Mov CX, 4000
Rep MovsW Rep MovsW
ENDIF %ENDIF
Call RestoreMouse Call RestoreMouse
@ -1114,7 +1111,7 @@ S_SetDirectMode2:
Mov CS:DirectVideo, AL Mov CS:DirectVideo, AL
Ret Ret
EndP S_SetDirectMode ;EndP S_SetDirectMode
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1138,7 +1135,7 @@ HiLight1:
Ret Ret
EndP S_HiLight ;EndP S_HiLight
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1161,7 +1158,7 @@ Proc S_DirectDrawString Far
Jmp DrawString001 Jmp DrawString001
EndP S_DirectDrawString ;EndP S_DirectDrawString
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1412,7 +1409,7 @@ DrawString018:
Jmp DrawString001 Jmp DrawString001
EndP S_DrawString ;EndP S_DrawString
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1423,7 +1420,7 @@ Proc S_GetGenerationTableOffset Far ; returns ES:DI
Ret Ret
EndP S_GetGenerationTableOffset ;EndP S_GetGenerationTableOffset
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1523,7 +1520,7 @@ S_GenerateCharacters2:
Ret Ret
EndP S_GenerateCharacters ;EndP S_GenerateCharacters
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1544,7 +1541,7 @@ Proc S_DrawSmallBox Far
Ret Ret
EndP S_DrawSmallBox ;EndP S_DrawSmallBox
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1556,7 +1553,7 @@ Proc S_GetPaletteOffset Far
Ret Ret
EndP S_GetPaletteOffset ;EndP S_GetPaletteOffset
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1569,7 +1566,7 @@ Proc S_UsePresetPalette Far
Mov AX, CS Mov AX, CS
Mov DS, AX Mov DS, AX
Mov ES, AX Mov ES, AX
Assume DS:Screen ;Assume DS:Screen
Add SI, Offset PresetPalettes Add SI, Offset PresetPalettes
Mov DI, Offset PaletteDefs Mov DI, Offset PaletteDefs
@ -1581,8 +1578,8 @@ Proc S_UsePresetPalette Far
Mov AX, 1 Mov AX, 1
Ret Ret
EndP S_UsePresetPalette ;EndP S_UsePresetPalette
Assume DS:Nothing ;Assume DS:Nothing
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1626,7 +1623,7 @@ S_DefineHIASCII1:
Ret Ret
EndP S_DefineHiASCII ;EndP S_DefineHiASCII
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -1668,7 +1665,7 @@ S_InvertCursor1:
PopA PopA
Ret Ret
EndP S_InvertCursor ;EndP S_InvertCursor
;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ

View File

@ -1,34 +1,30 @@
%include "switch.inc"
Jumps %IF TUTORIAL
.386
include switch.inc extern S_DrawBox:Far
extern S_DrawString:Far
IF TUTORIAL extern Music_GetSongSegment:Far
extern Music_GetPlayMode:Far
Extrn S_DrawBox:Far extern PE_GetLastInstrument:Far ; Returns BX = LastInst-1
Extrn S_DrawString:Far
Extrn Music_GetSongSegment:Far
Extrn Music_GetPlayMode:Far
Extrn PE_GetLastInstrument:Far ; Returns BX = LastInst-1
Segment Pattern BYTE Public 'Code' Segment Pattern BYTE Public 'Code'
Extrn PatternDataArea:Word extern PatternDataArea:Word
Extrn LastKeyBoard1:Word extern LastKeyBoard1:Word
Extrn LastKeyBoard2:Word extern LastKeyBoard2:Word
EndS EndS
Segment Disk Byte Public 'Code' USE16 Segment Disk Byte Public 'Code' USE16
Extrn SamplesInModule:Byte extern SamplesInModule:Byte
Extrn InSampleFileName:Byte extern InSampleFileName:Byte
EndS EndS
Public Glbl_TutorialHandler Public Glbl_TutorialHandler
Segment Glbl BYTE Public 'Code' USE16 Segment Glbl BYTE Public 'Code' USE16
Assume CS:Glbl, DS:Nothing, GS:Pattern ;Assume CS:Glbl, DS:Nothing, GS:Pattern
Extrn CurrentMode:Byte extern CurrentMode:Byte
TutorialState DW 0 TutorialState DW 0
@ -271,7 +267,7 @@ Proc Tute_State0
Cmp AL, 9 Cmp AL, 9
Ret Ret
EndP Tute_State0 ;EndP Tute_State0
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -280,7 +276,7 @@ Proc Tute_State1
Cmp AL, 3 Cmp AL, 3
Ret Ret
EndP Tute_State1 ;EndP Tute_State1
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -289,7 +285,7 @@ Proc Tute_State2
Cmp AL, 13 Cmp AL, 13
Ret Ret
EndP Tute_State2 ;EndP Tute_State2
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -297,7 +293,7 @@ Proc Tute_State3
Push Disk Push Disk
Pop ES Pop ES
Assume ES:Disk ;Assume ES:Disk
Cmp ES:SamplesInModule, 1 Cmp ES:SamplesInModule, 1
JNE Tute_State3a JNE Tute_State3a
@ -310,7 +306,7 @@ Proc Tute_State3
Tute_State3a: Tute_State3a:
Ret Ret
EndP Tute_State3 ;EndP Tute_State3
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -325,7 +321,7 @@ Proc Tute_State4
RepE CmpSB RepE CmpSB
Ret Ret
EndP Tute_State4 ;EndP Tute_State4
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -334,7 +330,7 @@ Proc Tute_State5
Cmp AL, 2 Cmp AL, 2
Ret Ret
EndP Tute_State5 ;EndP Tute_State5
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -343,7 +339,7 @@ Proc Tute_State6
Cmp Word Ptr [FS:0], 13Ch Cmp Word Ptr [FS:0], 13Ch
Ret Ret
EndP Tute_State6 ;EndP Tute_State6
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -352,7 +348,7 @@ Proc Tute_State7
Cmp Word Ptr [FS:320*16], 13Ch Cmp Word Ptr [FS:320*16], 13Ch
Ret Ret
EndP Tute_State7 ;EndP Tute_State7
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -363,7 +359,7 @@ Proc Tute_State8
Ret Ret
EndP Tute_State8 ;EndP Tute_State8
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -373,7 +369,7 @@ Proc Tute_State9
Test AX, AX Test AX, AX
Ret Ret
EndP Tute_State9 ;EndP Tute_State9
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -382,7 +378,7 @@ Proc Tute_State10
Cmp Word Ptr [FS:60*320], 13Ch Cmp Word Ptr [FS:60*320], 13Ch
Ret Ret
EndP Tute_State10 ;EndP Tute_State10
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -392,7 +388,7 @@ Proc Tute_State12
Cmp BX, 1 Cmp BX, 1
Ret Ret
EndP Tute_State12 ;EndP Tute_State12
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -407,7 +403,7 @@ Proc Tute_State14
RepE CmpSB RepE CmpSB
Ret Ret
EndP Tute_State14 ;EndP Tute_State14
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -416,7 +412,7 @@ Proc Tute_StateEnd
Inc AX ; Ensure zero flag is not set. Inc AX ; Ensure zero flag is not set.
Ret Ret
EndP Tute_StateEnd ;EndP Tute_StateEnd
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -425,7 +421,7 @@ Proc Tute_State16
Cmp Word Ptr [FS:62*320], 23Ch Cmp Word Ptr [FS:62*320], 23Ch
Ret Ret
EndP Tute_State16 ;EndP Tute_State16
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -434,7 +430,7 @@ Proc Tute_State18
Cmp [Word Ptr GS:LastKeyboard1+2], 2600h Cmp [Word Ptr GS:LastKeyboard1+2], 2600h
Ret Ret
EndP Tute_State18 ;EndP Tute_State18
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -443,7 +439,7 @@ Proc Tute_State19
Cmp [Word Ptr GS:LastKeyboard1+2], 2200h Cmp [Word Ptr GS:LastKeyboard1+2], 2200h
Ret Ret
EndP Tute_State19 ;EndP Tute_State19
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
@ -454,13 +450,13 @@ Proc Glbl_TutorialHandler Far
Push CS Push CS
Pop DS Pop DS
Assume DS:Glbl ;Assume DS:Glbl
Push Pattern Push Pattern
Pop GS Pop GS
Mov FS, [GS:PatternDataArea] Mov FS, [GS:PatternDataArea]
Assume FS:Nothing ;Assume FS:Nothing
Mov BX, [TutorialState] Mov BX, [TutorialState]
Mov AL, CurrentMode Mov AL, CurrentMode
@ -509,11 +505,9 @@ Tute_TuteFinished:
PopAD PopAD
Ret Ret
EndP Glbl_TutorialHandler ;EndP Glbl_TutorialHandler
Assume DS:Nothing, FS:Nothing ;Assume DS:Nothing, FS:Nothing
EndS EndS
ENDIF %ENDIF
End

View File

@ -27,12 +27,9 @@
;³ ³ ;³ ³
;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Jumps %include "switch.inc"
.386P
include switch.inc %IF SPECTRUMANALYSER
IF SPECTRUMANALYSER
;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
;³ Externals ³ ;³ Externals ³
@ -46,14 +43,15 @@ IF SPECTRUMANALYSER
;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
Segment Vesa BYTE Public 'Code' USE16 ;Segment Vesa BYTE Public 'Code' USE16
Assume CS:Vesa, DS:Nothing %warning "USE16"
section .text
;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
;³ Variables ³ ;³ Variables ³
;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
VESAInformationTable Label VESAInformationTable:; Label
VESASignature DB 4 Dup (0) VESASignature DB 4 Dup (0)
VESAVersion DW 0 VESAVersion DW 0
VESAOEMStringPrt DD 0 VESAOEMStringPrt DD 0
@ -62,7 +60,7 @@ VESAVideoModePtr DD 0
VESATotalMemory DW 0 VESATotalMemory DW 0
DB 256-($-VESAInformationTable) Dup(0) DB 256-($-VESAInformationTable) Dup(0)
VESAModeInformationTable Label VESAModeInformationTable:; Label
DB 256-($-VESAModeInformationTable) Dup (0) DB 256-($-VESAModeInformationTable) Dup (0)
ModeInformationStructure Struc ModeInformationStructure Struc
@ -103,8 +101,8 @@ ModeInformationStructure EndS
;³ Functions ³ ;³ Functions ³
;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Proc VESA_Detect Far VESA_Detect:; Far
Public VESA_Detect global VESA_Detect
PushA PushA
Push ES Push ES
@ -129,12 +127,12 @@ DetectVESA1:
PopA PopA
Ret Ret
EndP VESA_Detect ;EndP VESA_Detect
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Proc VESA_SetMode Far VESA_SetMode:; Far
Public VESA_SetMode global VESA_SetMode
PushA PushA
Push DS Push DS
@ -161,12 +159,12 @@ VESA_SetMode3:
Ret Ret
EndP VESA_SetMode ;EndP VESA_SetMode
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Proc VESA_GetInfo VESA_GetInfo:
Public VESA_GetInfo global VESA_GetInfo
Push AX Push AX
Push CX Push CX
@ -190,12 +188,12 @@ VESA_GetInfo1:
Ret Ret
EndP VESA_GetInfo ;EndP VESA_GetInfo
;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Proc VESA_SetBlock Far ; Gives access to a 64kb block VESA_SetBlock:; Far ; Gives access to a 64kb block
Public VESA_SetBlock ; Given AX = block number. global VESA_SetBlock ; Given AX = block number.
PushA PushA
Push AX Push AX
@ -213,14 +211,6 @@ Public VESA_SetBlock ; Given AX = block number.
PopA PopA
Ret Ret
EndP VESA_SetBlock ;EndP VESA_SetBlock
;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ %ENDIF
EndS
;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
ENDIF
End