- MISC функции перенесены из 2 резидента в 3. - перераспределение TAB таблиц. - в описание Flex Navigator API добавлено описание глобальных переменных. FileViewer.flx 1.07 - мелкое исправление позиции вывода даты/времени. FileEditor.flx 1.11 - мелкое исправление позиции вывода даты/времени.
571 lines
12 KiB
Plaintext
571 lines
12 KiB
Plaintext
|
||
; LAST UPDATE: 14.08.2025 savelij
|
||
|
||
;[]=======================================================================[]
|
||
; FLEX NAVIGATOR ;
|
||
; v1.11 ;
|
||
; Last edition: 03/02/2000 ;
|
||
;[]=======================================================================[]
|
||
|
||
include fn_const.a80
|
||
include fn_macros.a80
|
||
|
||
PHASE BASE_ADDR
|
||
START_BLOCK_1
|
||
JP MainStartFN ; entry point
|
||
|
||
JP ClearScreen
|
||
JP MakeWindow
|
||
JP ReplaceColorRectan
|
||
JP PrintTxtLine_IFF
|
||
JP PrintTxtLine
|
||
JP PrintTxtLineNumsChar
|
||
JP PrintPathLeft
|
||
JP PrintPathRight
|
||
JP PrintPathCentr
|
||
JP InputLine
|
||
JP InputLine.InputLineExitOk
|
||
JP InputLine.InputLineExitCancel
|
||
JP DOSError
|
||
JP InitScrollBar
|
||
JP DrawHScrollBar
|
||
JP DrawVScrollBar
|
||
JP InitProgressBar
|
||
JP DrawProgressBar
|
||
|
||
DB JUMPS.JUMPSIZE * 5 DUP 0xC9
|
||
|
||
JP WaitUnpressMouse
|
||
JP CheckCoordsMouse
|
||
JP CMOSPrintDateTime
|
||
|
||
DB JUMPS.JUMPSIZE * 1 DUP 0xC9
|
||
|
||
JP PointerMouseClock
|
||
JP PointerMousePointer
|
||
|
||
DB JUMPS.JUMPSIZE * 4 DUP 0xC9
|
||
|
||
JP ConvertNumbers_40b
|
||
JP MoveBytesInc
|
||
JP MoveBytesDec
|
||
JP Mul_8X8_16b
|
||
JP Mul_16X8_24b
|
||
JP Mul_16X16_16b
|
||
JP Mul_16X16_32b
|
||
JP Mul_32X16_32b
|
||
JP Div_16X16_16b_16b
|
||
JP Div_24X16_8b_16b
|
||
JP Div_32X16_16b_16b
|
||
JP Div_32X16_32b_16b
|
||
JP ConvertNumbers_32b
|
||
JP ConvertNumbers_16b
|
||
JP ConvertNumbers_8b
|
||
JP atoi_32b
|
||
JP atoi_16b
|
||
JP Resident
|
||
|
||
DB 0xC0 - LOW ($) DUP 0xC9
|
||
|
||
NUM_DEVICES DB 0 ; Š®«¨ç¥á⢮ ãáâனáâ¢
|
||
TreeFlag DB 0 ; ”« £ ¤¥à¥¢
|
||
CMOSFlag DB 0 ; ”« £ CMOS 0 - ¥â
|
||
; 1 - ¥áâì
|
||
MouseFlag DB 1 ; ”« £ ¬ëè¨ 0 - ¥â
|
||
; 1 - ¥áâì
|
||
CMOSPrint: DB 1 ; ”« £ à §à¥è¥¨ï ¯¥ç ⨠¤ âë ¢à¥¬¥¨
|
||
; 1 - § ¯à¥é¥®, 0 - à §à¥è¥®
|
||
RAMPAGES
|
||
.FNPAGESID DB 0 ; ˆ¤¥â¨ä¨ª â®à ¯ ¬ï⨠£¤¥ FN
|
||
.FNREZ2 DB 0 ; 0 ‘âà ¨æ á äãªæ¨ï¬¨ FN
|
||
.FNFONT DB 0 ; 1 ‘âà ¨æ èà¨ä⮢
|
||
.FNREZ3 DB 0 ; 2 ‘âà ¨æ ¥é¥ ¥¬®£® äãªæ¨© FN
|
||
; <20>ãä¥àë¥ áâà ¨æë ¯®¤ ¨â¥à䥩á
|
||
.BufferID DB 0 ; ˆ¤¥â¨ä¨ª â®à ¯ ¬ï⨠¯®¤ ¡ãä¥à
|
||
.FLX DB 0 ; 0 ‘âà ¨æ ¤«ï § £à㧪¨ FLX ¯« £¨®¢
|
||
.LEFTPANEL DB 0 ; 1 ‘âà ¨æ ª â «®£ ‹¥¢®© ¯ ¥«¨
|
||
.RIGHTPANEL DB 0 ; 2 ‘âà ¨æ ª â «®£ <20>à ¢®© ¯ ¥«¨
|
||
.BuffPg1 DB 0 ; 3
|
||
.BuffPg2 DB 0 ; 4
|
||
.BuffPg3 DB 0 ; 5
|
||
.BuffPg4 DB 0 ; 6
|
||
.BuffPgEnd DB 0xFF
|
||
.FILES_COUNT DW 0 ; ª®«¨ç¥á⢮ ¯®¬¥ç¥ëå ä ©«®¢
|
||
.FILES_BYTES DB 5 DUP 0 ; à §¬¥à ¯®¬¥ç¥ëå ä ©«®¢ ¢ ¡ ©â å
|
||
|
||
DB LOW (-$) DUP 0
|
||
|
||
; UI palette & stack memory
|
||
; PALETTE: B G R
|
||
DB 0x00,0x00,0x00,0x00 ; Black 00 00
|
||
DB 0x00,0x00,0xFF,0x00 ; B.Red 01
|
||
DB 0x00,0x80,0x00,0x00 ; Green 02 08
|
||
DB 0x00,0xFF,0xFF,0x00 ; B.Yellow 03
|
||
DB 0x80,0x00,0x00,0x00 ; Blue 04 10
|
||
DB 0xFF,0xFF,0x00,0x00 ; Invert paper 05
|
||
DB 0x80,0x00,0x00,0x00 ; Invert ink 06 18
|
||
DB 0x80,0x80,0x80,0x00 ; BlackGray 07
|
||
DB 0xC0,0xC0,0xC0,0x00 ; HighGray 08 20
|
||
DB 0x80,0x00,0x00,0x00 ; Panel 09
|
||
DB 0xFF,0xFF,0x00,0x00 ; Files 0A 28
|
||
DB 0x00,0xFF,0xFF,0x00 ; Select Files 0B
|
||
DB 0x00,0xFF,0xFF,0x00 ; InvSel Files 0C 30
|
||
DB 0xC0,0xC0,0xC0,0x00 ; Reserved 0D
|
||
DB 0xFF,0xFF,0xFF,0x00 ; White 0E 38
|
||
DB 0xFF,0xFF,0xFF,0x00 ; White 0F
|
||
|
||
; discription of flex navigator file panels
|
||
LeftPanel: DB 0x80 ; ”« £ ¯ ¥«¨ ¡¨â 7 - ¡¨â ¢ë¤¥«¥®áâ¨
|
||
; ¡¨â 0 - ®¬¥à ¯ ¥«¨
|
||
DB 0x00 ; ”« £ ¢¨¤ ¯ ¥«¨ 0 - ªà âª ï ¯ ¥«ì
|
||
; ¡¨â 0 - ¯®¤à®¡ ï ¯ ¥«ì
|
||
; ¡¨â 1 - ¤¥à¥¢®
|
||
; ¡¨â 2 - 㦠⮥ ¤¥à¥¢®
|
||
DB 0x01 ; ‚¨¤ á®àâ¨à®¢ª¨
|
||
; ¡¨â 0 - ¯® ¨¬¥¨
|
||
; ¡¨â 1 - ¯® à áè¨à¥¨î
|
||
; ¡¨â 2 - ¯® à §¬¥àã
|
||
; ¡¨â 3 - ¯® ¤ â¥
|
||
; ¡¨â 4 - execute file
|
||
; ¡¨â 5 - file mask
|
||
DW 4 ; X ¯®§¨æ¨ï ¯ ¥«¨
|
||
DW 0 ; X ¯®§¨æ¨ï áªà®«¡ à
|
||
DW 0 ; Y ¯®§¨æ¨ï áªà®«¡ à
|
||
DW 0 ; Max ¤«¨ áªà®«¡ à
|
||
DW 0 ; ⥪.¤«¨ áªà®«¡ à
|
||
DW 0 ; €¤à¥á ï祩ª¨ BarLeft
|
||
DW 0 ; €¤à¥á ï祩ª¨ BarRight
|
||
DW 0 ; Š®«-¢® ä ©«®¢ áâà ¨æ¥
|
||
DW 0 ; ޡ饥 ª®«-¢® ä ©«®¢
|
||
DW 0 ; <20>¥à¢ë© ä ©« áâà ¨æ¥
|
||
DW 0 ; T¥ªã騩 ä ©« áâà ¨æ¥
|
||
DW 0 ; Š®«-¢® ¬ ન஢ ëå ä ©«®¢
|
||
DD 0 ; Š®«-¢® ¬ ન஢ ëå ¡ ©â®¢
|
||
DB 0
|
||
DB "*.*" ; Ma᪠¤«ï ä ©«®¢
|
||
DB 0x0A DUP 0
|
||
DB PANEL.CURR_PATH_Size DUP 0 ; <20>ãâì ª ⥪ã饩 ¤¨à¥ªâ®à¨¨
|
||
|
||
RightPanel: DB 0x01 ; ”« £ ¯ ¥«¨ ¡¨â 7 - ¡¨â ¢ë¤¥«¥®áâ¨
|
||
; ¡¨â 0 - ®¬¥à ¯ ¥«¨
|
||
DB 0x00 ; ”« £ ¢¨¤ ¯ ¥«¨ 0 - ªà âª ï ¯ ¥«ì
|
||
; ¡¨â 0 - ¯®¤à®¡ ï ¯ ¥«ì
|
||
; ¡¨â 1 - ¤¥à¥¢®
|
||
; ¡¨â 2 - 㦠⮥ ¤¥à¥¢®
|
||
DB 0x01 ; ‚¨¤ á®àâ¨à®¢ª¨
|
||
; ¡¨â 0 - ¯® ¨¬¥¨
|
||
; ¡¨â 1 - ¯® à áè¨à¥¨î
|
||
; ¡¨â 2 - ¯® à §¬¥àã
|
||
; ¡¨â 3 - ¯® ¤ â¥
|
||
; ¡¨â 4 - execute file
|
||
; ¡¨â 5 - file mask
|
||
DW 324 ; X ¯®§¨æ¨ï ¯ ¥«¨
|
||
DW 0 ; X ¯®§¨æ¨ï áªà®«¡ à
|
||
DW 0 ; Y ¯®§¨æ¨ï áªà®«¡ à
|
||
DW 0 ; Max ¤«¨ áªà®«¡ à
|
||
DW 0 ; ⥪.¤«¨ áªà®«¡ à
|
||
DW 0 ; €¤à¥á ï祩ª¨ BarLeft
|
||
DW 0 ; €¤à¥á ï祩ª¨ BarRight
|
||
DW 0 ; Š®«-¢® ä ©«®¢ áâà ¨æ¥
|
||
DW 0 ; ޡ饥 ª®«-¢® ä ©«®¢
|
||
DW 0 ; <20>¥à¢ë© ä ©« áâà ¨æ¥
|
||
DW 0 ; T¥ªã騩 ä ©« áâà ¨æ¥
|
||
DW 0 ; Š®«-¢® ¬ ન஢ ëå ä ©«®¢
|
||
DD 0 ; Š®«-¢® ¬ ન஢ ëå ¡ ©â®¢
|
||
DB 0
|
||
DB "*.*" ; Ma᪠¤«ï ä ©«®¢
|
||
DB 0x0A DUP 0
|
||
DB PANEL.CURR_PATH_Size DUP 0 ; <20>ãâì ª ⥪ã饩 ¤¨à¥ªâ®à¨¨
|
||
|
||
thanks DZ "\r\nThank you for using Flex Navigator.\r\n"
|
||
|
||
DOSError EX AF,AF'
|
||
GETPORT WINSP.CPU1
|
||
PUSH AF
|
||
LD A,(RAMPAGES.FNREZ2)
|
||
SETPORT WINSP.CPU1,,0
|
||
EX AF,AF'
|
||
CALL DOSErrorR
|
||
EX AF,AF'
|
||
POP AF
|
||
SETPORT WINSP.CPU1,,0
|
||
EX AF,AF'
|
||
RET
|
||
|
||
Resident LD (.ResCall),DE
|
||
IN B,(C)
|
||
PUSH BC
|
||
OUT (C),A
|
||
CALL 0x0000
|
||
.ResCall EQU $-2
|
||
POP BC
|
||
OUT (C),B
|
||
RET
|
||
|
||
; (ADR) + BCDE = BCDE
|
||
BCDEHLP: LD A,(HL)
|
||
INC HL
|
||
ADD A,E
|
||
LD E,A
|
||
LD A,(HL)
|
||
INC HL
|
||
ADC A,D
|
||
LD D,A
|
||
LD A,(HL)
|
||
INC HL
|
||
ADC A,C
|
||
LD C,A
|
||
LD A,(HL)
|
||
ADC A,B
|
||
LD B,A
|
||
RET
|
||
|
||
; (ADR) + BCDE = (ADR)
|
||
HLPBCDE: LD A,(HL)
|
||
ADD A,E
|
||
LD (HL),A
|
||
INC HL
|
||
LD A,(HL)
|
||
ADC A,D
|
||
LD (HL),A
|
||
INC HL
|
||
LD A,(HL)
|
||
ADC A,C
|
||
LD (HL),A
|
||
INC HL
|
||
LD A,(HL)
|
||
ADC A,B
|
||
LD (HL),A
|
||
INC HL
|
||
LD A,(HL)
|
||
ADC A,0
|
||
LD (HL),A
|
||
RET
|
||
|
||
GET_DWORD: LD E,(HL)
|
||
INC HL
|
||
LD D,(HL)
|
||
INC HL
|
||
LD C,(HL)
|
||
INC HL
|
||
LD B,(HL)
|
||
RET
|
||
|
||
SET_DWORD: LD (HL),E
|
||
INC HL
|
||
LD (HL),D
|
||
INC HL
|
||
LD (HL),C
|
||
INC HL
|
||
LD (HL),B
|
||
RET
|
||
|
||
; ¢ë§®¢ äãªæ¨¨ ¢ áâà ¨æ å
|
||
RESIDENT
|
||
; ==============resident 2==============
|
||
.CopyFiles: LD DE,CopyFilesR
|
||
.FunctResident: LD A,(RAMPAGES.FNREZ2)
|
||
LD C,WINSP.CPU1
|
||
JP Resident
|
||
|
||
.ReName: LD DE,ReNameR
|
||
jr .FunctResident
|
||
|
||
.MakeDIR: LD DE,MakeDIRR
|
||
jr .FunctResident
|
||
|
||
.DeleteFiles: LD DE,DeleteFilesR
|
||
jr .FunctResident
|
||
|
||
.Quit: CALL ResInvert
|
||
.QuitL1 LD DE,QuitConfirmWin
|
||
CALL .FunctResident
|
||
JP C,SetInvert
|
||
LD HL,ComExit
|
||
EX (SP),HL
|
||
RET
|
||
|
||
.Setup: LD DE,SetupR
|
||
jr .FunctResident
|
||
|
||
.QSearch: LD DE,QSearchR
|
||
jr .FunctResident
|
||
|
||
IF TREE_REZID
|
||
.TestTree LD DE,TestTreeR
|
||
jr .FunctResident
|
||
|
||
.TestTreeBeg LD DE,TestTreeR.TestTreeBeg
|
||
jr .FunctResident
|
||
|
||
.ReadTree LD DE,ReadTreeR
|
||
jr .FunctResident
|
||
|
||
.MakeTreePath LD DE,MakeTreePathR
|
||
jr .FunctResident
|
||
|
||
.FindTreeDIR LD DE,FindTreeDIRR
|
||
jr .FunctResident
|
||
ENDIF
|
||
; ==============resident 2==============
|
||
|
||
; ==============resident 3==============
|
||
.MarkFile: LD DE,MarkFileR
|
||
.HelpResident: LD A,(RAMPAGES.FNREZ3)
|
||
LD C,WINSP.CPU1
|
||
JP Resident
|
||
|
||
IF MARK_DIR
|
||
; áç¨â «ª ᮤ¥à¦¨¬®£® ¤¨à¥ªâ®à¨¨ ¢ ¡ ©â å
|
||
.CountingDir LD DE,CountingDirR
|
||
JR .HelpResident
|
||
|
||
; ¨¨æ¨ «¨§ æ¨ï ¯¥à¥¬¥ëå ¤«ï ª®¯¨à®¢ ¨ï ¤¨à¥ªâ®à¨¨
|
||
.InitCopyDirs LD DE,InitCopyDirsR
|
||
JR .HelpResident
|
||
|
||
; ª®¯¨à®¢ ¨¥ ¤¨à¥ªâ®à¨¨
|
||
.CopyDir LD DE,CopyDirR
|
||
JR .HelpResident
|
||
|
||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¤¨à¥ªâ®à¨¨ ¢ ᯨ᮪ ¨/¨«¨ ¢å®¤/¢ë室
|
||
.Add2ListDir LD DE,Add2ListDirR
|
||
JR .HelpResident
|
||
ENDIF
|
||
|
||
.UnMarkGroup: LD DE,UnMarkGroupR
|
||
jr .HelpResident
|
||
|
||
.UnMarkGroupN: LD DE,UnMarkGroupRN
|
||
jr .HelpResident
|
||
|
||
.MarkGroup: LD DE,MarkGroupR
|
||
jr .HelpResident
|
||
|
||
.MarkGroupN: LD DE,MarkGroupRN
|
||
jr .HelpResident
|
||
|
||
.SelectAll: LD DE,SelectAllR
|
||
jr .HelpResident
|
||
|
||
.SelectAllN: LD DE,SelectAllRN
|
||
jr .HelpResident
|
||
|
||
.UnSelectAll: LD DE,UnSelectAllR
|
||
jr .HelpResident
|
||
|
||
.UnSelectAllN: LD DE,UnSelectAllRN
|
||
jr .HelpResident
|
||
|
||
.InvertSelect: LD DE,InvertSelectR
|
||
jr .HelpResident
|
||
|
||
.InvertSelectN: LD DE,InvertSelectRN
|
||
jr .HelpResident
|
||
|
||
.PrintFile: CALL ResInvert
|
||
.PrintFileL3
|
||
LD HL,SetInvert
|
||
PUSH HL
|
||
LD DE,PrintFileR
|
||
jr .HelpResident
|
||
|
||
.FileInfo: CALL ResInvert
|
||
.FileInfoL2
|
||
LD HL,SetInvert
|
||
PUSH HL
|
||
LD DE,FileInfoR
|
||
jr .HelpResident
|
||
|
||
.Version: LD DE,VersionR
|
||
jr .HelpResident
|
||
|
||
.DiskInfo: CALL ResInvert
|
||
.DiskInfoL4:
|
||
LD DE,DiskInfoR
|
||
jr .HelpResident
|
||
|
||
.SystemInfo: LD DE,SystemInfoR
|
||
jr .HelpResident
|
||
; ==============resident 3==============
|
||
|
||
; ‚ë室
|
||
ComExit CALL ResDrivers
|
||
CALL ResVideoMode
|
||
LD HL,thanks
|
||
SPDSS DSSF.PCHARS
|
||
LD A,(RAMPAGES.FNPAGESID)
|
||
SPDSS DSSF.FREEMEM
|
||
SPDSS DSSF.EXIT,0
|
||
|
||
include fnwin.a80
|
||
include fnprint.a80
|
||
include fninput.a80
|
||
include fnbar.a80
|
||
include fnmouse.a80
|
||
include fnsys.a80
|
||
|
||
; ‘â àâ
|
||
MainStartFN: DI
|
||
LD SP,STACK
|
||
ReStartFN:
|
||
SETPORT BORDER,0
|
||
SETPORT WINSP.Y_PORT,0xC0
|
||
CALL InitVideoMode
|
||
CALL InitDrivers
|
||
CALL InitScreen
|
||
CALL ClearDOSline
|
||
SUB A
|
||
CALL InitPanels
|
||
CALL WaitUnpressMouse
|
||
MainLoop: LD IX,MAINTAB.FilePanelLeft
|
||
BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG)
|
||
JR Z,.L1
|
||
LD IX,MAINTAB.FilePanelRight
|
||
.L1 CALL CheckCoordsMouse
|
||
CALL TestKeys
|
||
CALL C,DOSline
|
||
LD A,(TreeFlag)
|
||
OR A
|
||
IF TREE_REZID
|
||
CALL NZ,RESIDENT.TestTree
|
||
ELSE
|
||
CALL NZ,TestTreeR
|
||
ENDIF
|
||
JR MainLoop
|
||
|
||
TestKeys
|
||
SPDSS DSSF.TESTKEY
|
||
JR Z,KeyExit
|
||
RES 7,D
|
||
LD A,B
|
||
AND KEYBSTAT.M_ALT | KEYBSTAT.M_CTRL
|
||
CP KEYBSTAT.M_ALT | KEYBSTAT.M_CTRL
|
||
RET Z
|
||
LD IX,HOTKEYS.SHIFTKeys
|
||
LD A,B
|
||
AND KEYBSTAT.M_LEFTSHIFT | KEYBSTAT.M_RIGHTSHIFT
|
||
JR NZ,.L1
|
||
LD IX,HOTKEYS.CTRLKeys
|
||
BIT KEYBSTAT.B_CTRL,B
|
||
JR NZ,.L1
|
||
LD IX,HOTKEYS.ALTKeys
|
||
BIT KEYBSTAT.B_ALT,B
|
||
JR NZ,.L1
|
||
LD IX,HOTKEYS.ASCIIKeys
|
||
.L1 LD L,(IX+0x00) ; ᪠ª®¤
|
||
INC IX
|
||
INC L
|
||
SCF
|
||
RET Z
|
||
DEC L
|
||
LD H,(IX+0x00) ; ASCII ª®¤
|
||
INC IX
|
||
LD C,(IX+0x00) ; LOW ¤à¥á ¢ë§®¢
|
||
INC IX
|
||
LD B,(IX+0x00) ; HIGH ¤à¥á ¢ë§®¢
|
||
INC IX
|
||
OR A
|
||
SBC HL,DE
|
||
JR NZ,.L1
|
||
LD (KeyCALL),BC
|
||
SPDSS DSSF.SCANKEY
|
||
CALL 0x0000
|
||
KeyCALL EQU $-2
|
||
KeyExit XOR A
|
||
RET
|
||
|
||
MouseOnOff LD A,(MouseFlag)
|
||
XOR 0x01
|
||
LD (MouseFlag),A
|
||
LD C,MOUSEF.INIT
|
||
JR NZ,.L1
|
||
LD C,MOUSEF.HIDE
|
||
.L1
|
||
SPMOUSE
|
||
RET
|
||
|
||
START_SORT
|
||
include fnsort.a80
|
||
END_SORT
|
||
IF TREE_REZID = 0
|
||
START_TREE
|
||
include fntree.a80
|
||
END_TREE
|
||
ENDIF
|
||
include fnpanel.a80
|
||
include fndos.a80
|
||
|
||
include fnwork.a80
|
||
include fnmenu.a80
|
||
include fninit.a80
|
||
include fndosline.a80
|
||
include fntab.a80
|
||
END_BLOCK_1:
|
||
DEPHASE ; BASE_ADDR
|
||
|
||
; ==============resident 2==============
|
||
PHASE 0x4000
|
||
START_BLOCK_2
|
||
include rez2_fnfunct.a80
|
||
include rez2_fnsearch.a80
|
||
include rez2_fnconfig.a80
|
||
include rez2_fnerror.a80
|
||
include rez2_fntab.a80
|
||
IF TREE_REZID
|
||
include fntree.a80
|
||
ENDIF
|
||
END_BLOCK_2:
|
||
DEPHASE ; 0x4000
|
||
; ==============resident 2==============
|
||
|
||
; ==============fonts==============
|
||
PHASE 0xC000
|
||
; MAIN.FNFONT
|
||
START_BLOCK_4
|
||
|
||
FONT_RAW_PACK binclude tmp/font_raw.pack
|
||
IFFFONT_RAW_PACK binclude tmp/iff_font_raw.pack
|
||
IFFFONT_RAW_END
|
||
|
||
END_BLOCK_4:
|
||
DEPHASE ; 0xC000
|
||
; ==============fonts==============
|
||
|
||
; ==============resident 3==============
|
||
PHASE 0x4000
|
||
; MAIN.FNREZ3
|
||
START_BLOCK_3
|
||
include rez3_fnnext.a80
|
||
include rez3_fnmark.a80
|
||
include rez3_fnmisc.a80
|
||
include rez3_fntab.a80
|
||
|
||
; ¡ãä¥à çâ®¡ë ¯ ¬ïâì ¥ § ¨¬ «¨ ¢ EXE ä ©«¥
|
||
BUFFERS
|
||
_INIT_VAR 0x8000 ; á ª®æ áâà ¨æë
|
||
_MINUSVAR .DOShistory, 0x200 ;times 0x200 db 0
|
||
|
||
_MINUSVAR .fnedit_ext, WorkBuffer_Size ;times 0x400 db 0
|
||
_MINUSVAR .fnview_ext, WorkBuffer_Size ;times 0x400 db 0
|
||
_MINUSVAR .fn_ext, WorkBuffer_Size ;times 0x400 db 0
|
||
|
||
_MINUSVAR .OLDPATH, 0x100 ; á®åà ¥ë© â¥ªã騩 ¯ãâì
|
||
_MINUSVAR .CURRPATHSRC, 0x100 ; ¢à¥¬¥®© ⥪ã騩 ¯ãâì ¨áâ®ç¨ª
|
||
_MINUSVAR .CURRPATHDST, 0x100 ; ¢à¥¬¥®© ⥪ã騩 ¯ãâì ¯à¨¥¬¨ª
|
||
_MINUSVAR .FINDBUF, 0x100 ; ¢à¥¬¥ë© ¡ãä¥à ¯®¨áª
|
||
_MINUSVAR .LEVEL_DIR, BYTE ; ⥪ã騩 ã஢¥ì ¤¨à¥ªâ®à¨¨
|
||
_MINUSVAR .ENDPATHSRC, WORD ; ¤à¥á 墮áâ ¯ã⨠¨áâ®ç¨ª
|
||
_MINUSVAR .ENDPATHDST, WORD ; ¤à¥á 墮áâ ¯ã⨠¯à¨¥¬¨ª
|
||
_MINUSVAR .CURR_DIRNAME, WORD ; ⥪ã騩 ¤à¥á ¢ ¯ãâ¨
|
||
END_BLOCK_3:
|
||
DEPHASE ; 0x4000
|
||
; ==============resident 3==============
|
||
|
||
; ç¨áâ® ¤«ï ®â« ¤ª¨
|
||
BLOCK1_SIZE EQU END_BLOCK_1 - START_BLOCK_1 ; ®á®¢®© ª®¤
|
||
BLOCK2_SIZE EQU END_BLOCK_2 - START_BLOCK_2 ; १¨¤¥â 2
|
||
BLOCK3_SIZE EQU END_BLOCK_3 - START_BLOCK_3 ; १¨¤¥â 3
|
||
SORT_SIZE EQU END_SORT - START_SORT ; á®àâ¨à®¢é¨ª
|
||
TREE_SIZE EQU END_TREE - START_TREE ; à ¡®â á ¤¥à¥¢®¬
|