mirror of
https://github.com/Tolik-Trek/FFORMAT.git
synced 2026-06-15 17:31:43 +03:00
Release 25/06/2025
This commit is contained in:
commit
477e4f8327
10
Build.sh
Executable file
10
Build.sh
Executable file
@ -0,0 +1,10 @@
|
|||||||
|
#! /bin/zsh
|
||||||
|
rm ./build/fmain.bin
|
||||||
|
rm ./build/format.hrs
|
||||||
|
sjasmplus --nologo -Wall --syntax=w --fullpath --msg=war --color=on --lst=./build/fmain.lst --raw=./build/fmain.bin ./fmain.asm
|
||||||
|
echo FMain compilation DONE
|
||||||
|
./mhmt -hst -zxh ./build/fmain.bin ./build/format.hrs
|
||||||
|
echo Packing fmain.bin DONE
|
||||||
|
echo Main compilation starts
|
||||||
|
sjasmplus --nologo -Wall --syntax=w --fullpath --msg=war --color=on --lst=./build/main.lst --raw=./build/fformat/fformat.exe ./main.asm
|
||||||
|
echo Main compilation DONE
|
||||||
877
DIALOG.ASM
877
DIALOG.ASM
File diff suppressed because it is too large
Load Diff
419
ESTEX.ASM
419
ESTEX.ASM
@ -8,113 +8,113 @@
|
|||||||
;--- Š®¯¨à®¢ ¨¥ á¨áâ. ä ©«®¢ ¢ ¡ãä¥àë
|
;--- Š®¯¨à®¢ ¨¥ á¨áâ. ä ©«®¢ ¢ ¡ãä¥àë
|
||||||
; ¢ëå: "CY" ¯à¨ ®è¨¡ª¥
|
; ¢ëå: "CY" ¯à¨ ®è¨¡ª¥
|
||||||
;
|
;
|
||||||
CopySysFiles: xor a
|
; CopySysFiles: xor a
|
||||||
ld (sFlag),a
|
; ld (sFlag),a
|
||||||
ld (bigFile),a
|
; ld (bigFile),a
|
||||||
ld a,(ColDialWn) ; á®åà. 梥⠮ª
|
; ld a,(ColDialWn) ; á®åà. 梥⠮ª
|
||||||
ld (TmpColor),a
|
; ld (TmpColor),a
|
||||||
; <20>®¬¥à § £à㧮箣® ¤¨áª
|
; ; <20>®¬¥à § £à㧮箣® ¤¨áª
|
||||||
ld bc,0009h
|
; ld bc,0009h
|
||||||
RST ToDSS
|
; RST ToDSS
|
||||||
ld (SysDisk),a
|
; ld (SysDisk),a
|
||||||
; “áâ ®¢¨âì ⥪ã騬 § £àã§®çë© ¤¨áª
|
; ; “áâ ®¢¨âì ⥪ã騬 § £àã§®çë© ¤¨áª
|
||||||
ld a,(SysDisk)
|
; ld a,(SysDisk)
|
||||||
ld c,1
|
; ld c,1
|
||||||
RST ToDSS
|
; RST ToDSS
|
||||||
; “áâ ®¢¨âì "ª®à¥ì" boot-¤¨áª
|
; ; “áâ ®¢¨âì "ª®à¥ì" boot-¤¨áª
|
||||||
ld hl,RootDir
|
; ld hl,RootDir
|
||||||
ld c,1Dh
|
; ld c,1Dh
|
||||||
RST ToDSS
|
; RST ToDSS
|
||||||
;<3B> ©â¨ ä ©« "SYSTEM.EXE"
|
; ;<3B> ©â¨ ä ©« "SYSTEM.EXE"
|
||||||
|
; ;ld hl,Name1
|
||||||
|
; ;call FirstFile
|
||||||
|
; ;jp c,NoFound ; ä ©« ¥ ©¤¥
|
||||||
|
; ; ®âªàëâì ä ©«
|
||||||
; ld hl,Name1
|
; ld hl,Name1
|
||||||
;call FirstFile
|
; call OpenFile
|
||||||
;jp c,NoFound ; ä ©« ¥ ©¤¥
|
; jp c,error1 ; ®è¨¡ª ®âªàëâ¨ï ä ©«
|
||||||
; ®âªàëâì ä ©«
|
; ld (hFile1),a
|
||||||
ld hl,Name1
|
; ; ¯à®ç¨â âì ä ©«
|
||||||
call OpenFile
|
; in a,(SLOT3)
|
||||||
jp c,error1 ; ®è¨¡ª ®âªàëâ¨ï ä ©«
|
; push af
|
||||||
ld (hFile1),a
|
; ld a,(hPages.SBuff0)
|
||||||
; ¯à®ç¨â âì ä ©«
|
; out (SLOT3),a ; ¯®¤ª«. ¡ãä¥à
|
||||||
in a,(Page3)
|
; ld a,(hFile1)
|
||||||
push af
|
; call ReadFile
|
||||||
ld a,(SBuff0)
|
; jp c,err1 ; ®è¨¡ª ç⥨ï ä ©«
|
||||||
out (Page3),a ; ¯®¤ª«. ¡ãä¥à
|
; pop af
|
||||||
ld a,(hFile1)
|
; out (SLOT3),a ; ¢®ááâ. áâà ¨æã
|
||||||
call ReadFile
|
; ld (Number1),de ; ç¨á«® ¯à®ç¨â ëå ¡ ©â
|
||||||
jp c,err1 ; ®è¨¡ª ç⥨ï ä ©«
|
; ; § ªàëâì ä ©«
|
||||||
pop af
|
; ld a,(hFile1)
|
||||||
out (Page3),a ; ¢®ááâ. áâà ¨æã
|
; call CloseFile
|
||||||
ld (Number1),de ; ç¨á«® ¯à®ç¨â ëå ¡ ©â
|
; jp c,error1 ; ®è¨¡ª § ªàëâ¨ï ä ©«
|
||||||
; § ªàëâì ä ©«
|
|
||||||
ld a,(hFile1)
|
|
||||||
call CloseFile
|
|
||||||
jp c,error1 ; ®è¨¡ª § ªàëâ¨ï ä ©«
|
|
||||||
|
|
||||||
;<3B> ©â¨ ä ©« "SYSTEM.DOS"
|
; ;<3B> ©â¨ ä ©« "SYSTEM.DOS"
|
||||||
|
; ;ld hl,Name2
|
||||||
|
; ;call FirstFile
|
||||||
|
; ;jp c,error1 ; ä ©« ¥ ©¤¥
|
||||||
|
; ; ®âªàëâì ä ©«
|
||||||
; ld hl,Name2
|
; ld hl,Name2
|
||||||
;call FirstFile
|
; call OpenFile
|
||||||
;jp c,error1 ; ä ©« ¥ ©¤¥
|
; jp c,error1 ; ®è¨¡ª ®âªàëâ¨ï ä ©«
|
||||||
; ®âªàëâì ä ©«
|
; ld (hFile2),a
|
||||||
ld hl,Name2
|
; ; ã§ âì à §¬¥à ä ©«
|
||||||
call OpenFile
|
; ld hl,0
|
||||||
jp c,error1 ; ®è¨¡ª ®âªàëâ¨ï ä ©«
|
; ld ix,0 ; ¬«.á«®¢®
|
||||||
ld (hFile2),a
|
; ld bc,0215h ; 㪠§ â¥«ì ®â ª®æ ä ©«
|
||||||
; ã§ âì à §¬¥à ä ©«
|
; RST ToDSS
|
||||||
ld hl,0
|
; jp c,error1
|
||||||
ld ix,0 ; ¬«.á«®¢®
|
; push ix
|
||||||
ld bc,0215h ; 㪠§ â¥«ì ®â ª®æ ä ©«
|
; pop hl
|
||||||
RST ToDSS
|
; ld de,4001h
|
||||||
jp c,error1
|
; ; hl >= de
|
||||||
push ix
|
; ld a,l
|
||||||
pop hl
|
; sub e
|
||||||
ld de,4001h
|
; ld l,a
|
||||||
; hl >= de
|
; ld a,h
|
||||||
ld a,l
|
; sbc a,d
|
||||||
sub e
|
; ld h,a
|
||||||
ld l,a
|
; inc hl
|
||||||
ld a,h
|
; ld (ost+1),hl ; á®åà. à §¬¥à ®áâ âª ä ©«
|
||||||
sbc a,d
|
; jr c,tinRead ; ä ©« < 1-© áâà ¨æë
|
||||||
ld h,a
|
; ld a,1
|
||||||
inc hl
|
; ld (bigFile),a ; ä ©« > 1-© áâà ¨æë
|
||||||
ld (ost+1),hl ; á®åà. à §¬¥à ®áâ âª ä ©«
|
; tinRead: ld (Number2),ix ; á®åà. à §¬¥à ä ©«
|
||||||
jr c,tinRead ; ä ©« < 1-© áâà ¨æë
|
; ; 㪠§ ⥫ì ç «® ä ©«
|
||||||
ld a,1
|
; ld hl,0
|
||||||
ld (bigFile),a ; ä ©« > 1-© áâà ¨æë
|
; ld ix,0 ; ¬«.á«®¢®
|
||||||
tinRead: ld (Number2),ix ; á®åà. à §¬¥à ä ©«
|
; ld a,(hFile2)
|
||||||
; 㪠§ ⥫ì ç «® ä ©«
|
; ld bc,0015h ; 㪠§ â¥«ì ®â ç « ä ©«
|
||||||
ld hl,0
|
; RST ToDSS
|
||||||
ld ix,0 ; ¬«.á«®¢®
|
; jp c,error1
|
||||||
ld a,(hFile2)
|
; ; ¯à®ç¨â âì ä ©«
|
||||||
ld bc,0015h ; 㪠§ â¥«ì ®â ç « ä ©«
|
; in a,(SLOT3)
|
||||||
RST ToDSS
|
; push af
|
||||||
jp c,error1
|
; ld a,(hPages.SBuff1)
|
||||||
; ¯à®ç¨â âì ä ©«
|
; out (SLOT3),a ; ¯®¤ª«. 1-î áâà ¨æã
|
||||||
in a,(Page3)
|
; ld a,(hFile2)
|
||||||
push af
|
; call ReadFile
|
||||||
ld a,(SBuff1)
|
; jp c,err1 ; ®è¨¡ª ç⥨ï ä ©«
|
||||||
out (Page3),a ; ¯®¤ª«. 1-î áâà ¨æã
|
; ld a,(bigFile)
|
||||||
ld a,(hFile2)
|
; or a
|
||||||
call ReadFile
|
; jr z,endRead ; ¯à®ç¨â ¢¥áì ä ©«
|
||||||
jp c,err1 ; ®è¨¡ª ç⥨ï ä ©«
|
; ; ç¨â ¥¬ ®áâ ⮪ ä ©«
|
||||||
ld a,(bigFile)
|
; ost: ld de,0
|
||||||
or a
|
; ld a,(hPages.SBuff2)
|
||||||
jr z,endRead ; ¯à®ç¨â ¢¥áì ä ©«
|
; out (SLOT3),a ; ¯®¤ª«. 2-î áâà ¨æã
|
||||||
; ç¨â ¥¬ ®áâ ⮪ ä ©«
|
; ld hl,WinBoxBuff ; ¡ãä¥à ¯®¤ ¤ ë¥
|
||||||
ost: ld de,0
|
; ld a,(hFile2)
|
||||||
ld a,(SBuff2)
|
; ld c,13h
|
||||||
out (Page3),a ; ¯®¤ª«. 2-î áâà ¨æã
|
; RST ToDSS
|
||||||
ld hl,WinBoxBuff ; ¡ãä¥à ¯®¤ ¤ ë¥
|
; jp c,err1 ; ®è¨¡ª ç⥨ï ä ©«
|
||||||
ld a,(hFile2)
|
; endRead: pop af
|
||||||
ld c,13h
|
; out (SLOT3),a ; ¢®ááâ. áâà ¨æã
|
||||||
RST ToDSS
|
; ; § ªàëâì ä ©«
|
||||||
jp c,err1 ; ®è¨¡ª ç⥨ï ä ©«
|
; ld a,(hFile2)
|
||||||
endRead: pop af
|
; call CloseFile
|
||||||
out (Page3),a ; ¢®ááâ. áâà ¨æã
|
; jp c,error1 ; ®è¨¡ª § ªàëâ¨ï ä ©«
|
||||||
; § ªàëâì ä ©«
|
; ret
|
||||||
ld a,(hFile2)
|
|
||||||
call CloseFile
|
|
||||||
jp c,error1 ; ®è¨¡ª § ªàëâ¨ï ä ©«
|
|
||||||
ret
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -125,7 +125,7 @@ sFlag: db 0
|
|||||||
sFlag1: db 0
|
sFlag1: db 0
|
||||||
|
|
||||||
; ä« £, 0/1 - "system.dos" ¬¥ìè¥/¡®«ìè¥ 1-© áâà ¨æë
|
; ä« £, 0/1 - "system.dos" ¬¥ìè¥/¡®«ìè¥ 1-© áâà ¨æë
|
||||||
bigFile: db 0
|
;bigFile: db 0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -145,64 +145,76 @@ WriteSysFiles: ld a,(sFlag)
|
|||||||
; áªàëâì ¬ëèªã
|
; áªàëâì ¬ëèªã
|
||||||
call HiddenMouse
|
call HiddenMouse
|
||||||
; “áâ. ⥪ã騩 ¤¨áª ¨ ¯ãâì ¤¨áª¥âã
|
; “áâ. ⥪ã騩 ¤¨áª ¨ ¯ãâì ¤¨áª¥âã
|
||||||
call SetDisketa
|
;call SetDisketa
|
||||||
; ‘®§¤ âì ä ©« "SYSTEM.EXE"
|
; ‘®§¤ âì ä ©« "SYSTEM.EXE"
|
||||||
ld hl,Name1 ; ¨¬ï ä ©«
|
;ld hl,Name1 ; ¨¬ï ä ©«
|
||||||
call CreateFile
|
;call CreateFile
|
||||||
jp c,error1 ; ®è¨¡ª á®§¤ ¨ï ä ©«
|
;jp c,error1 ; ®è¨¡ª á®§¤ ¨ï ä ©«
|
||||||
ld (hFile1),a
|
;ld (hFile1),a
|
||||||
; § ¯¨á âì ä ©«
|
;; § ¯¨á âì ä ©«
|
||||||
in a,(Page3)
|
;in a,(SLOT3)
|
||||||
push af
|
;push af
|
||||||
ld a,(SBuff0)
|
;ld a,(hPages.SBuff0)
|
||||||
out (Page3),a ; ¯®¤ª«. ¡ãä¥à
|
;out (SLOT3),a ; ¯®¤ª«. ¡ãä¥à
|
||||||
ld de,(Number1) ; ç¨á«® § ¯¨á. ¡ ©â
|
;ld de,(Number1) ; ç¨á«® § ¯¨á. ¡ ©â
|
||||||
ld a,(hFile1) ; åí¤«
|
;ld a,(hFile1) ; åí¤«
|
||||||
call WriteFile
|
;call WriteFile
|
||||||
ex af,af'
|
;ex af,af'
|
||||||
pop af
|
;pop af
|
||||||
out (Page3),a ; ¢®ááâ. áâà ¨æã
|
;out (SLOT3),a ; ¢®ááâ. áâà ¨æã
|
||||||
ex af,af'
|
;ex af,af'
|
||||||
jr c,error1 ; ®è¨¡ª § ¯¨á¨ ä ©«
|
;jr c,error1 ; ®è¨¡ª § ¯¨á¨ ä ©«
|
||||||
; § ªàëâì ä ©«
|
;; § ªàëâì ä ©«
|
||||||
ld a,(hFile1) ; åí¤«
|
;ld a,(hFile1) ; åí¤«
|
||||||
call CloseFile
|
;call CloseFile
|
||||||
jr c,error1 ; ®è¨¡ª § ªàëâ¨ï ä ©«
|
;jr c,error1 ; ®è¨¡ª § ªàëâ¨ï ä ©«
|
||||||
|
|
||||||
; ‘®§¤ âì ä ©« "SYSTEM.DOS"
|
; ‘®§¤ âì ä ©« "SYSTEM.DOS"
|
||||||
ld hl,Name2 ; ¨¬ï ä ©«
|
;ld hl,Name2 ; ¨¬ï ä ©«
|
||||||
call CreateFile
|
;call CreateFile
|
||||||
jr c,error1 ; ®è¨¡ª á®§¤ ¨ï ä ©«
|
;jr c,error1 ; ®è¨¡ª á®§¤ ¨ï ä ©«
|
||||||
ld (hFile2),a
|
;ld (hFile2),a
|
||||||
; § ¯¨á âì ä ©«
|
;; § ¯¨á âì ä ©«
|
||||||
in a,(Page3)
|
;in a,(SLOT3)
|
||||||
push af
|
;push af
|
||||||
ld a,(SBuff1)
|
;ld a,(hPages.SBuff1)
|
||||||
out (Page3),a ; ¯®¤ª«. 1-î áâà ¨æã
|
;out (SLOT3),a ; ¯®¤ª«. 1-î áâà ¨æã
|
||||||
ld de,(Number2) ; à §¬¥à "system.dos"
|
;ld de,(Number2) ; à §¬¥à "system.dos"
|
||||||
ld hl,4000h ; 1- áâà ¨æ
|
;ld hl,4000h ; 1- áâà ¨æ
|
||||||
ld a,(bigFile)
|
;ld a,(bigFile)
|
||||||
or a
|
;or a
|
||||||
jr z,tinFile ; ä ©« <= 1-© áâà ¨æë
|
;jr z,tinFile ; ä ©« <= 1-© áâà ¨æë
|
||||||
ex de,hl
|
;ex de,hl
|
||||||
sbc hl,de
|
;sbc hl,de
|
||||||
push hl
|
;push hl
|
||||||
ld a,(hFile2) ; åí¤«
|
;ld a,(hFile2) ; åí¤«
|
||||||
call WriteFile
|
;call WriteFile
|
||||||
pop de
|
;pop de
|
||||||
jr c,err1 ; ®è¨¡ª § ¯¨á¨ ä ©«
|
;jr c,err1 ; ®è¨¡ª § ¯¨á¨ ä ©«
|
||||||
ld a,(SBuff2)
|
;ld a,(hPages.SBuff2)
|
||||||
out (Page3),a ; ¯®¤ª«. 2-î áâà ¨æã
|
;out (SLOT3),a ; ¯®¤ª«. 2-î áâà ¨æã
|
||||||
|
;
|
||||||
|
; tinFile: ld a,(hFile2) ; åí¤«
|
||||||
|
; call WriteFile
|
||||||
|
; jr c,err1 ; ®è¨¡ª § ¯¨á¨ ä ©«
|
||||||
|
; pop af
|
||||||
|
; out (SLOT3),a ; ¢®ááâ. áâà ¨æã
|
||||||
|
; ; § ªàëâì ä ©«
|
||||||
|
; ld a,(hFile2) ; åí¤«
|
||||||
|
; call CloseFile
|
||||||
|
; jr c,error1 ; ®è¨¡ª § ªàëâ¨ï ä ©«
|
||||||
|
;
|
||||||
|
;
|
||||||
|
; § ¯¨áì § £àã§ç¨ª ç¥à¥§ sys
|
||||||
|
ld hl,.sys_name
|
||||||
|
ld a,(DskName)
|
||||||
|
ld (.sys_prm_disk),a
|
||||||
|
ld bc,Dss.Exec
|
||||||
|
rst ToDSS
|
||||||
|
;
|
||||||
|
jr c,.error1
|
||||||
|
and a
|
||||||
|
jr nz,.error1
|
||||||
;
|
;
|
||||||
tinFile: ld a,(hFile2) ; åí¤«
|
|
||||||
call WriteFile
|
|
||||||
jr c,err1 ; ®è¨¡ª § ¯¨á¨ ä ©«
|
|
||||||
pop af
|
|
||||||
out (Page3),a ; ¢®ááâ. áâà ¨æã
|
|
||||||
; § ªàëâì ä ©«
|
|
||||||
ld a,(hFile2) ; åí¤«
|
|
||||||
call CloseFile
|
|
||||||
jr c,error1 ; ®è¨¡ª § ªàëâ¨ï ä ©«
|
|
||||||
; ¢®ááâ. ¤¨áª ¨ ¯ãâì
|
; ¢®ááâ. ¤¨áª ¨ ¯ãâì
|
||||||
call RestPath
|
call RestPath
|
||||||
; § ªàëâì ®ª® "‡ ¯¨áì á¨áâ. ä ©«®¢"
|
; § ªàëâì ®ª® "‡ ¯¨áì á¨áâ. ä ©«®¢"
|
||||||
@ -226,10 +238,10 @@ tinFile: ld a,(hFile2) ;
|
|||||||
ld (ColDialWn),a ; ¢®ááâ. ¯à¥¦îî ãáâ ®¢ªã 梥⠮ª
|
ld (ColDialWn),a ; ¢®ááâ. ¯à¥¦îî ãáâ ®¢ªã 梥⠮ª
|
||||||
ret
|
ret
|
||||||
;
|
;
|
||||||
err1: pop af
|
; err1: pop af
|
||||||
out (Page3),a ; ¢®ááâ. áâà ¨æã
|
; out (SLOT3),a ; ¢®ááâ. áâà ¨æã
|
||||||
;
|
;
|
||||||
error1: call RestPath ; ¢®ááâ. ¤¨áª ¨ ¯ãâì
|
.error1: call RestPath ; ¢®ááâ. ¤¨áª ¨ ¯ãâì
|
||||||
ld a,40h
|
ld a,40h
|
||||||
ld (ColDialWn),a
|
ld (ColDialWn),a
|
||||||
ld hl,ErrSysFiles
|
ld hl,ErrSysFiles
|
||||||
@ -239,18 +251,19 @@ error1: call RestPath ;
|
|||||||
ld a,1
|
ld a,1
|
||||||
ld (sFlag),a
|
ld (sFlag),a
|
||||||
ret
|
ret
|
||||||
|
.sys_name: db "SYS.EXE "
|
||||||
|
.sys_prm_disk: dz "A: 1"
|
||||||
|
|
||||||
|
|
||||||
|
; SetDisketa: ; “áâ. ⥪ã騩 ¤¨áª ä®à¬ â. ¤¨áª¥âã
|
||||||
SetDisketa: ; “áâ. ⥪ã騩 ¤¨áª ä®à¬ â. ¤¨áª¥âã
|
; ld a,(DISK)
|
||||||
ld a,(DISK)
|
; ld c,1
|
||||||
ld c,1
|
; RST ToDSS
|
||||||
RST ToDSS
|
; ; “áâ. "ª®à¥ì" ¤¨áª¥âë
|
||||||
; “áâ. "ª®à¥ì" ¤¨áª¥âë
|
; ld hl,RootDir
|
||||||
ld hl,RootDir
|
; ld c,1Dh
|
||||||
ld c,1Dh
|
; RST ToDSS
|
||||||
RST ToDSS
|
; ret
|
||||||
ret
|
|
||||||
|
|
||||||
RestPath: ; ‚®ááâ. ⥪ã騩 ¤¨áª
|
RestPath: ; ‚®ááâ. ⥪ã騩 ¤¨áª
|
||||||
; ld a,(CurDisk)
|
; ld a,(CurDisk)
|
||||||
@ -274,10 +287,10 @@ FirstFile: ld bc,0019h ;
|
|||||||
|
|
||||||
|
|
||||||
; ‘®§¤ âì ä ©«
|
; ‘®§¤ âì ä ©«
|
||||||
CreateFile: ld c,0Ah
|
; CreateFile: ld c,0Ah
|
||||||
ld a,20h ; âਡãâ " à娢ë©"
|
; ld a,20h ; âਡãâ " à娢ë©"
|
||||||
RST ToDSS
|
; RST ToDSS
|
||||||
ret
|
; ret
|
||||||
|
|
||||||
|
|
||||||
; Žâªàëâì ä ©«
|
; Žâªàëâì ä ©«
|
||||||
@ -288,18 +301,18 @@ OpenFile: ld c,11h
|
|||||||
|
|
||||||
|
|
||||||
; <20>à®ç¨â âì ä ©«
|
; <20>à®ç¨â âì ä ©«
|
||||||
ReadFile: ld hl,WinBoxBuff ;L4000 ¡ãä¥à ¯®¤ ¤ ë¥
|
; ReadFile: ld hl,WinBoxBuff ;L4000 ¡ãä¥à ¯®¤ ¤ ë¥
|
||||||
ld de,4000h ; ç¨á«® ç¨â ¥¬ëå ¡ ©â (1 áâà ¨æ )
|
; ld de,4000h ; ç¨á«® ç¨â ¥¬ëå ¡ ©â (1 áâà ¨æ )
|
||||||
ld c,13h
|
; ld c,13h
|
||||||
RST ToDSS
|
; RST ToDSS
|
||||||
ret
|
; ret
|
||||||
|
|
||||||
|
|
||||||
; ‡ ¯¨áì ä ©«
|
; ‡ ¯¨áì ä ©«
|
||||||
WriteFile: ld hl,WinBoxBuff ;L4000 ¡ãä¥à ¤ ëå
|
; WriteFile: ld hl,WinBoxBuff ;L4000 ¡ãä¥à ¤ ëå
|
||||||
ld c,14h
|
; ld c,14h
|
||||||
RST ToDSS
|
; RST ToDSS
|
||||||
ret
|
; ret
|
||||||
|
|
||||||
|
|
||||||
; ‡ ªàëâì ä ©«
|
; ‡ ªàëâì ä ©«
|
||||||
@ -312,18 +325,17 @@ CloseFile: ld c,12h
|
|||||||
|
|
||||||
|
|
||||||
SysDisk: db 0 ; ®¬¥à § £à. ¤¨áª
|
SysDisk: db 0 ; ®¬¥à § £à. ¤¨áª
|
||||||
Name1: db "SYSTEM.EXE",0
|
;Name1: db "SYSTEM.EXE",0
|
||||||
Name2: db "SYSTEM.DOS",0
|
;Name2: db "SYSTEM.DOS",0
|
||||||
;Name2: db "DIAL.TXT",0
|
;Name2: db "DIAL.TXT",0
|
||||||
hFile1: db 0 ; åí¤« ä ©« "system.exe"
|
;hFile1: db 0 ; åí¤« ä ©« "system.exe"
|
||||||
hFile2: db 0 ; åí¤« ä ©« "system.dos"
|
;hFile2: db 0 ; åí¤« ä ©« "system.dos"
|
||||||
Number1: dw 0 ; à §¬¥à ä ©« "system.exe"
|
;Number1: dw 0 ; à §¬¥à ä ©« "system.exe"
|
||||||
Number2: dw 0 ; à §¬¥à ä ©« "system.dos"
|
;Number2: dw 0 ; à §¬¥à ä ©« "system.dos"
|
||||||
RootDir: db '\',0 ;
|
;RootDir: db '\',0 ;
|
||||||
;
|
;
|
||||||
CurPath:
|
|
||||||
CurDisk: db 0,':\' ; á®åà. ⥪. ¤¨áª
|
CurDisk: db 0,':\' ; á®åà. ⥪. ¤¨áª
|
||||||
CurDir: ds 256 ; á®åà. ⥪ã騩 ¯ãâì (ª â «®£)
|
|
||||||
;
|
;
|
||||||
TmpColor: db 0 ; ¢à¥¬. á®åà. 梥⠮ª
|
TmpColor: db 0 ; ¢à¥¬. á®åà. 梥⠮ª
|
||||||
|
|
||||||
@ -331,7 +343,6 @@ TmpColor: db 0 ;
|
|||||||
IniName: db "FFORMAT.INI",0
|
IniName: db "FFORMAT.INI",0
|
||||||
hFile3: db 0 ; ¤¥áªà¨¯â®à ä ©«
|
hFile3: db 0 ; ¤¥áªà¨¯â®à ä ©«
|
||||||
;Number3:dw 0 ; à §¬¥à ä ©« "fformat.ini"
|
;Number3:dw 0 ; à §¬¥à ä ©« "fformat.ini"
|
||||||
BuffName: ds 45 ; ¡ãä¥à ¤«ï äãªæ¨¨ ¯®¨áª ä ©«
|
|
||||||
|
|
||||||
TrdName: db "BOOT.$B",0 ; ¨¬ï trd-boot ä ©«
|
TrdName: db "BOOT.$B",0 ; ¨¬ï trd-boot ä ©«
|
||||||
hFile4: db 0 ; ¤¥áªà¨¯â®à ä ©«
|
hFile4: db 0 ; ¤¥áªà¨¯â®à ä ©«
|
||||||
@ -348,9 +359,9 @@ compare_page: ld c,0C6h ;
|
|||||||
ld a,1 ;¯ à ¬¥âàë 1-£® ®ª
|
ld a,1 ;¯ à ¬¥âàë 1-£® ®ª
|
||||||
RST ToBIOS
|
RST ToBIOS
|
||||||
ld a,c ;¢®â §¤¥áì ¨¤¥â áp ¢¥¨¥ áç¨â ®£®
|
ld a,c ;¢®â §¤¥áì ¨¤¥â áp ¢¥¨¥ áç¨â ®£®
|
||||||
cp Page1 ;®¬¥p ¯®pâ á ⥬, ª®â®pë© ï î§ î
|
cp SLOT1 ;®¬¥p ¯®pâ á ⥬, ª®â®pë© ï î§ î
|
||||||
jr z,.loc1
|
jr z,.loc1
|
||||||
; ãáâ. ®¢ë© ®¬¥à Page1
|
; ãáâ. ®¢ë© ®¬¥à SLOT1
|
||||||
ld (port1+1),a
|
ld (port1+1),a
|
||||||
ld (port2+1),a
|
ld (port2+1),a
|
||||||
ld (port3+1),a
|
ld (port3+1),a
|
||||||
@ -359,9 +370,9 @@ compare_page: ld c,0C6h ;
|
|||||||
ld a,3 ;¯ à ¬¥âàë 3-£® ®ª
|
ld a,3 ;¯ à ¬¥âàë 3-£® ®ª
|
||||||
RST ToBIOS
|
RST ToBIOS
|
||||||
ld a,c
|
ld a,c
|
||||||
cp Page3
|
cp SLOT3
|
||||||
ret z
|
ret z
|
||||||
; ãáâ. ®¢ë© ®¬¥à Page3
|
; ãáâ. ®¢ë© ®¬¥à SLOT3
|
||||||
ld (port5+1),a
|
ld (port5+1),a
|
||||||
ld (port6+1),a
|
ld (port6+1),a
|
||||||
ld (port7+1),a
|
ld (port7+1),a
|
||||||
@ -568,10 +579,10 @@ CopyBootTRD: xor a
|
|||||||
jr c,trd_err ; ®è¨¡ª ®âªàëâ¨ï
|
jr c,trd_err ; ®è¨¡ª ®âªàëâ¨ï
|
||||||
ld (hFile4),a
|
ld (hFile4),a
|
||||||
; ¯à®ç¨â âì ä ©«
|
; ¯à®ç¨â âì ä ©«
|
||||||
in a,(Page3)
|
in a,(SLOT3)
|
||||||
push af
|
push af
|
||||||
ld a,(TRBoot)
|
ld a,(hPages.TRBoot)
|
||||||
out (Page3),a ; ¯®¤ª«. ¡ãä¥à
|
out (SLOT3),a ; ¯®¤ª«. ¡ãä¥à
|
||||||
; ç¨â ¥¬ § £®«®¢®ª ¡ãâ
|
; ç¨â ¥¬ § £®«®¢®ª ¡ãâ
|
||||||
ld hl,NameBt ; ¡ãä¥à ¯®¤ ¤ ë¥
|
ld hl,NameBt ; ¡ãä¥à ¯®¤ ¤ ë¥
|
||||||
ld de,17 ; ç¨á«® ç¨â ¥¬ëå ¡ ©â
|
ld de,17 ; ç¨á«® ç¨â ¥¬ëå ¡ ©â
|
||||||
@ -591,7 +602,7 @@ CopyBootTRD: xor a
|
|||||||
ld c,13h
|
ld c,13h
|
||||||
RST ToDSS
|
RST ToDSS
|
||||||
pop af
|
pop af
|
||||||
out (Page3),a ; ¢®ááâ. áâà ¨æã
|
out (SLOT3),a ; ¢®ááâ. áâà ¨æã
|
||||||
; § ªàëâì ä ©«
|
; § ªàëâì ä ©«
|
||||||
ld a,(hFile4)
|
ld a,(hFile4)
|
||||||
jp CloseFile
|
jp CloseFile
|
||||||
|
|||||||
22
EXIT.ASM
22
EXIT.ASM
@ -26,24 +26,20 @@ sys_cursor_coords+1:
|
|||||||
ld bc,3135h
|
ld bc,3135h
|
||||||
rst 0x10
|
rst 0x10
|
||||||
; ®á¢®¡. ¢ë¤¥«¥ë© ¡«®ª ¯ ¬ïâ¨
|
; ®á¢®¡. ¢ë¤¥«¥ë© ¡«®ª ¯ ¬ïâ¨
|
||||||
ld a,(hBlock)
|
; ld a,(hBlock)
|
||||||
ld c,3Eh
|
; ld c,3Eh
|
||||||
rst 0x10
|
; rst 0x10
|
||||||
jr nc,quit
|
; jr nc,quit
|
||||||
ld hl,NoFree
|
; ld hl,NoFree
|
||||||
call Print
|
; call Print
|
||||||
ld b,-1 ; ª®¤ ®è¨¡ª¨
|
; ld b,-1 ; ª®¤ ®è¨¡ª¨
|
||||||
jr quit1
|
; jr quit1
|
||||||
quit: ld b,0
|
quit: ld b,0
|
||||||
quit1: ld c,41h ; ¢ë©â¨ ¢ Estex
|
quit1: ld c,41h ; ¢ë©â¨ ¢ Estex
|
||||||
rst 0x10
|
rst 0x10
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
NoFree: db "Error free block memory !",0Dh,0Ah,0
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
; ‚뢮¤ áâப¨ íªà
|
; ‚뢮¤ áâப¨ íªà
|
||||||
Print: ld c,5Ch
|
Print: ld c,5Ch
|
||||||
@ -62,7 +58,7 @@ _skrn: di
|
|||||||
ld ix,WinBoxBuff ; Address Box buffers
|
ld ix,WinBoxBuff ; Address Box buffers
|
||||||
ld hl,2050h ; Y/X à §¬¥à ®ª
|
ld hl,2050h ; Y/X à §¬¥à ®ª
|
||||||
ld de,0000h ; Y/X ¯®«®¦. ®ª
|
ld de,0000h ; Y/X ¯®«®¦. ®ª
|
||||||
ld a,(Win1) ; Page buffer
|
ld a,(hPages.Win1) ; Page buffer
|
||||||
ld b,a
|
ld b,a
|
||||||
xor a
|
xor a
|
||||||
RST ToBIOS
|
RST ToBIOS
|
||||||
|
|||||||
154
FMAIN.ASM
154
FMAIN.ASM
@ -8,34 +8,17 @@
|
|||||||
;
|
;
|
||||||
;
|
;
|
||||||
|
|
||||||
define release 1 ; ०¨¬ ª®¬¯¨«ï樨 ¨á室¨ª
|
; !TODO ¡à âì § £àã§®çë© á¥ªâ®à á á¨á⥬®£® ¤¨áª , ¥ â ᪠âì ¢ ᥡ¥
|
||||||
|
; !TODO ¯¥à¥¤¥« âì ¯®¤ § ¯¨áì § £àã§ç¨ª ®¢®£® ¤®á , ª®â®àë© ¡®«ìè¥ 3-å ᥪâ®à®¢
|
||||||
|
|
||||||
; ; ®¯¨á ¨¥ ds xx
|
|
||||||
; %imacro ds 1
|
|
||||||
; times %1 db 0
|
|
||||||
; %endmacro
|
|
||||||
|
|
||||||
; ; ®¯¨á ¨¥ ds xx,yy
|
|
||||||
; %imacro ds 2
|
|
||||||
; times %1 db %2
|
|
||||||
; %endmacro
|
|
||||||
|
|
||||||
include './shared_includes/constants/dss_equ.inc'
|
include './shared_includes/constants/dss_equ.inc'
|
||||||
include './shared_includes/constants/bios_equ.inc'
|
include './shared_includes/constants/bios_equ.inc'
|
||||||
|
include './shared_includes/constants/sp2000.inc'
|
||||||
|
include './shared_includes/structures/FileSystem.inc'
|
||||||
|
include 'version.inc'
|
||||||
|
|
||||||
|
|
||||||
SysPort equ 0x3C ; á¨áâ. ¯®àâ (¡¥§ ¯®¤ª«. <20>‡“ ¡¨®á )
|
|
||||||
Page1 equ 0xA2 ; ¯®àâ 1-© áâà ¨æë
|
|
||||||
Page3 equ 0xE2 ; ¯®àâ 3-© áâà ¨æë
|
|
||||||
WinBoxBuff equ 0xC000 ; ç «® ¡ãä¥à
|
WinBoxBuff equ 0xC000 ; ç «® ¡ãä¥à
|
||||||
|
|
||||||
; ¢¥àá¨ï ¯à®£à ¬¬ë
|
|
||||||
major_version equ 1
|
|
||||||
minor_version equ 13
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if release
|
if release
|
||||||
@ -45,7 +28,7 @@ minor_version equ 13
|
|||||||
|
|
||||||
db 'EX' ; exe ID
|
db 'EX' ; exe ID
|
||||||
db 'E' ; exe ⨯
|
db 'E' ; exe ⨯
|
||||||
db 0 ; exe ¢¥àá¨ï
|
db 1 ; exe ¢¥àá¨ï
|
||||||
dw 512 ; ¬«. ᬥé. ª®¤
|
dw 512 ; ¬«. ᬥé. ª®¤
|
||||||
dw 0 ; áâ. ᬥé. ª®¤
|
dw 0 ; áâ. ᬥé. ª®¤
|
||||||
dw 0 ; end-beg, ¯¥à¢¨çë© § £àã§ç¨ª
|
dw 0 ; end-beg, ¯¥à¢¨çë© § £àã§ç¨ª
|
||||||
@ -65,18 +48,18 @@ Start: ld sp,Stack
|
|||||||
RST ToBIOS
|
RST ToBIOS
|
||||||
; áà ¢¨âì ¨á¯. ®¬¥à ¯®à⮢ áâà ¨æ á ®¬¥à ¬¨ ¯®à⮢ <20>¨®á
|
; áà ¢¨âì ¨á¯. ®¬¥à ¯®à⮢ áâà ¨æ á ®¬¥à ¬¨ ¯®à⮢ <20>¨®á
|
||||||
;call compare_page
|
;call compare_page
|
||||||
; ¢ë¤¥«ï¥¬ ¡«®ª ¢ 8 áâà ¨æ
|
; ¢ë¤¥«ï¥¬ ¡«®ª ¢ hPages.Size áâà ¨æ
|
||||||
ld bc,8*256 + Dss.GetMem ;!HARDCODE
|
ld bc,hPages.Size*256 + Dss.GetMem
|
||||||
RST ToDSS
|
RST ToDSS
|
||||||
jr c,err_mem ; ¥â ¯ ¬ïâ¨
|
jr c,err_mem ; ¥â ¯ ¬ïâ¨
|
||||||
ld (hBlock),a ; åí¤« ¡«®ª
|
;ld (hBlock),a ; åí¤« ¡«®ª
|
||||||
; á®§¤ âì ᯨ᮪ ¢ë¤¥«. áâà ¨æ
|
; á®§¤ âì ᯨ᮪ ¢ë¤¥«. áâà ¨æ
|
||||||
ld hl,hPages
|
ld hl,hPages
|
||||||
ld c,0C5h
|
ld c,0C5h
|
||||||
RST ToBIOS
|
RST ToBIOS
|
||||||
; ¢ª«. à ¡®çãî áâà ¨æã ¢ Page3 (¨á¯. ¤«ï ¡ãä¥à á¨áâ. ®¡« á⨠¤¨áª¥âë)
|
; ¢ª«. à ¡®çãî áâà ¨æã ¢ SLOT3 (¨á¯. ¤«ï ¡ãä¥à á¨áâ. ®¡« á⨠¤¨áª¥âë)
|
||||||
ld a,(BuffSys)
|
ld a,(hPages.BuffSys2)
|
||||||
out (Page3),a
|
out (SLOT3),a
|
||||||
; ®ç¨áâ¨âì ¡ãä¥à ª« ¢ë
|
; ®ç¨áâ¨âì ¡ãä¥à ª« ¢ë
|
||||||
ld bc,Dss.ScanKey*256 + Dss.K_CLEAR
|
ld bc,Dss.ScanKey*256 + Dss.K_CLEAR
|
||||||
RST ToDSS
|
RST ToDSS
|
||||||
@ -112,29 +95,13 @@ err_mem: ld hl,NoMem
|
|||||||
NoMem: db "Not enough memory !",0Dh,0Ah,0
|
NoMem: db "Not enough memory !",0Dh,0Ah,0
|
||||||
|
|
||||||
|
|
||||||
hBlock: db 0 ; åí¤« ¢ë¤¥«. ¡«®ª
|
|
||||||
hPages:
|
|
||||||
BuffSys: db 0 ; åí¤« à ¡®ç¥© áâà ¨æë (+¤«ï á¨áâ. ®¡« áâ¨)
|
|
||||||
BuffTrk: db 0 ; åí¤« áâà. ¡ãä¥à áâàãªâãàë ¤®à®¦ª¨ (¨ "system.exe")
|
|
||||||
Win1: db 0 ; åí¤« áâà. á®åà. íªà
|
|
||||||
Win2: db 0 ; åí¤« áâà. á®åà. £«. ®ª® ä®à¬ ⨫ª¨
|
|
||||||
TRBoot: db 0 ; åí¤« ¡ãä¥à § £àã§ç¨ª TR-DOS
|
|
||||||
SBuff0: db 0 ; åí¤« ¡ãä¥à "system.exe"
|
|
||||||
SBuff1: db 0 ; åí¤«ë ¡ãä¥à ¯®¤
|
|
||||||
SBuff2: db 0 ; ä ©« "system.dos"
|
|
||||||
db 0xFF ; á⮯-¡ ©â ᯨáª
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
;[]=================== <20> ç «® ¯à®£à ¬¬ë =========================[]
|
;[]=================== <20> ç «® ¯à®£à ¬¬ë =========================[]
|
||||||
|
|
||||||
Begin: ; á®åà. íªà
|
Begin: ; á®åà. íªà
|
||||||
call SaveScreen
|
call SaveScreen
|
||||||
; á®åà. ¯®«®¦. ªãàá®à á¨áâ. íªà
|
; á®åà. ¯®«®¦. ªãàá®à á¨áâ. íªà
|
||||||
ld c,8Eh
|
ld c,BIOS.LP_GET_PLACE
|
||||||
RST ToBIOS
|
RST ToBIOS
|
||||||
ld (sys_cursor_coords),de
|
ld (sys_cursor_coords),de
|
||||||
; ¨¨æ. ¤à ©¢¥à ¬ë誨
|
; ¨¨æ. ¤à ©¢¥à ¬ë誨
|
||||||
@ -148,47 +115,61 @@ Begin: ;
|
|||||||
RST ToDSS
|
RST ToDSS
|
||||||
continue: call ReadInit ; ç⥨¥ "fformat.ini" ¨ áâனª
|
continue: call ReadInit ; ç⥨¥ "fformat.ini" ¨ áâனª
|
||||||
call CopyBootTRD ; ᪮¯¨à. ¡ãâ ¨§ "boot.$b" (¥á«¨ ¥áâì)
|
call CopyBootTRD ; ᪮¯¨à. ¡ãâ ¨§ "boot.$b" (¥á«¨ ¥áâì)
|
||||||
|
;call CopySysFiles ; ᪮¯¨à. á¨áâ. ä ©«ë ¢ ¡ãä¥àë
|
||||||
call CopySysFiles ; ᪮¯¨à. á¨áâ. ä ©«ë ¢ ¡ãä¥àë
|
;[]==============================================================[]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
include "dialog.asm"
|
include "dialog.asm"
|
||||||
include "listbox.asm"
|
include "listbox.asm"
|
||||||
include "radio.asm"
|
include "radio.asm"
|
||||||
include "mouse.asm"
|
include "mouse.asm"
|
||||||
include "map.asm"
|
include "map.asm"
|
||||||
|
include "exit.asm"
|
||||||
|
include "estex.asm"
|
||||||
|
include "format.asm"
|
||||||
|
;[]==============================================================[]
|
||||||
|
|
||||||
|
|
||||||
|
;[]==============================================================[]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
NoMouse: db "Driver mouse not installed",0Dh,0Ah,0
|
||||||
|
Title: db " Floppy disk formatting utility. Version "
|
||||||
|
db major_version + "0","."
|
||||||
|
db (minor_version / 10) + "0",(minor_version % 10) + "0"
|
||||||
|
;db " (c) 2005-2025 "
|
||||||
|
db " (c) 2005-2025 Sprinter Team "
|
||||||
|
;
|
||||||
|
;ds 562 ; 565 + start2 = 672 (_2 -_1)
|
||||||
|
;[]==============================================================[]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
; ¢¥ªâ®à ¤«ï ®â®¡à ¦¥¨ï ªãàá®à
|
;[]==============================================================[]
|
||||||
rst38: di
|
;hBlock: db 0 ; åí¤« ¢ë¤¥«. ¡«®ª
|
||||||
push iy
|
hPages:
|
||||||
push ix
|
.BuffSys2: db #FF ; åí¤« à ¡®ç¥© áâà ¨æë (+¤«ï á¨áâ. ®¡« áâ¨)
|
||||||
push hl
|
.BuffTrk: db #FF ; åí¤« áâà. ¡ãä¥à áâàãªâãàë ¤®à®¦ª¨ (¨ "system.exe")
|
||||||
push de
|
.Win1: db #FF ; åí¤« áâà. á®åà. íªà
|
||||||
push bc
|
.Win2: db #FF ; åí¤« áâà. á®åà. £«. ®ª® ä®à¬ ⨫ª¨
|
||||||
push af
|
.TRBoot: db #FF ; åí¤« ¡ãä¥à § £àã§ç¨ª TR-DOS
|
||||||
ld a,(CurILFl)
|
;.SBuff0: db #FF ; åí¤« ¡ãä¥à "system.exe"
|
||||||
or a
|
;.SBuff1: db #FF ; åí¤«ë ¡ãä¥à ¯®¤
|
||||||
call nz,PrnILCr
|
;.SBuff2: db #FF ; ä ©« "system.dos"
|
||||||
pop af
|
.Size equ $-hPages
|
||||||
pop bc
|
db 0xFF ; á⮯-¡ ©â ᯨáª
|
||||||
pop de
|
|
||||||
pop hl
|
|
||||||
pop ix
|
|
||||||
pop iy
|
|
||||||
vect: jp 0x0000 ; ¤à¥á á¨áâ. ¢¥ªâ®à
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
; ¡ãä¥à ¤«ï äãªæ¨¨ ¯®¨áª ä ©«
|
||||||
|
BuffName: ds 45
|
||||||
|
; á®åà. ⥪ã騩 ¯ãâì (ª â «®£)
|
||||||
|
CurDir: ds 256
|
||||||
|
|
||||||
; <20> ¡®ç¨© ¡ãä¥à Input Line
|
; <20> ¡®ç¨© ¡ãä¥à Input Line
|
||||||
CompBuff: ds 16
|
CompBuff: ds 16
|
||||||
|
|
||||||
_1:
|
; _1:
|
||||||
DialData: ds 16
|
DialData: ds 16
|
||||||
|
|
||||||
; <20>ãä¥à § £®«®¢ª ¢ë¢®¤. ®ª
|
; <20>ãä¥à § £®«®¢ª ¢ë¢®¤. ®ª
|
||||||
@ -198,28 +179,23 @@ DialTab: ds 128
|
|||||||
|
|
||||||
; <20>ãä¥à ¯®¤ ®¡ê¥ªâë
|
; <20>ãä¥à ¯®¤ ®¡ê¥ªâë
|
||||||
ReCompBuff: ds 512
|
ReCompBuff: ds 512
|
||||||
|
;[]==============================================================[]
|
||||||
_2:
|
|
||||||
NoMouse: db "Driver mouse not installed",0Dh,0Ah,0
|
|
||||||
Title: db " Floppy disk formatting utility Version "
|
|
||||||
db major_version + "0","."
|
|
||||||
db (minor_version / 10) + "0",(minor_version % 10) + "0"
|
|
||||||
db " (c) 2005-2007 "
|
|
||||||
;
|
|
||||||
ds 562 ; 565 + start2 = 672 (_2 -_1)
|
|
||||||
|
|
||||||
|
|
||||||
|
;[]==============================================================[]
|
||||||
include "exit.asm"
|
|
||||||
include "estex.asm"
|
|
||||||
include "form.asm"
|
|
||||||
|
|
||||||
ds 80
|
ds 80
|
||||||
Stack: db 0 ; ¡ãä¥à ¯®¤ á⥪ ¯à®£à ¬¬ë
|
Stack: db 0 ; ¡ãä¥à ¯®¤ á⥪ ¯à®£à ¬¬ë
|
||||||
|
;[]==============================================================[]
|
||||||
ES_Boot: incbin "estex.bs" ; § £àã§ç¨ª Estex
|
|
||||||
|
|
||||||
|
|
||||||
|
;[]==============================================================[]
|
||||||
|
ES_BPB equ $
|
||||||
|
;ES_Boot equ ES_BPB + 512
|
||||||
|
; incbin "estex.bs" ; § £àã§ç¨ª Estex
|
||||||
|
;[]==============================================================[]
|
||||||
|
|
||||||
|
CurPath equ ES_BPB + 512 ;!TEST
|
||||||
|
;[]==============================================================[]
|
||||||
; <20>ãä¥à á¨á⥬®© ®¡« á⨠¤¨áª¥âë
|
; <20>ãä¥à á¨á⥬®© ®¡« á⨠¤¨áª¥âë
|
||||||
L2400:
|
L2400 equ CurPath + 257
|
||||||
|
;[]==============================================================[]
|
||||||
@ -38,15 +38,15 @@ FFORM1: call ClearMap ;
|
|||||||
call HiddenMouse ; áªàëâì ¬ëèªã
|
call HiddenMouse ; áªàëâì ¬ëèªã
|
||||||
call set_1440
|
call set_1440
|
||||||
; Žâªàëâì ¯®àâë ‚ƒ93
|
; Žâªàëâì ¯®àâë ‚ƒ93
|
||||||
ld a,1Ch
|
ld a,SYS_PORT.CNF_3
|
||||||
out (SysPort),a
|
out (SYS_PORT.RAM),a
|
||||||
call A0626 ; á¡à®á¨âì ª®â஫«¥à
|
call A0626 ; á¡à®á¨âì ª®â஫«¥à
|
||||||
; ¤¥àãâì £®«®¢ª®©
|
; ¤¥àãâì £®«®¢ª®©
|
||||||
ld a,70
|
ld a,70
|
||||||
out (REGDATA),a
|
out (REGDATA),a
|
||||||
ld a,18h ; ¯¥à¥©â¨ § ¤ . ¤®à®¦ªã
|
ld a,18h ; ¯¥à¥©â¨ § ¤ . ¤®à®¦ªã
|
||||||
call A092C ; § ¥á⨠ª®¬ ¤ã
|
call FDC_CMD ; § ¥á⨠ª®¬ ¤ã
|
||||||
call A092A ; 0-î ¤®à®¦ªã
|
call FDC_CMD.zeroTrk ; 0-î ¤®à®¦ªã
|
||||||
;
|
;
|
||||||
; ¯à®¢¥à¨âì «¨ç¨¥ ¤¨áª¥âë
|
; ¯à®¢¥à¨âì «¨ç¨¥ ¤¨áª¥âë
|
||||||
call L0C65 ; â¥áâ ç⥨¥ ᥪâ®à
|
call L0C65 ; â¥áâ ç⥨¥ ᥪâ®à
|
||||||
@ -82,7 +82,7 @@ FFORM1: call ClearMap ;
|
|||||||
ld hl,SystemArea ; "Writing system area..."
|
ld hl,SystemArea ; "Writing system area..."
|
||||||
call PutDialWn
|
call PutDialWn
|
||||||
call HiddenMouse ; áªàëâì ¬ëèªã
|
call HiddenMouse ; áªàëâì ¬ëèªã
|
||||||
call L09D9 ; § ¯¨áì á¨áâ. ®¡« áâ¨
|
call SysWR ; § ¯¨áì á¨áâ. ®¡« áâ¨
|
||||||
call ClsDial ; § ªàëâì ®ª® ¤¨ «®£
|
call ClsDial ; § ªàëâì ®ª® ¤¨ «®£
|
||||||
pop af
|
pop af
|
||||||
ld (ColDialWn),a
|
ld (ColDialWn),a
|
||||||
@ -90,23 +90,24 @@ FFORM1: call ClearMap ;
|
|||||||
ld a,(RetCode)
|
ld a,(RetCode)
|
||||||
or a
|
or a
|
||||||
jr nz,Parsing ; ¡ë«¨ ®è¨¡ª¨ ¯à¨ § ¯¨á¨ á¨áâ. ®¡« áâ¨
|
jr nz,Parsing ; ¡ë«¨ ®è¨¡ª¨ ¯à¨ § ¯¨á¨ á¨áâ. ®¡« áâ¨
|
||||||
call A092A ; 0-î ¤®à®¦ªã
|
call FDC_CMD.zeroTrk ; 0-î ¤®à®¦ªã
|
||||||
; ‡ ªàëâì ¯®àâë ‚ƒ93
|
; ‡ ªàëâì ¯®àâë ‚ƒ93
|
||||||
call Abort
|
call Abort
|
||||||
ld a,(_OS)
|
ld a,(_OS)
|
||||||
or a
|
or a
|
||||||
jp nz,okno1 ; ¯à¨ tr-dos, cp/m-80
|
jp nz,okno1 ; ¯à¨ tr-dos, cp/m-80
|
||||||
|
;
|
||||||
ld a,(cSystem) ; ä« £ ª®¯¨à. á¨á⥬ëå ä ©«®¢
|
ld a,(cSystem) ; ä« £ ª®¯¨à. á¨á⥬ëå ä ©«®¢
|
||||||
or a
|
or a
|
||||||
call nz,WriteSysFiles ; § ¯¨áì á¨áâ. ä ©«®¢ ¤¨áª¥âã
|
call nz,WriteSysFiles ; § ¯¨áì á¨áâ. ä ©«®¢ ¤¨áª¥âã
|
||||||
call CreateLabel ; á®§¤ âì ¬¥âªã ¤¨áª¥âë, ¥á«¨ § ¤
|
;call CreateLabel ; á®§¤ âì ¬¥âªã ¤¨áª¥âë, ¥á«¨ § ¤
|
||||||
jp okno1 ; "”®à¬. § ¢¥à襮", ¢ë室 ¨§ äãªæ¨¨ fformat
|
jp okno1 ; "”®à¬. § ¢¥à襮", ¢ë室 ¨§ äãªæ¨¨ fformat
|
||||||
|
|
||||||
|
|
||||||
Abort: call A0626 ; á¡à®á¨âì ª®â஫«¥à
|
Abort: call A0626 ; á¡à®á¨âì ª®â஫«¥à
|
||||||
; § ªàëâì ¯®àâë ‚ƒ93
|
; § ªàëâì ¯®àâë ‚ƒ93
|
||||||
ld a,4
|
ld a,SYS_PORT.CNF_0
|
||||||
out (SysPort),a
|
out (SYS_PORT.RAM),a
|
||||||
ld c,1 ; ¯®ª § âì ¬ëèªã
|
ld c,1 ; ¯®ª § âì ¬ëèªã
|
||||||
RST ToDSS.Mouse
|
RST ToDSS.Mouse
|
||||||
ret
|
ret
|
||||||
@ -247,9 +248,10 @@ L0870: ld a,(side)
|
|||||||
A0626: ex af,af'
|
A0626: ex af,af'
|
||||||
ld a,(DISK) ; ¤¨áª
|
ld a,(DISK) ; ¤¨áª
|
||||||
and 3
|
and 3
|
||||||
ld c,a
|
;ld c,a
|
||||||
ld a,00011000b ; á¡à®á ‚ƒ93 ã«¥¬ 2-£® ¡¨â
|
;ld a,00011000b ; á¡à®á ‚ƒ93 ã«¥¬ 2-£® ¡¨â
|
||||||
or c
|
;or c
|
||||||
|
or %0001'1000
|
||||||
out (REGCTRL),a
|
out (REGCTRL),a
|
||||||
set 2,a ; 1Ch
|
set 2,a ; 1Ch
|
||||||
out (REGCTRL),a
|
out (REGCTRL),a
|
||||||
@ -284,9 +286,10 @@ delay: ; >=16. usec delay
|
|||||||
;A0929: ld a,0D0h
|
;A0929: ld a,0D0h
|
||||||
; jr A092C
|
; jr A092C
|
||||||
; £®«®¢ªã 0-î ¤®à®¦ªã
|
; £®«®¢ªã 0-î ¤®à®¦ªã
|
||||||
A092A: ld a,8
|
FDC_CMD.zeroTrk:
|
||||||
|
ld a,8
|
||||||
; ¯®á« âì ª®¬ ¤ã
|
; ¯®á« âì ª®¬ ¤ã
|
||||||
A092C: out (REGCOM),a
|
FDC_CMD: out (REGCOM),a
|
||||||
exx
|
exx
|
||||||
ld b,3+3; ; 3 áç¥â稪
|
ld b,3+3; ; 3 áç¥â稪
|
||||||
call delay ; ¬¨ªà®-¯ ã§
|
call delay ; ¬¨ªà®-¯ ã§
|
||||||
@ -337,12 +340,12 @@ L07B3: call L0870 ;
|
|||||||
|
|
||||||
|
|
||||||
; ‡ ¯¨áì á¨áâ. ®¡« á⨠ms-dos ¨«¨ trd-¡ãâ
|
; ‡ ¯¨áì á¨áâ. ®¡« á⨠ms-dos ¨«¨ trd-¡ãâ
|
||||||
L09D9: ld a,(density)
|
SysWR: ld a,(density)
|
||||||
ld c,8Fh ; turbo on/off
|
ld c,8Fh ; turbo on/off
|
||||||
RST ToBIOS
|
RST ToBIOS
|
||||||
xor a
|
xor a
|
||||||
ld (tracks),a
|
ld (tracks),a
|
||||||
call A092A ; ¯¥à¥©â¨ 0-î ¤®à®¦ªã
|
call FDC_CMD.zeroTrk ; ¯¥à¥©â¨ 0-î ¤®à®¦ªã
|
||||||
ld hl,L2400 ; ¡ãä¥à á¨áâ. ®¡« áâ¨
|
ld hl,L2400 ; ¡ãä¥à á¨áâ. ®¡« áâ¨
|
||||||
ld (L0AC8),hl
|
ld (L0AC8),hl
|
||||||
ld a,(_OS)
|
ld a,(_OS)
|
||||||
@ -354,7 +357,7 @@ L09D9: ld a,(density)
|
|||||||
;jp _cpm80
|
;jp _cpm80
|
||||||
; Š®¯¨àã¥â 2-î FAT ¨ § ¯¨áë¢ ¥â á¨áâ. ®¡« áâì ¤¨áª¥âë,
|
; Š®¯¨àã¥â 2-î FAT ¨ § ¯¨áë¢ ¥â á¨áâ. ®¡« áâì ¤¨áª¥âë,
|
||||||
; ¯à¨ ¢ª«. ®¯æ¨¨ ª®¯¨àã¥â § £àã§ç¨ª Estex ¢ ᥪâ®àë 2..4.
|
; ¯à¨ ¢ª«. ®¯æ¨¨ ª®¯¨àã¥â § £àã§ç¨ª Estex ¢ ᥪâ®àë 2..4.
|
||||||
_msdos: ld a,(media5) ; ç¨á«® ᥪâ®à®¢ FAT
|
_msdos: ld a,(MS_Boot.media5) ; ç¨á«® ᥪâ®à®¢ FAT
|
||||||
ld e,a
|
ld e,a
|
||||||
ld hl,0
|
ld hl,0
|
||||||
ld bc,512
|
ld bc,512
|
||||||
@ -372,47 +375,51 @@ _msdos: ld a,(media5) ;
|
|||||||
add hl,de
|
add hl,de
|
||||||
ex de,hl
|
ex de,hl
|
||||||
ldir
|
ldir
|
||||||
ld a,(cSystem) ; ä« £ á®§¤ ¨ï á¨áâ. ¤¨áª¥âë
|
;
|
||||||
or a
|
; bpb boot loader
|
||||||
jr z,.loc2
|
;ld a,(cSystem) ; ä« £ á®§¤ ¨ï á¨áâ. ¤¨áª¥âë
|
||||||
|
;or a
|
||||||
|
;jr z,.loc2
|
||||||
; ª®¯¨à. § £àã§ç¨ª Estex ¢ á¨áâ. ®¡« áâì
|
; ª®¯¨à. § £àã§ç¨ª Estex ¢ á¨áâ. ®¡« áâì
|
||||||
ld hl,ES_Boot ; ª®¤ § £àã§ç¨ª
|
;ld hl,ES_Boot ; ª®¤ § £àã§ç¨ª
|
||||||
ld de,L2400+512 ; ç «® 1-© FAT
|
;ld de,L2400+512 ; ç «® 1-© FAT
|
||||||
ld bc,1536 ; 512*3 ᥪâ. = à §¬¥à § £àã§ç¨ª
|
;ld bc,1536 ; 512*3 ᥪâ. = à §¬¥à § £àã§ç¨ª
|
||||||
ldir
|
;ldir
|
||||||
; ᪮à४â. BPB ¢ ¡ãä¥à¥
|
; ᪮à४â. BPB ¢ ¡ãä¥à¥
|
||||||
ld a,(media5)
|
;ld a,(MS_Boot.media5)
|
||||||
inc a
|
;inc a
|
||||||
ld (L2400+14),a
|
;ld (L2400+14),a
|
||||||
ld a,1 ; ç¨á«® ª®¯¨© FAT
|
;ld a,1 ; ç¨á«® ª®¯¨© FAT
|
||||||
ld (L2400+16),a ; ᬥé. ç¨á«® ª®¯¨©
|
;ld (L2400+16),a ; ᬥé. ç¨á«® ª®¯¨©
|
||||||
|
;
|
||||||
;
|
;
|
||||||
.loc2: call L07AF ; ®¦¨¤ ¨¥ £®â®¢®á⨠£¬¤
|
.loc2: call L07AF ; ®¦¨¤ ¨¥ £®â®¢®á⨠£¬¤
|
||||||
; § ¯¨áì 0-© áâ®à®ë
|
; § ¯¨áì 0-© áâ®à®ë
|
||||||
ld a,1
|
ld a,1
|
||||||
ld (sect),a ; 1-© ᥪâ®à (boot)
|
ld (sect),a ; 1-© ᥪâ®à (boot)
|
||||||
call L0870 ; áâ®à®ã ¨ ¤¨áª ¢ ª®â஫«¥à
|
call L0870 ; áâ®à®ã ¨ ¤¨áª ¢ ª®â஫«¥à
|
||||||
L08F0: call L0906 ; § ¯¨áì ᥪâ®à
|
.loopWr0: call L0906 ; § ¯¨áì ᥪâ®à
|
||||||
ret nz ; ®è¨¡ª¨ § ¯¨á¨
|
ret nz ; ®è¨¡ª¨ § ¯¨á¨
|
||||||
ld a,(sect) ; ⥪. ᥪâ®à
|
ld a,(sect) ; ⥪. ᥪâ®à
|
||||||
inc a
|
inc a
|
||||||
ld (sect),a
|
ld (sect),a
|
||||||
loc02: cp 18+1 ; § ¯à¥¤¥«ìë© á¥ªâ®à
|
.maxSector0+1: cp 18+1 ; § ¯à¥¤¥«ìë© á¥ªâ®à
|
||||||
jr nz,L08F0
|
jr nz,.loopWr0
|
||||||
; § ¯¨áì 1-© áâ®à®ë
|
; § ¯¨áì 1-© áâ®à®ë
|
||||||
ld a,1
|
ld a,1
|
||||||
ld (side),a ; ⥪. áâ®à®
|
ld (side),a ; ⥪. áâ®à®
|
||||||
ld (sect),a ; ⥪. ᥪâ®à
|
ld (sect),a ; ⥪. ᥪâ®à
|
||||||
call L0870 ; áâ®à®ã ¨ ¤¨áª ¢ ª®â஫«¥à
|
call L0870 ; áâ®à®ã ¨ ¤¨áª ¢ ª®â஫«¥à
|
||||||
L08F6: call L0906 ; § ¯¨áì ᥪâ®à
|
.loopWr1: call L0906 ; § ¯¨áì ᥪâ®à
|
||||||
ret nz ; ®è¨¡ª¨ § ¯¨á¨
|
ret nz ; ®è¨¡ª¨ § ¯¨á¨
|
||||||
ld a,(sect) ; ⥪. ᥪâ®à
|
ld a,(sect) ; ⥪. ᥪâ®à
|
||||||
inc a
|
inc a
|
||||||
ld (sect),a
|
ld (sect),a
|
||||||
loc03: cp 18+1 ; § ¯à¥¤. ᥪâ®à ?
|
.maxSector1+1: cp 18+1 ; § ¯à¥¤. ᥪâ®à ?
|
||||||
jr nz,L08F6
|
jr nz,.loopWr1
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
; ‡ ¯¨áì á¨áâ. ®¡« á⨠TR-DOS.
|
; ‡ ¯¨áì á¨áâ. ®¡« á⨠TR-DOS.
|
||||||
; <20>ਠboot-¤¨áª¥ ª®à४â¨àã¥â ç «® ᢮¡. ¬¥áâ ,
|
; <20>ਠboot-¤¨áª¥ ª®à४â¨àã¥â ç «® ᢮¡. ¬¥áâ ,
|
||||||
; ç¨á«® ᢮¡. ᥪâ®à®¢ ¨ ç¨á«® § ¯¨á. ä ©«®¢
|
; ç¨á«® ᢮¡. ᥪâ®à®¢ ¨ ç¨á«® § ¯¨á. ä ©«®¢
|
||||||
@ -504,16 +511,16 @@ _trdos: xor a ;
|
|||||||
|
|
||||||
; ‘ª®¯¨à®¢ âì ⥫® ¡ãâ ¨§ ¡ãä¥à TRBoot ¢ ¡ãä¥à L2400+1000h
|
; ‘ª®¯¨à®¢ âì ⥫® ¡ãâ ¨§ ¡ãä¥à TRBoot ¢ ¡ãä¥à L2400+1000h
|
||||||
copy1: exx
|
copy1: exx
|
||||||
in a,(Page1)
|
in a,(SLOT1)
|
||||||
ex af,af'
|
ex af,af'
|
||||||
ld a,(TRBoot)
|
ld a,(hPages.TRBoot)
|
||||||
out (Page1),a ; ¯®¤ª«. ¡ãä¥à
|
out (SLOT1),a ; ¯®¤ª«. ¡ãä¥à
|
||||||
ld hl,4000h ; ç «® Page1
|
ld hl,4000h ; ç «® SLOT1
|
||||||
ld de,L2400+1000h
|
ld de,L2400+1000h
|
||||||
SizeBt: ld bc,4000h
|
SizeBt: ld bc,4000h
|
||||||
ldir
|
ldir
|
||||||
ex af,af'
|
ex af,af'
|
||||||
out (Page1),a ; ¯®¤ª«. ¡ãä¥à
|
out (SLOT1),a ; ¯®¤ª«. ¡ãä¥à
|
||||||
exx
|
exx
|
||||||
ret
|
ret
|
||||||
|
|
||||||
@ -573,10 +580,10 @@ A0875: push de
|
|||||||
|
|
||||||
|
|
||||||
; ‡ ¯¨áì ¤®à®¦ª¨
|
; ‡ ¯¨áì ¤®à®¦ª¨
|
||||||
L091B: in a,(Page3)
|
L091B: in a,(SLOT3)
|
||||||
push af
|
push af
|
||||||
ld a,(BuffTrk)
|
ld a,(hPages.BuffTrk)
|
||||||
out (Page3),a ; ¯®¤ª«. ¡ãä¥à áâàãªâãàë ¤®à®¦ª¨
|
out (SLOT3),a ; ¯®¤ª«. ¡ãä¥à áâàãªâãàë ¤®à®¦ª¨
|
||||||
ld hl,L4000 ; ç «® ¤ ëå
|
ld hl,L4000 ; ç «® ¤ ëå
|
||||||
ld (L0AC8),hl
|
ld (L0AC8),hl
|
||||||
call L0870 ; ¢ ª®â஫«¥à áâ®à®ã ¨ ¤¨áª
|
call L0870 ; ¢ ª®â஫«¥à áâ®à®ã ¨ ¤¨áª
|
||||||
@ -585,7 +592,7 @@ L091B: in a,(Page3)
|
|||||||
ld a,0xF4 ; § ¯¨áì ¤®à®¦ª¨
|
ld a,0xF4 ; § ¯¨áì ¤®à®¦ª¨
|
||||||
call A0875
|
call A0875
|
||||||
pop af
|
pop af
|
||||||
out (Page3),a
|
out (SLOT3),a
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
@ -598,7 +605,7 @@ NxtTrack:
|
|||||||
L0759: ld a,(tracks) ; ⥪. ¤®à®¦ª
|
L0759: ld a,(tracks) ; ⥪. ¤®à®¦ª
|
||||||
out (REGDATA),a ; ॣ¨áâà ¤ ëå
|
out (REGDATA),a ; ॣ¨áâà ¤ ëå
|
||||||
ld a,18h ; ¯¥à¥©â¨ § ¤ . ¤®à®¦ªã
|
ld a,18h ; ¯¥à¥©â¨ § ¤ . ¤®à®¦ªã
|
||||||
jp A092C ; § ¥á⨠ª®¬ ¤ã
|
jp FDC_CMD ; § ¥á⨠ª®¬ ¤ã
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -621,7 +628,7 @@ L0C65: ld a,(sect) ; ⥪. ᥪ
|
|||||||
or 0x80
|
or 0x80
|
||||||
; 0-ï áâ®à® : 80h
|
; 0-ï áâ®à® : 80h
|
||||||
; 1-ï áâ®à® : 88h
|
; 1-ï áâ®à® : 88h
|
||||||
call A092C ; § ¥á⨠ª®¬ ¤ã
|
call FDC_CMD ; § ¥á⨠ª®¬ ¤ã
|
||||||
di
|
di
|
||||||
ld c,REGCOM
|
ld c,REGCOM
|
||||||
ld b,3 ; áç¥â稪 ¯®¯ë⮪
|
ld b,3 ; áç¥â稪 ¯®¯ë⮪
|
||||||
@ -728,7 +735,7 @@ _done2: xor a
|
|||||||
;[]==============================================================[]
|
;[]==============================================================[]
|
||||||
|
|
||||||
; ¢ëç¨á«¨âì ï祩ªã bad-ᥪâ®à ¢ FAT-¥
|
; ¢ëç¨á«¨âì ï祩ªã bad-ᥪâ®à ¢ FAT-¥
|
||||||
L0ACF: ld hl,(media6) ; ᥪâ®à®¢ áâ®à®ã
|
L0ACF: ld hl,(MS_Boot.media6) ; ᥪâ®à®¢ áâ®à®ã
|
||||||
add hl,hl ; *2 (ᥪâ®à®¢ ¢áî ¤®à®¦ªã)
|
add hl,hl ; *2 (ᥪâ®à®¢ ¢áî ¤®à®¦ªã)
|
||||||
ex de,hl
|
ex de,hl
|
||||||
ld hl,0
|
ld hl,0
|
||||||
@ -739,7 +746,7 @@ L0AD8: add hl,de
|
|||||||
ld a,(side) ; ⥪. áâ®à®
|
ld a,(side) ; ⥪. áâ®à®
|
||||||
or a
|
or a
|
||||||
jr z,L0AE8
|
jr z,L0AE8
|
||||||
ld de,(media6) ; ᥪâ®à®¢ áâ®à®ã
|
ld de,(MS_Boot.media6) ; ᥪâ®à®¢ áâ®à®ã
|
||||||
add hl,de
|
add hl,de
|
||||||
L0AE8: ld a,(sect) ; ⥪. ᥪâ®à
|
L0AE8: ld a,(sect) ; ⥪. ᥪâ®à
|
||||||
ld e,a
|
ld e,a
|
||||||
@ -757,7 +764,7 @@ L0AE8: ld a,(sect) ; ⥪. ᥪ
|
|||||||
ld a,l
|
ld a,l
|
||||||
rra
|
rra
|
||||||
ld l,a
|
ld l,a
|
||||||
ld a,(media1) ; ᥪâ®à®¢ ª« áâ¥à
|
ld a,(MS_Boot.media1) ; ᥪâ®à®¢ ª« áâ¥à
|
||||||
ld e,a
|
ld e,a
|
||||||
ld d,0
|
ld d,0
|
||||||
add hl,de
|
add hl,de
|
||||||
@ -808,7 +815,7 @@ L0A2C: push hl
|
|||||||
; ᥪâ®à®¢ +2 («ãç訩 ¢ ਠâ).
|
; ᥪâ®à®¢ +2 («ãç訩 ¢ ਠâ).
|
||||||
;
|
;
|
||||||
add_offset:
|
add_offset:
|
||||||
ld hl,(media6) ; ç¨á«® ᥪâ®à®¢ ¢ ⥪. ä®à¬ â¥
|
ld hl,(MS_Boot.media6) ; ç¨á«® ᥪâ®à®¢ ¢ ⥪. ä®à¬ â¥
|
||||||
ld a,(_OS) ; ⨯ Ž‘-¨
|
ld a,(_OS) ; ⨯ Ž‘-¨
|
||||||
or a
|
or a
|
||||||
jr z,.loc0 ; ms-dos
|
jr z,.loc0 ; ms-dos
|
||||||
@ -921,10 +928,10 @@ GAP1 equ 50
|
|||||||
GAP3 dw 108 ; ¯®-㬮«ç ¨î ¤«ï 1.44Mb
|
GAP3 dw 108 ; ¯®-㬮«ç ¨î ¤«ï 1.44Mb
|
||||||
|
|
||||||
; <20>®¤£®â®¢¨âì § £®«®¢ª¨ ᥪâ®à®¢ ¤®à®¦ª¨ (®¤®© áâ®à®ë)
|
; <20>®¤£®â®¢¨âì § £®«®¢ª¨ ᥪâ®à®¢ ¤®à®¦ª¨ (®¤®© áâ®à®ë)
|
||||||
L0BAA: in a,(Page3)
|
L0BAA: in a,(SLOT3)
|
||||||
push af
|
push af
|
||||||
ld a,(BuffTrk)
|
ld a,(hPages.BuffTrk)
|
||||||
out (Page3),a ; ¯®¤ª«. ¡ãä¥à ¤®à®¦ª¨
|
out (SLOT3),a ; ¯®¤ª«. ¡ãä¥à ¤®à®¦ª¨
|
||||||
xor a
|
xor a
|
||||||
ld (L0BA9),a ; ®¡ã«¨âì áç¥â稪 ᥪâ®à®¢
|
ld (L0BA9),a ; ®¡ã«¨âì áç¥â稪 ᥪâ®à®¢
|
||||||
;
|
;
|
||||||
@ -969,17 +976,17 @@ L0BB6: ld bc,553 ;
|
|||||||
loc05: cp 18 ; ¯®á«. ᥪâ®à ?
|
loc05: cp 18 ; ¯®á«. ᥪâ®à ?
|
||||||
jr nz,L0BB2
|
jr nz,L0BB2
|
||||||
pop af
|
pop af
|
||||||
out (Page3),a ; ¢®ááâ. à ¡. áâà ¨æã
|
out (SLOT3),a ; ¢®ááâ. à ¡. áâà ¨æã
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
; ‘®§¤ ¥â ¢ ¡ãä¥à¥ áâàãªâãàã ¤®à®¦ª¨
|
; ‘®§¤ ¥â ¢ ¡ãä¥à¥ áâàãªâãàã ¤®à®¦ª¨
|
||||||
; <20>ãä¥à: 0xC000..0xFFFF
|
; <20>ãä¥à: 0xC000..0xFFFF
|
||||||
L0B21: in a,(Page3)
|
L0B21: in a,(SLOT3)
|
||||||
push af
|
push af
|
||||||
ld a,(BuffTrk)
|
ld a,(hPages.BuffTrk)
|
||||||
out (Page3),a ; ¯®¤ª«. ¡ãä¥à ¤®à®¦ª¨
|
out (SLOT3),a ; ¯®¤ª«. ¡ãä¥à ¤®à®¦ª¨
|
||||||
call CLEAR ; § ¯®«¨âì ¡ãä¥à ª®¤®¬ 0x4E
|
call CLEAR ; § ¯®«¨âì ¡ãä¥à ª®¤®¬ 0x4E
|
||||||
ld hl,L4000 ; ç «® ¡ãä¥à ¤ ëå ¤®à®¦ª¨
|
ld hl,L4000 ; ç «® ¡ãä¥à ¤ ëå ¤®à®¦ª¨
|
||||||
xor a
|
xor a
|
||||||
@ -1051,7 +1058,7 @@ loc08: cp 18 ;
|
|||||||
jr nz,L0B3E
|
jr nz,L0B3E
|
||||||
; GAP4B, ®áâ ⮪ ¤®à®¦ª¨ (¡ãä¥à 㦥 § ¯®«¥ 0x4E)
|
; GAP4B, ®áâ ⮪ ¤®à®¦ª¨ (¡ãä¥à 㦥 § ¯®«¥ 0x4E)
|
||||||
pop af
|
pop af
|
||||||
out (Page3),a ; ¢ª«. à ¡®çãî áâà ¨æã 0xC000
|
out (SLOT3),a ; ¢ª«. à ¡®çãî áâà ¨æã 0xC000
|
||||||
ret
|
ret
|
||||||
|
|
||||||
FILL: ld (hl),c
|
FILL: ld (hl),c
|
||||||
@ -1084,19 +1091,21 @@ CLEAR: ld (L0ACD),sp
|
|||||||
; ¬ ªá. ¤«¨ ®¡« áâ¨: 0x4C00 ¤«ï 1.74Mb
|
; ¬ ªá. ¤«¨ ®¡« áâ¨: 0x4C00 ¤«ï 1.74Mb
|
||||||
L09A8: ld de,L2400 ; ¡ãä¥à Boot-ᥪâ®à
|
L09A8: ld de,L2400 ; ¡ãä¥à Boot-ᥪâ®à
|
||||||
ld hl,MS_Boot ; ms-dos boot-ᥪâ®à
|
ld hl,MS_Boot ; ms-dos boot-ᥪâ®à
|
||||||
ld bc,512 ; ¤«¨ boot-
|
ld bc,MS_Boot.SIZE ; ¤«¨ boot-
|
||||||
ldir
|
ldir ;!TEST
|
||||||
ex de,hl ; hl = ç «® FAT ¢ ¡ãä¥à¥
|
ex de,hl ; hl = ç «® FAT ¢ ¡ãä¥à¥
|
||||||
loc07: ld bc,16896 ; 6656/16896 ¤«¨ FAT-®¢ + Root dir
|
loc07: ld bc,16896 ; 6656/16896 ¤«¨ FAT-®¢ + Root dir
|
||||||
ld e,0 ; ¡ ©â § ¯®«¥¨ï
|
ld e,0 ; ¡ ©â § ¯®«¥¨ï
|
||||||
call L0994 ; ¯¥à¥ª çª ¥ -> (hl)
|
call L0994 ; ¯¥à¥ª çª ¥ -> (hl)
|
||||||
ld a,(media4) ; ¡ ©â-®¯¨á ⥫ì ä®à¬ â ¤¨áª
|
ld a,(MS_Boot.media4) ; ¡ ©â-®¯¨á ⥫ì ä®à¬ â ¤¨áª
|
||||||
ld hl,L2400+512
|
ld hl,L2400+512
|
||||||
ld (hl),a ; § ¥á⨠¯¥à¢ë¬ ¡ ©â®¬ ¢ FAT
|
ld (hl),a ; § ¥á⨠¯¥à¢ë¬ ¡ ©â®¬ ¢ FAT
|
||||||
inc hl
|
inc hl
|
||||||
ld (hl),0FFh ; 2 ¨ 3-© ¡ ©âë FAT
|
ld (hl),0FFh ; 2 ¨ 3-© ¡ ©âë FAT
|
||||||
inc hl
|
inc hl
|
||||||
ld (hl),0FFh
|
ld (hl),0FFh
|
||||||
|
call CreateLabel ; á®§¤ âì ¬¥âªã ¤¨áª¥âë, ¥á«¨ § ¤
|
||||||
|
call CreateSerialNumber
|
||||||
ret
|
ret
|
||||||
|
|
||||||
L0994: ld (hl),e
|
L0994: ld (hl),e
|
||||||
@ -1114,29 +1123,30 @@ L0994: ld (hl),e
|
|||||||
FSETUP: ld a,(_OS)
|
FSETUP: ld a,(_OS)
|
||||||
or a
|
or a
|
||||||
jr nz,noMSDOS
|
jr nz,noMSDOS
|
||||||
frm1: ld a,18 ; ç¨á«® ᥪâ®à®¢
|
.sectorsAll+1: ld a,18 ; ç¨á«® ᥪâ®à®¢
|
||||||
ld (loc05+1),a
|
ld (loc05+1),a
|
||||||
ld (loc08+1),a
|
ld (loc08+1),a
|
||||||
SSect: ld hl,18 ; ᥪâ®à®¢ áâ®à®ã
|
.sectorsSide+1: ld hl,18 ; ᥪâ®à®¢ áâ®à®ã
|
||||||
ld (media6),hl ;;
|
ld (MS_Boot.media6),hl
|
||||||
inc a ; § ¯à¥¤. ᥪâ®à
|
inc a ; § ¯à¥¤. ᥪâ®à
|
||||||
ld (loc02+1),a
|
ld (_msdos.maxSector0),a
|
||||||
ld (loc03+1),a
|
ld (_msdos.maxSector1),a
|
||||||
ld (loc06+1),a
|
ld (loc06+1),a
|
||||||
frm2: ld a,34 ; ¯®á«. á«ã¦. ᥪâ®à ¤¨áª¥âë
|
.lastSector+1: ld a,34 ; ¯®á«. á«ã¦. ᥪâ®à ¤¨áª¥âë
|
||||||
ld (LastSect),a
|
ld (LastSect),a
|
||||||
frm3: ld a,1 ; ᥪâ®à®¢ ª« áâ¥à
|
.sectorsPerCluster+1:
|
||||||
ld (media1),a
|
ld a,1 ; ᥪâ®à®¢ ª« áâ¥à
|
||||||
|
ld (MS_Boot.media1),a
|
||||||
frm4: ld a,0xF0 ; ¡ ©â ä®à¬ â
|
frm4: ld a,0xF0 ; ¡ ©â ä®à¬ â
|
||||||
ld (media4),a
|
ld (MS_Boot.media4),a
|
||||||
frm5: ld hl,16896 ; à §¬¥à FAT-®¢ + Root dir
|
frm5: ld hl,16896 ; à §¬¥à FAT-®¢ + Root dir
|
||||||
ld (loc07+1),hl
|
ld (loc07+1),hl
|
||||||
frm6: ld hl,224 ; § ¯¨á¥© ¢ ª®à¥
|
frm6: ld hl,224 ; § ¯¨á¥© ¢ ª®à¥
|
||||||
ld (media2),hl
|
ld (MS_Boot.media2),hl
|
||||||
ASect: ld hl,2880 ; ᥪâ®à®¢ ¤¨áª¥
|
ASect: ld hl,2880 ; ᥪâ®à®¢ ¤¨áª¥
|
||||||
ld (media3),hl ;;
|
ld (MS_Boot.media3),hl
|
||||||
FSect: ld hl,9 ; ᥪâ®à®¢ FAT
|
FSect: ld hl,9 ; ᥪâ®à®¢ FAT
|
||||||
ld (media5),hl ;;
|
ld (MS_Boot.media5),hl
|
||||||
ret
|
ret
|
||||||
;
|
;
|
||||||
noMSDOS: dec a
|
noMSDOS: dec a
|
||||||
@ -1254,7 +1264,7 @@ L0BFF: ld a,(density)
|
|||||||
call InitElapsedTime ; á®åà. ¨ á¡à®á¨âì ¢à¥¬ï
|
call InitElapsedTime ; á®åà. ¨ á¡à®á¨âì ¢à¥¬ï
|
||||||
call L07AF ; ®¦¨¤ ¨¥ £®â®¢®á⨠£¬¤
|
call L07AF ; ®¦¨¤ ¨¥ £®â®¢®á⨠£¬¤
|
||||||
; 横« ä®à¬ â. ¤®à®¦¥ª
|
; 横« ä®à¬ â. ¤®à®¦¥ª
|
||||||
L0C14: call L0BDA ; ä®à¬ â¨à®¢ ¨¥
|
L0C14: call FORMAT_TRK ; ä®à¬ â¨à®¢ ¨¥
|
||||||
ret c ; ä®à¬ â. ¯à¥à¢ ®
|
ret c ; ä®à¬ â. ¯à¥à¢ ®
|
||||||
ret nz ; ¥áâì ®è¨¡ª¨ ç⥨ï
|
ret nz ; ¥áâì ®è¨¡ª¨ ç⥨ï
|
||||||
; ¥â ®è¨¡®ª
|
; ¥â ®è¨¡®ª
|
||||||
@ -1271,10 +1281,10 @@ TRACKS: ld a,82
|
|||||||
|
|
||||||
|
|
||||||
; ”®à¬ â¨à. ®¤®© ¤®à®¦ª¨
|
; ”®à¬ â¨à. ®¤®© ¤®à®¦ª¨
|
||||||
L0BDA: xor a
|
FORMAT_TRK: xor a
|
||||||
ld (side),a ; ⥪. áâ®à®
|
ld (side),a ; ⥪. áâ®à®
|
||||||
ld (RetCode),a ; á¡à. ¢®§¢à. ª®¤
|
ld (RetCode),a ; á¡à. ¢®§¢à. ª®¤
|
||||||
L0BDE: ;ld a,2
|
.loop: ;ld a,2
|
||||||
;ld (L0C64),a ; ç¨á«® 3-å à §®¢ëå ¯®¯ë⮪
|
;ld (L0C64),a ; ç¨á«® 3-å à §®¢ëå ¯®¯ë⮪
|
||||||
call L0BAA ; ¨¨æ. § £®«®¢ª®¢ ᥪâ®à®¢ ¤®à®¦ª¨
|
call L0BAA ; ¨¨æ. § £®«®¢ª®¢ ᥪâ®à®¢ ¤®à®¦ª¨
|
||||||
call L0759 ; ãáâ. £®«®¢ªã ⥪. ¤®à®¦ªã
|
call L0759 ; ãáâ. £®«®¢ªã ⥪. ¤®à®¦ªã
|
||||||
@ -1292,7 +1302,7 @@ L0BDE: ;ld a,2
|
|||||||
inc (hl) ; ᬥ áâ®à®ë
|
inc (hl) ; ᬥ áâ®à®ë
|
||||||
ld a,(hl) ; ⥪. áâ®à®
|
ld a,(hl) ; ⥪. áâ®à®
|
||||||
cp 1+1 ; § ¯à¥¤¥«ì ï ?
|
cp 1+1 ; § ¯à¥¤¥«ì ï ?
|
||||||
jr nz,L0BDE
|
jr nz,.loop
|
||||||
xor a
|
xor a
|
||||||
ret
|
ret
|
||||||
|
|
||||||
@ -1483,100 +1493,39 @@ CalcTime:
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
;-------------------------------------------------+
|
;-------------------------------------------------+
|
||||||
; MS-DOS § £àã§ç¨ª ¤¨áª¥â (¨§ fformat), 512 ¡ ©â. |
|
; MS-DOS § £àã§ç¨ª ¤¨áª¥â (¨§ fformat), 512 ¡ ©â. |
|
||||||
; ä®à¬ â 1.44Mb. |
|
; ä®à¬ â 1.44Mb. |
|
||||||
; ¤«ï 720kB á¬. ¬¥âªã '#' |
|
; ¤«ï 720kB á¬. ¬¥âªã '#' |
|
||||||
;-------------------------------------------------+
|
;-------------------------------------------------+
|
||||||
MS_Boot:
|
MS_Boot:
|
||||||
db 0xEB,0x3C,0x90 ; 3 ¡ ©â , ª®¤ ¯¥à¥å®¤ § £àã§ç¨ª
|
.pc_code: db 0xEB,0xFE,0x00 ; 3 ¡ ©â , ª®¤ ¯¥à¥å®¤ § £àã§ç¨ª
|
||||||
db "DSS 1.60" ; 8 ¡ ©â, OEM ID
|
; 8 ¡ ©â, OEM ID
|
||||||
|
db "DSS "
|
||||||
|
.dss_major_ver: db "1."
|
||||||
|
.dss_minor_ver: db "71"
|
||||||
;BPB, 17 ¡ ©â
|
;BPB, 17 ¡ ©â
|
||||||
BPB: dw 512 ; ¡ ©â ᥪâ®à
|
.BPB: dw 512 ; ¡ ©â ᥪâ®à
|
||||||
media1: db 1 ; # 2, ᥪâ®à®¢ ª« áâ¥à
|
.media1: db 1 ; # 2, ᥪâ®à®¢ ª« áâ¥à
|
||||||
dw 1 ; § १¥à¢. ᥪâ®à®¢
|
.reserved: dw 1 ; § १¥à¢. ᥪâ®à®¢
|
||||||
db 2 ; ç¨á«® FAT-®¢
|
.fat_num: db 2 ; ç¨á«® FAT-®¢
|
||||||
media2: dw 224 ; # 112, § ¯¨á¥© ¢ ª®à¥
|
.media2: dw 224 ; # 112, § ¯¨á¥© ¢ ª®à¥
|
||||||
media3: dw 2880 ; # 1440, ¢á¥å ᥪâ®à®¢ ¤¨áª¥
|
.media3: dw 2880 ; # 1440, ¢á¥å ᥪâ®à®¢ ¤¨áª¥
|
||||||
media4: db 0xF0 ; # 0xF9, ¡ ©â ä®à¬ â
|
.media4: db 0xF0 ; # 0xF9, ¡ ©â ä®à¬ â
|
||||||
media5: dw 9 ; # 3, ᥪâ®à®¢ FAT
|
.media5: dw 9 ; # 3, ᥪâ®à®¢ FAT
|
||||||
media6: dw 18 ; # 9, ᥪâ®à®¢ áâ®à®ã
|
.media6: dw 18 ; # 9, ᥪâ®à®¢ áâ®à®ã
|
||||||
dw 2 ; ª®«-¢® áâ®à® ¤¨áª
|
dw 2 ; ª®«-¢® áâ®à® ¤¨áª
|
||||||
;extended boot-record
|
;extended boot-record
|
||||||
dw 0,0 ; áªàëâëå ᥪâ®à®¢
|
dw 0,0 ; áªàëâëå ᥪâ®à®¢
|
||||||
dw 0,0 ; ¢á¥å ᥪâ®à®¢ ¤¨áª¥
|
dw 0,0 ; ¢á¥å ᥪâ®à®¢ ¤¨áª¥
|
||||||
dw 0 ; 䨧. ®¬¥à ¤¨áª
|
dw 0 ; 䨧. ®¬¥à ¤¨áª
|
||||||
db 0x29 ; ᨣ âãà à áè. boot-§ ¯¨á¨
|
db 0x29 ; ᨣ âãà à áè. boot-§ ¯¨á¨
|
||||||
dw 96C2h,2D3Ah ; á¥à¨©ë© ®¬¥à ¤¨áª¥âë 2D3A:96C2
|
.serial: dw 0000,0000 ; á¥à¨©ë© ®¬¥à ¤¨áª¥âë 2D3A:96C2
|
||||||
db "NO NAME " ; 11 ¡ ©â, ¬¥âª ¤¨áª¥âë
|
.label: db "NO NAME " ; 11 ¡ ©â, ¬¥âª ¤¨áª¥âë
|
||||||
db "FAT12 " ; 8 ¡ ©â, ID ä ©«®¢®© á¨á⥬ë
|
db "FAT12 " ; 8 ¡ ©â, ID ä ©«®¢®© á¨á⥬ë
|
||||||
;---------------------------------------------------------------------
|
block 510-62,0
|
||||||
db 0xFA,0x33,0xD2,0x8E,0xD2,0xBC,0xF0,0x7B
|
dw #AA55
|
||||||
db 0xFB,0xB8,0xC0,0x07,0x8E,0xD8,0xE8,0x89
|
.SIZE EQU $-MS_Boot
|
||||||
db 0x00,0xBE,0xFE,0x00,0xFC,0xBB,0x70,0x00
|
|
||||||
db 0xE8,0x25,0x00,0x32,0xE4,0xCD,0x16,0x3C
|
|
||||||
db 0x1B,0x74,0x18,0x3C,0x0D,0x74,0x08,0x3C
|
|
||||||
db 0x20,0x74,0x04,0x3C,0x6F,0x75,0xEC,0xBE
|
|
||||||
db 0xDF,0x01,0xE8,0x0B,0x00,0xBE,0xC1,0x01
|
|
||||||
db 0xE8,0x05,0x00,0xE8,0x5C,0x00,0xCD,0x19
|
|
||||||
db 0xAC,0x0A,0xC0,0x74,0x46,0x3C,0x01,0x75
|
|
||||||
db 0x05,0xAC,0x8A,0xD8,0xEB,0xF2,0x3C,0x02
|
|
||||||
db 0x75,0x0A,0xAD,0x8B,0xD0,0x56,0xE8,0x62
|
|
||||||
db 0x00,0x5E,0xEB,0xE4,0x3C,0x03,0x75,0x0A
|
|
||||||
db 0xAC,0xA2,0x00,0x00,0x89,0x36,0x01,0x00
|
|
||||||
db 0xEB,0xD6,0x3C,0x04,0x75,0x0C,0xFE,0x0E
|
|
||||||
db 0x00,0x00,0x74,0x04,0x8B,0x36,0x01,0x00
|
|
||||||
db 0xEB,0xC6,0x33,0xC9,0xA8,0x80,0x74,0x05
|
|
||||||
db 0x24,0x7F,0x8A,0xC8,0xAC,0x41,0xE8,0x17
|
|
||||||
db 0x00,0xEB,0xB5,0x36,0xA1,0x6C,0x04,0x05
|
|
||||||
db 0x04,0x00,0x36,0x39,0x06,0x6C,0x04,0x72
|
|
||||||
db 0xF9,0xC3,0xB8,0x03,0x00,0xCD,0x10,0xC3
|
|
||||||
db 0x56,0x3C,0x0A,0x74,0x10,0xB4,0x09,0xCD
|
|
||||||
db 0x10,0x02,0xD1,0x80,0xFA,0x50,0x73,0x05
|
|
||||||
db 0xE8,0x08,0x00,0x5E,0xC3,0xFE,0xC6,0x32
|
|
||||||
db 0xD2,0xEB,0xF5,0xB4,0x02,0xCD,0x10,0xC3
|
|
||||||
; 21 ¡ ©â
|
|
||||||
db " FFORMAT Version "
|
|
||||||
db major_version + "0","."
|
|
||||||
db (minor_version / 10) + "0",(minor_version % 10) + "0"
|
|
||||||
;
|
|
||||||
db 0xBA,0x20,0x01,0x1F,0x03,0x07,0xCF,0xB0
|
|
||||||
db 0x04,0x91,0xB0,0x01,0x4E,0x80,0xC9,0xA7
|
|
||||||
db 0xCD,0x80,0xBB,0x01,0x1F,0x93,0xB0,0x03
|
|
||||||
db 0x06,0x91,0xB0,0x01,0x4E,0x80,0xBA,0xA7
|
|
||||||
db 0x20,0x80,0xBA,0x01,0x07,0x81,0xB0,0x01
|
|
||||||
db 0x1F,0x91,0xB0,0x04,0x91,0xB0,0x01,0x4E
|
|
||||||
db 0x80,0xC8,0xA7,0xCD,0x80,0xBC,0x01,0x07
|
|
||||||
db 0x81,0xB0,0x01,0x1F,0x91,0xB0,0x93,0xB0
|
|
||||||
db 0x01,0x07,0xA9,0xB0,0x01,0x1F,0x91,0xB0
|
|
||||||
db 0x03,0x07,0xCF,0xB0,0x04,0x01,0x70
|
|
||||||
; 16 ¡ ©â
|
|
||||||
db " RLE Boot record"
|
|
||||||
db 0xC6,0x20,0x01,0x4F,0x02,0x15,0x0A
|
|
||||||
; 36 ¡ ©â
|
|
||||||
db "Sorry, but this disk is not bootable"
|
|
||||||
db 0x02,0x16,0x0B
|
|
||||||
; 33 ¡ ©â
|
|
||||||
db "Insert SYSTEM disk into the drive"
|
|
||||||
db 0x01,0x7F,0x02,0x22,0x0D
|
|
||||||
; ¥ ¦ âë© ¡ãâ®
|
|
||||||
db "",82h,20h,01h,7Ch,"O",01h,7Fh,"k",82h,20h,""
|
|
||||||
db 0x01,0x40,0x80,0xDC,0x02,0x23,0x0E,0x89
|
|
||||||
db 0xDF,0x02,0x00,0x19,0x00,0x01,0x4E,0x02
|
|
||||||
db 0x22,0x0D,0x20,0x01,0x7F
|
|
||||||
; ¦ âë© ¡ãâ®
|
|
||||||
db "",82h,20h,01h,7Ch,"O",01h,7Fh,"k",82h,20h,""
|
|
||||||
db 0x01,0x4E,0x02,0x23,0x0E,0x89,0x20,0x02
|
|
||||||
db 0x00,0x19,0x00
|
|
||||||
dw 0xAA55
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -1609,7 +1558,7 @@ L0D25: ld c,31h
|
|||||||
ld a,(tracks)
|
ld a,(tracks)
|
||||||
out (REGDATA),a
|
out (REGDATA),a
|
||||||
ld a,18h ; ¯¥à¥©â¨ § ¤ . ¤®à®¦ªã
|
ld a,18h ; ¯¥à¥©â¨ § ¤ . ¤®à®¦ªã
|
||||||
call A092C ; § ¥á⨠ª®¬ ¤ã
|
call FDC_CMD ; § ¥á⨠ª®¬ ¤ã
|
||||||
call L07B3 ; ®¦¨¤ ¨¥ £®â®¢®á⨠<20>ƒŒ„
|
call L07B3 ; ®¦¨¤ ¨¥ £®â®¢®á⨠<20>ƒŒ„
|
||||||
ret z ; ¥â ®è¨¡®ª
|
ret z ; ¥â ®è¨¡®ª
|
||||||
call okno3 ; "‚áâ ¢ì⥠¤¨áª¥âã"
|
call okno3 ; "‚áâ ¢ì⥠¤¨áª¥âã"
|
||||||
32
LISTBOX.ASM
32
LISTBOX.ASM
@ -814,10 +814,10 @@ LstBoxInv:
|
|||||||
LD B,A
|
LD B,A
|
||||||
CALL GetPutA
|
CALL GetPutA
|
||||||
PUSH DE
|
PUSH DE
|
||||||
IN A,(Page3)
|
IN A,(SLOT3)
|
||||||
PUSH AF
|
PUSH AF
|
||||||
LD A,(Win2)
|
LD A,(hPages.Win2)
|
||||||
OUT (Page3),A
|
OUT (SLOT3),A
|
||||||
LD A,(IY+3)
|
LD A,(IY+3)
|
||||||
SUB (IY+2)
|
SUB (IY+2)
|
||||||
SUB 3
|
SUB 3
|
||||||
@ -843,7 +843,7 @@ lbclr1: INC DE ; 横
|
|||||||
ex af,af'
|
ex af,af'
|
||||||
ld (de),a
|
ld (de),a
|
||||||
POP AF
|
POP AF
|
||||||
OUT (Page3),A
|
OUT (SLOT3),A
|
||||||
POP IX
|
POP IX
|
||||||
LD E,(IY+2)
|
LD E,(IY+2)
|
||||||
INC E
|
INC E
|
||||||
@ -860,10 +860,10 @@ lbclr1: INC DE ; 横
|
|||||||
PrnLstBox:
|
PrnLstBox:
|
||||||
PUSH IY
|
PUSH IY
|
||||||
PUSH IX
|
PUSH IX
|
||||||
IN A,(Page3)
|
IN A,(SLOT3)
|
||||||
PUSH AF
|
PUSH AF
|
||||||
LD A,(Win2)
|
LD A,(hPages.Win2)
|
||||||
OUT (Page3),A
|
OUT (SLOT3),A
|
||||||
PUSH IX
|
PUSH IX
|
||||||
POP IY
|
POP IY
|
||||||
LD IX,DialData
|
LD IX,DialData
|
||||||
@ -937,7 +937,7 @@ PrLsBx5:PUSH AF
|
|||||||
JR NZ,PrLsBx5
|
JR NZ,PrLsBx5
|
||||||
PrLsBx6:CALL PutDial
|
PrLsBx6:CALL PutDial
|
||||||
POP AF
|
POP AF
|
||||||
OUT (Page3),A
|
OUT (SLOT3),A
|
||||||
POP IX
|
POP IX
|
||||||
POP IY
|
POP IY
|
||||||
RET
|
RET
|
||||||
@ -1005,14 +1005,14 @@ LBB1: ld a,l
|
|||||||
SUB (IX+1)
|
SUB (IX+1)
|
||||||
LD B,A
|
LD B,A
|
||||||
CALL GetPutA
|
CALL GetPutA
|
||||||
IN A,(Page3)
|
IN A,(SLOT3)
|
||||||
PUSH AF
|
PUSH AF
|
||||||
LD A,(Win2)
|
LD A,(hPages.Win2)
|
||||||
OUT (Page3),A
|
OUT (SLOT3),A
|
||||||
LD A,"±"
|
LD A,"±"
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
POP AF
|
POP AF
|
||||||
OUT (Page3),A
|
OUT (SLOT3),A
|
||||||
LD A,(IY+3)
|
LD A,(IY+3)
|
||||||
SUB 2
|
SUB 2
|
||||||
LD E,A
|
LD E,A
|
||||||
@ -1046,14 +1046,14 @@ LBe1: POP DE
|
|||||||
SUB (IX+1)
|
SUB (IX+1)
|
||||||
LD B,A
|
LD B,A
|
||||||
CALL GetPutA
|
CALL GetPutA
|
||||||
IN A,(Page3)
|
IN A,(SLOT3)
|
||||||
PUSH AF
|
PUSH AF
|
||||||
LD A,(Win2)
|
LD A,(hPages.Win2)
|
||||||
OUT (Page3),A
|
OUT (SLOT3),A
|
||||||
LD A,"þ"
|
LD A,"þ"
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
POP AF
|
POP AF
|
||||||
OUT (Page3),A
|
OUT (SLOT3),A
|
||||||
POP IX
|
POP IX
|
||||||
POP IY
|
POP IY
|
||||||
RET
|
RET
|
||||||
|
|||||||
29
MAIN.ASM
29
MAIN.ASM
@ -9,6 +9,7 @@
|
|||||||
|
|
||||||
include './shared_includes/constants/dss_equ.inc'
|
include './shared_includes/constants/dss_equ.inc'
|
||||||
include './shared_includes/constants/bios_equ.inc'
|
include './shared_includes/constants/bios_equ.inc'
|
||||||
|
include './shared_includes/constants/sp2000.inc'
|
||||||
|
|
||||||
org #9200 - exe_begin.size
|
org #9200 - exe_begin.size
|
||||||
|
|
||||||
@ -32,22 +33,30 @@ Packed: incbin 'build/format.hrs'
|
|||||||
|
|
||||||
Start: ld c,0 ; ã§ âì ¢¥àá¨î „Ž‘
|
Start: ld c,0 ; ã§ âì ¢¥àá¨î „Ž‘
|
||||||
RST ToDSS
|
RST ToDSS
|
||||||
ld hl,0145h ; 1.69
|
ld hl,-#0147 ; 1.71
|
||||||
and a
|
add hl,de
|
||||||
sbc hl,de
|
jr c,dss_ver_ok ; >= 1.71
|
||||||
jr c,ok ; > 1.69
|
|
||||||
;
|
;
|
||||||
ld hl,ver_err
|
ld hl,ver_err
|
||||||
ld c,5Ch
|
.error_exit: ld c,Dss.PChars
|
||||||
RST ToDSS
|
RST ToDSS
|
||||||
ld bc,#2641
|
.loop: ld bc,DSS_Error.sys.COMMON_ERROR*256 + Dss.Exit
|
||||||
RST ToDSS
|
RST ToDSS
|
||||||
ret
|
jr .loop
|
||||||
|
|
||||||
ver_err: db "Invalid DSS version, DSS 1.70 or higher is required.",0Dh,0Ah,0
|
ver_err: db "Invalid DSS version, DSS 1.71 or higher is required.",0Dh,0Ah,0
|
||||||
|
no_mem_err: db "Error: no free memory!",0Dh,0Ah,0
|
||||||
|
|
||||||
|
dss_ver_ok: ; ¢ë¤¥«ï¥¬ áâà ¨æã ¯®¤ à ᯠª®¢ ë© ª®¤
|
||||||
ok: LD HL,#6200 ;!HARDCODE
|
ld bc,1*256 + Dss.GetMem
|
||||||
|
RST ToDSS
|
||||||
|
jr nc,.mem_ok
|
||||||
|
;
|
||||||
|
ld hl,no_mem_err
|
||||||
|
jr Start.error_exit
|
||||||
|
;
|
||||||
|
.mem_ok: out (SLOT1),a
|
||||||
|
LD HL,#6200 ;!HARDCODE
|
||||||
LD BC,Dss.AppInfo.EXE_HomeDir
|
LD BC,Dss.AppInfo.EXE_HomeDir
|
||||||
RST ToDSS
|
RST ToDSS
|
||||||
;
|
;
|
||||||
|
|||||||
283
MAP.ASM
283
MAP.ASM
@ -57,8 +57,7 @@ count: db 5
|
|||||||
|
|
||||||
|
|
||||||
; <20> áâனª ®ª ¯à®æ¥áá ä®à¬ â¨à®¢ ¨ï
|
; <20> áâனª ®ª ¯à®æ¥áá ä®à¬ â¨à®¢ ¨ï
|
||||||
Setup_Map:
|
Setup_Map: xor a
|
||||||
xor a
|
|
||||||
ld (_OS),a
|
ld (_OS),a
|
||||||
ld hl,553
|
ld hl,553
|
||||||
ld (L0BB6+1),hl
|
ld (L0BB6+1),hl
|
||||||
@ -68,25 +67,80 @@ Setup_Map:
|
|||||||
ld (SecCode+1),a ; ª®¤ à §¬¥à ᥪâ®à
|
ld (SecCode+1),a ; ª®¤ à §¬¥à ᥪâ®à
|
||||||
ld hl,INTERL1
|
ld hl,INTERL1
|
||||||
ld (INTERL+1),hl ; ãáâ. ¨â¥à«¨¢ ¤«ï < 21 ᥪâ®à
|
ld (INTERL+1),hl ; ãáâ. ¨â¥à«¨¢ ¤«ï < 21 ᥪâ®à
|
||||||
|
;
|
||||||
|
;
|
||||||
ld hl,LABEL ; ¡ãä¥à ¨¬¥¨ ¬¥âª¨
|
ld hl,LABEL ; ¡ãä¥à ¨¬¥¨ ¬¥âª¨
|
||||||
ld a,(hl)
|
ld a,(hl)
|
||||||
or a
|
or a
|
||||||
jr nz,.loc0
|
jr nz,.loc0
|
||||||
|
;
|
||||||
ld hl,.loc22 ; "NO NAME "
|
ld hl,.loc22 ; "NO NAME "
|
||||||
.loc0: ld de,LABEL1
|
.loc0: ld de,LABEL1
|
||||||
ld b,11
|
ld b,11
|
||||||
.loc1: ld a,(hl)
|
LD A,(HL)
|
||||||
or a
|
CP ' '+1
|
||||||
jr z,.loc2
|
JR C,.no_name
|
||||||
ld (de),a
|
;
|
||||||
inc hl
|
.loop1: LD A,(HL)
|
||||||
inc de
|
AND A
|
||||||
djnz .loc1
|
jr z,.empty
|
||||||
|
CP '*'
|
||||||
|
JR Z,.no_name
|
||||||
|
CP '.'
|
||||||
|
JR Z,.no_name
|
||||||
|
CP '"'
|
||||||
|
JR Z,.no_name
|
||||||
|
CP '+'
|
||||||
|
JR Z,.no_name
|
||||||
|
CP ','
|
||||||
|
JR Z,.no_name
|
||||||
|
CP '/'
|
||||||
|
JR Z,.no_name
|
||||||
|
CP ':'
|
||||||
|
JR Z,.no_name
|
||||||
|
CP ';'
|
||||||
|
JR Z,.no_name
|
||||||
|
CP '<'
|
||||||
|
JR Z,.no_name
|
||||||
|
CP '='
|
||||||
|
JR Z,.no_name
|
||||||
|
CP '>'
|
||||||
|
JR Z,.no_name
|
||||||
|
CP '['
|
||||||
|
JR Z,.no_name
|
||||||
|
CP '\'
|
||||||
|
JR Z,.no_name
|
||||||
|
CP ']'
|
||||||
|
JR Z,.no_name
|
||||||
|
CP '|'
|
||||||
|
JR Z,.no_name
|
||||||
|
LD (DE),A
|
||||||
|
INC HL
|
||||||
|
INC DE
|
||||||
|
DJNZ .loop1
|
||||||
jr .loc3
|
jr .loc3
|
||||||
.loc2: ld a," " ; § ¯®«¨âì ®áâ ⮪ "LABEL" ¯à®¡¥«®¬
|
;
|
||||||
ld (de),a
|
.empty: ld a,b
|
||||||
inc de
|
cp 11
|
||||||
djnz .loc2
|
jr z,.no_name
|
||||||
|
;
|
||||||
|
ex de,hl
|
||||||
|
.loop2: ld (hl)," "
|
||||||
|
inc hl
|
||||||
|
djnz .loop2
|
||||||
|
jr .loc3
|
||||||
|
;
|
||||||
|
.no_name: ld hl,.loc22
|
||||||
|
ld de,LABEL1
|
||||||
|
ld bc,11
|
||||||
|
push hl
|
||||||
|
ldir
|
||||||
|
pop hl
|
||||||
|
ld de,LABEL
|
||||||
|
ld c,11
|
||||||
|
ldir
|
||||||
|
;
|
||||||
|
;
|
||||||
.loc3: ld hl,(CurElem1) ; ⥪. ¯®«®¦. 㪠§ ⥫ï ä®à¬ â
|
.loc3: ld hl,(CurElem1) ; ⥪. ¯®«®¦. 㪠§ ⥫ï ä®à¬ â
|
||||||
ld a,h
|
ld a,h
|
||||||
add a,l
|
add a,l
|
||||||
@ -211,8 +265,7 @@ Setup_Map:
|
|||||||
.loc18: db "830 kB "
|
.loc18: db "830 kB "
|
||||||
.loc50: db "TR-DOS "
|
.loc50: db "TR-DOS "
|
||||||
.loc51: db "CP/M-80"
|
.loc51: db "CP/M-80"
|
||||||
|
;
|
||||||
|
|
||||||
.loc19: db "(Standart mode) "
|
.loc19: db "(Standart mode) "
|
||||||
.loc29: db "(Optimize sectors)"
|
.loc29: db "(Optimize sectors)"
|
||||||
.loc20: db "(Quick format) "
|
.loc20: db "(Quick format) "
|
||||||
@ -349,11 +402,11 @@ SetMedia:
|
|||||||
ld hl,3E00h
|
ld hl,3E00h
|
||||||
ld (Avail),hl
|
ld (Avail),hl
|
||||||
ld a,18 ; ç¨á«® ᥪâ®à®¢
|
ld a,18 ; ç¨á«® ᥪâ®à®¢
|
||||||
ld (frm1+1),a
|
ld (FSETUP.sectorsAll),a
|
||||||
ld hl,18 ; ᥪâ®à®¢ áâ®à®ã
|
ld hl,18 ; ᥪâ®à®¢ áâ®à®ã
|
||||||
ld (SSect+1),hl
|
ld (FSETUP.sectorsSide),hl
|
||||||
ld a,34 ; ¯®á«. á«ã¦. ᥪâ®à
|
ld a,34 ; ¯®á«. á«ã¦. ᥪâ®à
|
||||||
ld (frm2+1),a
|
ld (FSETUP.lastSector),a
|
||||||
ld hl,16896 ; à §¬¥à FAT-®¢ + Root dir
|
ld hl,16896 ; à §¬¥à FAT-®¢ + Root dir
|
||||||
ld (frm5+1),hl
|
ld (frm5+1),hl
|
||||||
ld hl,2880 ; ᥪâ®à®¢ ¤¨áª¥
|
ld hl,2880 ; ᥪâ®à®¢ ¤¨áª¥
|
||||||
@ -363,7 +416,7 @@ SetMedia:
|
|||||||
.loc13: ld a,0F0h ; ¡ ©â ä®à¬ â
|
.loc13: ld a,0F0h ; ¡ ©â ä®à¬ â
|
||||||
ld (frm4+1),a
|
ld (frm4+1),a
|
||||||
ld a,1 ; ᥪâ®à®¢ ª« áâ¥à
|
ld a,1 ; ᥪâ®à®¢ ª« áâ¥à
|
||||||
ld (frm3+1),a
|
ld (FSETUP.sectorsPerCluster),a
|
||||||
ld hl,224 ; § ¯¨á¥© ¢ ª®à¥
|
ld hl,224 ; § ¯¨á¥© ¢ ª®à¥
|
||||||
ld (frm6+1),hl
|
ld (frm6+1),hl
|
||||||
.loc12: ld hl,Avail
|
.loc12: ld hl,Avail
|
||||||
@ -381,11 +434,11 @@ SetMedia:
|
|||||||
ld hl,7E00h
|
ld hl,7E00h
|
||||||
ld (Avail),hl
|
ld (Avail),hl
|
||||||
ld a,19 ; ç¨á«® ᥪâ®à®¢
|
ld a,19 ; ç¨á«® ᥪâ®à®¢
|
||||||
ld (frm1+1),a
|
ld (FSETUP.sectorsAll),a
|
||||||
ld hl,19 ; ᥪâ®à®¢ áâ®à®ã
|
ld hl,19 ; ᥪâ®à®¢ áâ®à®ã
|
||||||
ld (SSect+1),hl
|
ld (FSETUP.sectorsSide),hl
|
||||||
ld a,34 ; ¯®á«. á«ã¦. ᥪâ®à
|
ld a,34 ; ¯®á«. á«ã¦. ᥪâ®à
|
||||||
ld (frm2+1),a
|
ld (FSETUP.lastSector),a
|
||||||
ld hl,16896 ; à §¬¥à FAT-®¢ + Root dir
|
ld hl,16896 ; à §¬¥à FAT-®¢ + Root dir
|
||||||
ld (frm5+1),hl
|
ld (frm5+1),hl
|
||||||
ld hl,3040 ; ᥪâ®à®¢ ¤¨áª¥
|
ld hl,3040 ; ᥪâ®à®¢ ¤¨áª¥
|
||||||
@ -399,11 +452,11 @@ SetMedia:
|
|||||||
ld hl,0BA00h
|
ld hl,0BA00h
|
||||||
ld (Avail),hl
|
ld (Avail),hl
|
||||||
ld a,20 ; ç¨á«® ᥪâ®à®¢
|
ld a,20 ; ç¨á«® ᥪâ®à®¢
|
||||||
ld (frm1+1),a
|
ld (FSETUP.sectorsAll),a
|
||||||
ld hl,20 ; ᥪâ®à®¢ áâ®à®ã
|
ld hl,20 ; ᥪâ®à®¢ áâ®à®ã
|
||||||
ld (SSect+1),hl
|
ld (FSETUP.sectorsSide),hl
|
||||||
ld a,36 ; ¯®á«. á«ã¦. ᥪâ®à
|
ld a,36 ; ¯®á«. á«ã¦. ᥪâ®à
|
||||||
ld (frm2+1),a
|
ld (FSETUP.lastSector),a
|
||||||
ld hl,17920 ; à §¬¥à FAT-®¢ + Root dir
|
ld hl,17920 ; à §¬¥à FAT-®¢ + Root dir
|
||||||
ld (frm5+1),hl
|
ld (frm5+1),hl
|
||||||
ld hl,3200 ; ᥪâ®à®¢ ¤¨áª¥
|
ld hl,3200 ; ᥪâ®à®¢ ¤¨áª¥
|
||||||
@ -417,11 +470,11 @@ SetMedia:
|
|||||||
ld hl,5A00h
|
ld hl,5A00h
|
||||||
ld (Avail),hl
|
ld (Avail),hl
|
||||||
ld a,20 ; ç¨á«® ᥪâ®à®¢
|
ld a,20 ; ç¨á«® ᥪâ®à®¢
|
||||||
ld (frm1+1),a
|
ld (FSETUP.sectorsAll),a
|
||||||
ld hl,20 ; ᥪâ®à®¢ áâ®à®ã
|
ld hl,20 ; ᥪâ®à®¢ áâ®à®ã
|
||||||
ld (SSect+1),hl
|
ld (FSETUP.sectorsSide),hl
|
||||||
ld a,36 ; ¯®á«. á«ã¦. ᥪâ®à
|
ld a,36 ; ¯®á«. á«ã¦. ᥪâ®à
|
||||||
ld (frm2+1),a
|
ld (FSETUP.lastSector),a
|
||||||
ld hl,17920 ; à §¬¥à FAT-®¢ + Root dir
|
ld hl,17920 ; à §¬¥à FAT-®¢ + Root dir
|
||||||
ld (frm5+1),hl
|
ld (frm5+1),hl
|
||||||
ld hl,3280 ; ᥪâ®à®¢ ¤¨áª¥
|
ld hl,3280 ; ᥪâ®à®¢ ¤¨áª¥
|
||||||
@ -435,11 +488,11 @@ SetMedia:
|
|||||||
ld hl,0AA00h
|
ld hl,0AA00h
|
||||||
ld (Avail),hl
|
ld (Avail),hl
|
||||||
ld a,20 ; ç¨á«® ᥪâ®à®¢
|
ld a,20 ; ç¨á«® ᥪâ®à®¢
|
||||||
ld (frm1+1),a
|
ld (FSETUP.sectorsAll),a
|
||||||
ld hl,20 ; ᥪâ®à®¢ áâ®à®ã
|
ld hl,20 ; ᥪâ®à®¢ áâ®à®ã
|
||||||
ld (SSect+1),hl
|
ld (FSETUP.sectorsSide),hl
|
||||||
ld a,36 ; ¯®á«. á«ã¦. ᥪâ®à
|
ld a,36 ; ¯®á«. á«ã¦. ᥪâ®à
|
||||||
ld (frm2+1),a
|
ld (FSETUP.lastSector),a
|
||||||
ld hl,17920 ; à §¬¥à FAT-®¢ + Root dir
|
ld hl,17920 ; à §¬¥à FAT-®¢ + Root dir
|
||||||
ld (frm5+1),hl
|
ld (frm5+1),hl
|
||||||
ld hl,3320 ; ᥪâ®à®¢ ¤¨áª¥
|
ld hl,3320 ; ᥪâ®à®¢ ¤¨áª¥
|
||||||
@ -455,11 +508,11 @@ SetMedia:
|
|||||||
ld hl,0FA00h
|
ld hl,0FA00h
|
||||||
ld (Avail),hl
|
ld (Avail),hl
|
||||||
ld a,21 ; ç¨á«® ᥪâ®à®¢
|
ld a,21 ; ç¨á«® ᥪâ®à®¢
|
||||||
ld (frm1+1),a
|
ld (FSETUP.sectorsAll),a
|
||||||
ld hl,21 ; ᥪâ®à®¢ áâ®à®ã
|
ld hl,21 ; ᥪâ®à®¢ áâ®à®ã
|
||||||
ld (SSect+1),hl
|
ld (FSETUP.sectorsSide),hl
|
||||||
ld a,36 ; ¯®á«. á«ã¦. ᥪâ®à
|
ld a,36 ; ¯®á«. á«ã¦. ᥪâ®à
|
||||||
ld (frm2+1),a
|
ld (FSETUP.lastSector),a
|
||||||
ld hl,17920 ; à §¬¥à FAT-®¢ + Root dir
|
ld hl,17920 ; à §¬¥à FAT-®¢ + Root dir
|
||||||
ld (frm5+1),hl
|
ld (frm5+1),hl
|
||||||
ld hl,3360 ; ᥪâ®à®¢ ¤¨áª¥
|
ld hl,3360 ; ᥪâ®à®¢ ¤¨áª¥
|
||||||
@ -473,11 +526,11 @@ SetMedia:
|
|||||||
ld hl,0A200h
|
ld hl,0A200h
|
||||||
ld (Avail),hl
|
ld (Avail),hl
|
||||||
ld a,21 ; ç¨á«® ᥪâ®à®¢
|
ld a,21 ; ç¨á«® ᥪâ®à®¢
|
||||||
ld (frm1+1),a
|
ld (FSETUP.sectorsAll),a
|
||||||
ld hl,21 ; ᥪâ®à®¢ áâ®à®ã
|
ld hl,21 ; ᥪâ®à®¢ áâ®à®ã
|
||||||
ld (SSect+1),hl
|
ld (FSETUP.sectorsSide),hl
|
||||||
ld a,36 ; ¯®á«. á«ã¦. ᥪâ®à
|
ld a,36 ; ¯®á«. á«ã¦. ᥪâ®à
|
||||||
ld (frm2+1),a
|
ld (FSETUP.lastSector),a
|
||||||
ld hl,17920 ; à §¬¥à FAT-®¢ + Root dir
|
ld hl,17920 ; à §¬¥à FAT-®¢ + Root dir
|
||||||
ld (frm5+1),hl
|
ld (frm5+1),hl
|
||||||
ld hl,3444 ; ᥪâ®à®¢ ¤¨áª¥
|
ld hl,3444 ; ᥪâ®à®¢ ¤¨áª¥
|
||||||
@ -491,11 +544,11 @@ SetMedia:
|
|||||||
ld hl,0F200h
|
ld hl,0F200h
|
||||||
ld (Avail),hl
|
ld (Avail),hl
|
||||||
ld a,21 ; ç¨á«® ᥪâ®à®¢
|
ld a,21 ; ç¨á«® ᥪâ®à®¢
|
||||||
ld (frm1+1),a
|
ld (FSETUP.sectorsAll),a
|
||||||
ld hl,21 ; ᥪâ®à®¢ áâ®à®ã
|
ld hl,21 ; ᥪâ®à®¢ áâ®à®ã
|
||||||
ld (SSect+1),hl
|
ld (FSETUP.sectorsSide),hl
|
||||||
ld a,38 ; ¯®á«. á«ã¦. ᥪâ®à
|
ld a,38 ; ¯®á«. á«ã¦. ᥪâ®à
|
||||||
ld (frm2+1),a
|
ld (FSETUP.lastSector),a
|
||||||
ld hl,18944 ; à §¬¥à FAT-®¢ + Root dir
|
ld hl,18944 ; à §¬¥à FAT-®¢ + Root dir
|
||||||
ld (frm5+1),hl
|
ld (frm5+1),hl
|
||||||
ld hl,3486 ; ᥪâ®à®¢ ¤¨áª¥
|
ld hl,3486 ; ᥪâ®à®¢ ¤¨áª¥
|
||||||
@ -516,21 +569,21 @@ SetMedia:
|
|||||||
ld hl,2400h
|
ld hl,2400h
|
||||||
ld (Avail),hl
|
ld (Avail),hl
|
||||||
ld a,9 ; ç¨á«® ᥪâ®à®¢
|
ld a,9 ; ç¨á«® ᥪâ®à®¢
|
||||||
ld (frm1+1),a
|
ld (FSETUP.sectorsAll),a
|
||||||
ld hl,9 ; ᥪâ®à®¢ áâ®à®ã
|
ld hl,9 ; ᥪâ®à®¢ áâ®à®ã
|
||||||
ld (SSect+1),hl
|
ld (FSETUP.sectorsSide),hl
|
||||||
ld hl,1440 ; ᥪâ®à®¢ ¤¨áª¥
|
ld hl,1440 ; ᥪâ®à®¢ ¤¨áª¥
|
||||||
ld (ASect+1),hl
|
ld (ASect+1),hl
|
||||||
.loc15: ld hl,6656 ; à §¬¥à FAT-®¢ + Root dir
|
.loc15: ld hl,6656 ; à §¬¥à FAT-®¢ + Root dir
|
||||||
ld (frm5+1),hl
|
ld (frm5+1),hl
|
||||||
ld a,14 ; ¯®á«. á«ã¦. ᥪâ®à
|
ld a,14 ; ¯®á«. á«ã¦. ᥪâ®à
|
||||||
ld (frm2+1),a
|
ld (FSETUP.lastSector),a
|
||||||
ld hl,3 ; ᥪâ®à®¢ FAT
|
ld hl,3 ; ᥪâ®à®¢ FAT
|
||||||
ld (FSect+1),hl
|
ld (FSect+1),hl
|
||||||
ld a,0F9h ; ¡ ©â ä®à¬ â
|
ld a,0F9h ; ¡ ©â ä®à¬ â
|
||||||
ld (frm4+1),a
|
ld (frm4+1),a
|
||||||
ld a,2 ; ᥪâ®à®¢ ª« áâ¥à
|
ld a,2 ; ᥪâ®à®¢ ª« áâ¥à
|
||||||
ld (frm3+1),a
|
ld (FSETUP.sectorsPerCluster),a
|
||||||
ld hl,112 ; § ¯¨á¥© ¢ ª®à¥
|
ld hl,112 ; § ¯¨á¥© ¢ ª®à¥
|
||||||
ld (frm6+1),hl
|
ld (frm6+1),hl
|
||||||
jp .loc12
|
jp .loc12
|
||||||
@ -558,9 +611,9 @@ SetMedia:
|
|||||||
ld hl,1660 ; ᥪâ®à®¢ ¤¨áª¥
|
ld hl,1660 ; ᥪâ®à®¢ ¤¨áª¥
|
||||||
ld (ASect+1),hl
|
ld (ASect+1),hl
|
||||||
.loc16: ld a,10 ; ç¨á«® ᥪâ®à®¢
|
.loc16: ld a,10 ; ç¨á«® ᥪâ®à®¢
|
||||||
ld (frm1+1),a
|
ld (FSETUP.sectorsAll),a
|
||||||
ld hl,10 ; ᥪâ®à®¢ áâ®à®ã
|
ld hl,10 ; ᥪâ®à®¢ áâ®à®ã
|
||||||
ld (SSect+1),hl
|
ld (FSETUP.sectorsSide),hl
|
||||||
ld hl,36 ; à §¬¥à ¬¥¦á¥ªâ. ¯à®¡¥«
|
ld hl,36 ; à §¬¥à ¬¥¦á¥ªâ. ¯à®¡¥«
|
||||||
ld (GAP3),hl
|
ld (GAP3),hl
|
||||||
ld hl,INTERL3 ; ãáâ. ¨â¥à«¨¢ ¤«ï 21 ᥪâ®à
|
ld hl,INTERL3 ; ãáâ. ¨â¥à«¨¢ ¤«ï 21 ᥪâ®à
|
||||||
@ -825,27 +878,125 @@ SetDrive:
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
; << ”ãªæ¨ï á®§¤ ¨ï âਡãâ "¬¥âª ⮬ " ã¡à ¨§ DSS >>
|
|
||||||
;
|
|
||||||
; ‘®§¤ ¨¥ ¬¥âª¨ ¤¨áª¥âë (MS-DOS)
|
; ‘®§¤ ¨¥ ¬¥âª¨ ¤¨áª¥âë (MS-DOS)
|
||||||
; (¡ ©â âਡãâ 室¨âáï ¯® ᬥé. +11 ®â ç « § ¯¨á¨)
|
|
||||||
CreateLabel:
|
CreateLabel:
|
||||||
ret
|
; ld hl,LABEL ; ¨¬ï ¬¥âª¨
|
||||||
ld hl,LABEL ; ¨¬ï ¬¥âª¨
|
; ld a,(hl)
|
||||||
ld a,(hl)
|
; or a
|
||||||
or a
|
; ret z
|
||||||
ret z
|
; call SetDisketa ; ãáâ. ⥪ã騬 ¤¨áª®¬ ¤¨áª¥âã
|
||||||
call SetDisketa ; ãáâ. ⥪ã騬 ¤¨áª®¬ ¤¨áª¥âã
|
; ; á®§¤ âì ä ©«
|
||||||
; á®§¤ âì ä ©«
|
; ld hl,LABEL ; ¨¬ï ¬¥âª¨
|
||||||
ld hl,LABEL ; ¨¬ï ¬¥âª¨
|
; ld a,08h ; âਡãâ "¬¥âª ⮬ "
|
||||||
ld a,08h ; âਡãâ "¬¥âª ⮬ "
|
; ld c,0Ah
|
||||||
ld c,0Ah
|
; RST ToDSS
|
||||||
RST ToDSS
|
; jr c,.loc1 ; ®è¨¡ª á®§¤ ¨ï ¬¥âª¨
|
||||||
jr c,.loc1 ; ®è¨¡ª á®§¤ ¨ï ¬¥âª¨
|
; ;ret c
|
||||||
;ret c
|
; ; § ªàëâì ä ©«
|
||||||
; § ªàëâì ä ©«
|
; ld c,12h
|
||||||
ld c,12h
|
; RST ToDSS
|
||||||
RST ToDSS
|
; .loc1: jp RestPath ; ¢®ááâ. ¤¨áª ¨ ¯ãâì
|
||||||
.loc1: jp RestPath ; ¢®ááâ. ¤¨áª ¨ ¯ãâì
|
; ><|?*/\:"
|
||||||
|
ld hl,LABEL1
|
||||||
|
ld de,L2400 + BOOT_SECTOR.FAT.LABEL
|
||||||
|
LD BC,11 ; áç¥â稪
|
||||||
|
LDIR
|
||||||
|
RET
|
||||||
|
; ;
|
||||||
|
; LD A,(HL)
|
||||||
|
; CP ' '+1
|
||||||
|
; JR C,.no_name
|
||||||
|
; .loop1: LD A,(HL)
|
||||||
|
; AND A
|
||||||
|
; jr z,.empty
|
||||||
|
; CP '*'
|
||||||
|
; JR Z,.no_name
|
||||||
|
; CP '.'
|
||||||
|
; JR Z,.no_name
|
||||||
|
; CP '"'
|
||||||
|
; JR Z,.no_name
|
||||||
|
; CP '+'
|
||||||
|
; JR Z,.no_name
|
||||||
|
; CP ','
|
||||||
|
; JR Z,.no_name
|
||||||
|
; CP '/'
|
||||||
|
; JR Z,.no_name
|
||||||
|
; CP ':'
|
||||||
|
; JR Z,.no_name
|
||||||
|
; CP ';'
|
||||||
|
; JR Z,.no_name
|
||||||
|
; CP '<'
|
||||||
|
; JR Z,.no_name
|
||||||
|
; CP '='
|
||||||
|
; JR Z,.no_name
|
||||||
|
; CP '>'
|
||||||
|
; JR Z,.no_name
|
||||||
|
; CP '['
|
||||||
|
; JR Z,.no_name
|
||||||
|
; CP '\'
|
||||||
|
; JR Z,.no_name
|
||||||
|
; CP ']'
|
||||||
|
; JR Z,.no_name
|
||||||
|
; CP '|'
|
||||||
|
; JR Z,.no_name
|
||||||
|
; LD (DE),A
|
||||||
|
; INC HL
|
||||||
|
; INC DE
|
||||||
|
; DJNZ .loop1
|
||||||
; RET
|
; RET
|
||||||
|
; ;
|
||||||
|
; .empty: ld a,b
|
||||||
|
; cp 11
|
||||||
|
; jr z,.no_name
|
||||||
|
; ;
|
||||||
|
; ex de,hl
|
||||||
|
; .loop2: ld (hl)," "
|
||||||
|
; inc hl
|
||||||
|
; djnz .loop2
|
||||||
|
; ret
|
||||||
|
; ;
|
||||||
|
; .no_name: ld hl,Setup_Map.loc22
|
||||||
|
; ld de,L2400 + BOOT_SECTOR.FAT.LABEL
|
||||||
|
; ld bc,11
|
||||||
|
; push hl
|
||||||
|
; ldir
|
||||||
|
; pop hl
|
||||||
|
; ld de,LABEL
|
||||||
|
; ld c,11
|
||||||
|
; ldir
|
||||||
|
; ret
|
||||||
|
|
||||||
|
; ‚ëå®¤ë¥ § 票ï:
|
||||||
|
; D - ¤¥ì
|
||||||
|
; E - ¬¥áïæ
|
||||||
|
; IX - £®¤
|
||||||
|
; H - ç á
|
||||||
|
; L - ¬¨ãâë
|
||||||
|
; B - ᥪã¤ë
|
||||||
|
; C - ¤¥ì ¥¤¥«¨
|
||||||
|
;!TEST
|
||||||
|
CreateSerialNumber:
|
||||||
|
ld c,Dss.SysTime
|
||||||
|
rst ToDSS
|
||||||
|
;
|
||||||
|
ex de,hl
|
||||||
|
add ix,de
|
||||||
|
ld (L2400 + BOOT_SECTOR.FAT.SERIAL_NUMBER + 2),ix
|
||||||
|
;
|
||||||
|
ld a,d
|
||||||
|
ld d,b
|
||||||
|
xor c
|
||||||
|
.loop: rra
|
||||||
|
djnz .loop
|
||||||
|
;
|
||||||
|
ld e,h
|
||||||
|
ld h,l
|
||||||
|
ld l,e
|
||||||
|
;
|
||||||
|
ld e,a
|
||||||
|
add hl,de
|
||||||
|
; ld e,l
|
||||||
|
; ld l,h
|
||||||
|
; ld h,e
|
||||||
|
ld (L2400 + BOOT_SECTOR.FAT.SERIAL_NUMBER),hl
|
||||||
|
ret
|
||||||
508
RADIO.ASM
508
RADIO.ASM
@ -6,45 +6,44 @@
|
|||||||
|
|
||||||
|
|
||||||
; <20>ãä¥à ¨¬¥¨ ¬¥âª¨ ¤¨áª¥âë
|
; <20>ãä¥à ¨¬¥¨ ¬¥âª¨ ¤¨áª¥âë
|
||||||
LabelBuff:
|
LabelBuff: DB 11 ; Max input symbols
|
||||||
db 11 ; Max input symbols
|
DB 0 ; ReadyString
|
||||||
db 0 ; ReadyString
|
DB 0 ; Pos X
|
||||||
db 0 ; Pos X
|
DB 0 ; Add X
|
||||||
db 0 ; Add X
|
DB 0 ; Inp.Symb
|
||||||
db 0 ; Inp.Symb
|
LABEL: DS 12,0 ;!TEST
|
||||||
LABEL: ds 12,0
|
|
||||||
|
|
||||||
cSystem:db 0 ; 01/00 - á®§¤./¥ á®§¤. á¨áâ. ¤¨áª¥âã
|
cSystem: DB 0 ; 01/00 - á®§¤./¥ á®§¤. á¨áâ. ¤¨áª¥âã
|
||||||
|
|
||||||
|
|
||||||
Mode0: db 0 ; "Standart mode"
|
Mode0: DB 0 ; "Standart mode"
|
||||||
Mode2: db 1 ; "Optimize sectors"
|
Mode2: DB 1 ; "Optimize sectors"
|
||||||
Mode1: db 0 ; "Quick format"
|
Mode1: DB 0 ; "Quick format"
|
||||||
|
|
||||||
|
|
||||||
CurElem0:dw 0 ; ⥪. ¯®«®¦. ªãàá®à ListBox1-
|
CurElem0: DW 0 ; ⥪. ¯®«®¦. ªãàá®à ListBox1-
|
||||||
CurElem1:dw 0 ; ⥪. ¯®«®¦. ªãàá®à ListBox2-
|
CurElem1: DW 0 ; ⥪. ¯®«®¦. ªãàá®à ListBox2-
|
||||||
|
|
||||||
|
|
||||||
CurILFl:db 0 ; ä« £ ªãàá®à 00-¢ëª«/01-¢ª«
|
CurILFl: DB 0 ; ä« £ ªãàá®à 00-¢ëª«/01-¢ª«
|
||||||
Flag: db 0 ; ä« £ ªãàá®à 00-¥â/01-¥áâì
|
;Flag: DB 0 ; ä« £ ªãàá®à 00-¥â/01-¥áâì
|
||||||
Timer: db 1 ; â ©¬¥à
|
Timer: DB 1 ; â ©¬¥à
|
||||||
CursPos:dw 0 ; ¯®§¨æ¨ï ªãàá®à
|
CursPos: DW 0 ; ¯®§¨æ¨ï ªãàá®à
|
||||||
|
|
||||||
_OS: db 0 ; 00/01/02 ⨯ Ž‘ (ms-dos/tr-dos/cpm)
|
_OS: DB 0 ; 00/01/02 ⨯ Ž‘ (ms-dos/tr-dos/cpm)
|
||||||
|
|
||||||
|
|
||||||
; Ž¯æ¨¨ ¢ë¡®à ä®à¬ â FDD
|
; Ž¯æ¨¨ ¢ë¡®à ä®à¬ â FDD
|
||||||
; ¤¨áª "A"
|
; ¤¨áª "A"
|
||||||
DriveA:
|
DriveA:
|
||||||
SetDriveA0:db 1 ; 1.44Mb 3.5"
|
SetDriveA0: DB 1 ; 1.44Mb 3.5"
|
||||||
SetDriveA1:db 0 ; 720kB 5.25"
|
SetDriveA1: DB 0 ; 720kB 5.25"
|
||||||
SetDriveA2:db 0 ; None (ï祩ª ¥ ®âá«¥¦¨¢ ¥âáï)
|
SetDriveA2: DB 0 ; None (ï祩ª ¥ ®âá«¥¦¨¢ ¥âáï)
|
||||||
; ¤¨áª "B"
|
; ¤¨áª "B"
|
||||||
DriveB:
|
DriveB:
|
||||||
SetDriveB0:db 0 ; 1.44Mb 3.5"
|
SetDriveB0: DB 0 ; 1.44Mb 3.5"
|
||||||
SetDriveB1:db 1 ; 720kB 5.25"
|
SetDriveB1: DB 1 ; 720kB 5.25"
|
||||||
SetDriveB2:db 0 ; None
|
SetDriveB2: DB 0 ; None
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -86,13 +85,13 @@ PInpLine:
|
|||||||
LD (IY+3),A ;+3 Yo
|
LD (IY+3),A ;+3 Yo
|
||||||
CALL GetPutA
|
CALL GetPutA
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
ld a,(ColDialWn)
|
LD A,(ColDialWn)
|
||||||
LD C,A
|
LD C,A
|
||||||
LD A,(DE)
|
LD A,(DE)
|
||||||
PInpLp1: INC DE
|
PInpLp1: INC DE
|
||||||
CP '~'
|
CP '~'
|
||||||
JR NZ,PInpN0
|
JR NZ,PInpN0
|
||||||
ld c,ColDhotkey
|
LD C,ColDhotkey
|
||||||
;LD C,A
|
;LD C,A
|
||||||
LD A,(DE)
|
LD A,(DE)
|
||||||
INC DE
|
INC DE
|
||||||
@ -107,7 +106,7 @@ PInpLp1:INC DE
|
|||||||
INC HL
|
INC HL
|
||||||
INC DE
|
INC DE
|
||||||
INC (IX+4)
|
INC (IX+4)
|
||||||
ld a,(ColDialWn)
|
LD A,(ColDialWn)
|
||||||
LD C,A
|
LD C,A
|
||||||
LD A,(DE)
|
LD A,(DE)
|
||||||
INC DE
|
INC DE
|
||||||
@ -151,7 +150,7 @@ PInpN0: LD (HL),A
|
|||||||
INC DE
|
INC DE
|
||||||
PUSH HL
|
PUSH HL
|
||||||
next1: LD HL,0
|
next1: LD HL,0
|
||||||
ld c,ColInpLine ; 梥â áâப¨ ¢¢®¤
|
LD C,ColInpLine ; 梥â áâப¨ ¢¢®¤
|
||||||
;LD C,A
|
;LD C,A
|
||||||
PInpLp2: LD A,(DE)
|
PInpLp2: LD A,(DE)
|
||||||
INC DE
|
INC DE
|
||||||
@ -231,8 +230,8 @@ PClRadioB:
|
|||||||
LD A,"Ú"
|
LD A,"Ú"
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
INC DE
|
INC DE
|
||||||
ld a,ColLstBxFr ; 梥â à ¬ª¨
|
LD A,ColLstBxFr ; 梥â à ¬ª¨
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
INC DE
|
INC DE
|
||||||
LD A," "
|
LD A," "
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
@ -260,15 +259,15 @@ PClRadioB:
|
|||||||
clrd1: LD A,"Ä"
|
clrd1: LD A,"Ä"
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
INC DE
|
INC DE
|
||||||
ld a,ColLstBxFr ;
|
LD A,ColLstBxFr ;
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
INC DE
|
INC DE
|
||||||
DJNZ clrd1
|
DJNZ clrd1
|
||||||
ClRadN1: LD A,"¿"
|
ClRadN1: LD A,"¿"
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
inc de
|
INC DE
|
||||||
ld a,ColLstBxFr ;
|
LD A,ColLstBxFr ;
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
INC (IX+5)
|
INC (IX+5)
|
||||||
LD BC,6 ;Next element claster
|
LD BC,6 ;Next element claster
|
||||||
ADD IY,BC
|
ADD IY,BC
|
||||||
@ -280,16 +279,16 @@ ClRadN1:LD A,"
|
|||||||
LD (HL),"³"
|
LD (HL),"³"
|
||||||
INC HL
|
INC HL
|
||||||
;ld a,(ColLstBxFr) ;
|
;ld a,(ColLstBxFr) ;
|
||||||
ld (hl),ColLstBxFr
|
LD (HL),ColLstBxFr
|
||||||
INC HL
|
INC HL
|
||||||
LD C,(IX+6)
|
LD C,(IX+6)
|
||||||
LD B,0
|
LD B,0
|
||||||
ADD HL,BC
|
ADD HL,BC
|
||||||
ADD HL,BC
|
ADD HL,BC
|
||||||
LD (HL),"³"
|
LD (HL),"³"
|
||||||
inc hl
|
INC HL
|
||||||
;ld a,(ColLstBxFr) ;
|
;ld a,(ColLstBxFr) ;
|
||||||
ld (hl),ColLstBxFr
|
LD (HL),ColLstBxFr
|
||||||
INC (IX+5)
|
INC (IX+5)
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
;
|
;
|
||||||
@ -302,7 +301,7 @@ ClRadLp:LD C,(IX+4) ;pos element
|
|||||||
LD (HL),"³"
|
LD (HL),"³"
|
||||||
INC HL
|
INC HL
|
||||||
;ld a,(ColLstBxFr) ;
|
;ld a,(ColLstBxFr) ;
|
||||||
ld (hl),ColLstBxFr
|
LD (HL),ColLstBxFr
|
||||||
INC HL
|
INC HL
|
||||||
INC HL
|
INC HL
|
||||||
INC HL
|
INC HL
|
||||||
@ -323,13 +322,13 @@ ClRadLp:LD C,(IX+4) ;pos element
|
|||||||
INC HL
|
INC HL
|
||||||
INC B
|
INC B
|
||||||
;
|
;
|
||||||
ld a,(ColDialWn) ;Put name element
|
LD A,(ColDialWn) ;Put name element
|
||||||
LD C,A
|
LD C,A
|
||||||
LD A,(DE)
|
LD A,(DE)
|
||||||
ClRadL1: INC DE
|
ClRadL1: INC DE
|
||||||
CP '~'
|
CP '~'
|
||||||
JR NZ,ClRadN0
|
JR NZ,ClRadN0
|
||||||
ld c,ColDhotkey
|
LD C,ColDhotkey
|
||||||
;LD C,A
|
;LD C,A
|
||||||
LD A,(DE)
|
LD A,(DE)
|
||||||
INC DE
|
INC DE
|
||||||
@ -343,7 +342,7 @@ ClRadL1:INC DE
|
|||||||
LD (HL),A
|
LD (HL),A
|
||||||
INC HL
|
INC HL
|
||||||
INC DE
|
INC DE
|
||||||
ld a,(ColDialWn)
|
LD A,(ColDialWn)
|
||||||
LD C,A
|
LD C,A
|
||||||
INC B
|
INC B
|
||||||
LD A,(DE)
|
LD A,(DE)
|
||||||
@ -364,9 +363,9 @@ ClRadN0:LD (HL),A
|
|||||||
ADD HL,BC
|
ADD HL,BC
|
||||||
ADD HL,BC
|
ADD HL,BC
|
||||||
LD (HL),"³"
|
LD (HL),"³"
|
||||||
inc hl
|
INC HL
|
||||||
;ld a,(ColLstBxFr) ;
|
;ld a,(ColLstBxFr) ;
|
||||||
ld (hl),ColLstBxFr
|
LD (HL),ColLstBxFr
|
||||||
LD A,(IX+5) ;Current Y pos
|
LD A,(IX+5) ;Current Y pos
|
||||||
ADD A,(IX+1) ;from begin screen
|
ADD A,(IX+1) ;from begin screen
|
||||||
LD (IY+0),A
|
LD (IY+0),A
|
||||||
@ -409,20 +408,20 @@ ClRadN0:LD (HL),A
|
|||||||
LD (HL),"À"
|
LD (HL),"À"
|
||||||
INC HL
|
INC HL
|
||||||
;ld a,(ColLstBxFr) ;
|
;ld a,(ColLstBxFr) ;
|
||||||
ld (hl),ColLstBxFr
|
LD (HL),ColLstBxFr
|
||||||
INC HL
|
INC HL
|
||||||
LD B,(IX+6)
|
LD B,(IX+6)
|
||||||
clrd2: LD A,"Ä"
|
clrd2: LD A,"Ä"
|
||||||
LD (HL),A
|
LD (HL),A
|
||||||
INC HL
|
INC HL
|
||||||
;ld a,(ColLstBxFr) ;
|
;ld a,(ColLstBxFr) ;
|
||||||
ld (hl),ColLstBxFr
|
LD (HL),ColLstBxFr
|
||||||
INC HL
|
INC HL
|
||||||
DJNZ clrd2
|
DJNZ clrd2
|
||||||
LD (HL),"Ù"
|
LD (HL),"Ù"
|
||||||
inc hl
|
INC HL
|
||||||
;ld a,(ColLstBxFr) ;
|
;ld a,(ColLstBxFr) ;
|
||||||
ld (hl),ColLstBxFr
|
LD (HL),ColLstBxFr
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
PUSH IY
|
PUSH IY
|
||||||
EXX
|
EXX
|
||||||
@ -486,8 +485,8 @@ PClCheckB:
|
|||||||
LD A,"Ú"
|
LD A,"Ú"
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
INC DE
|
INC DE
|
||||||
ld a,ColLstBxFr ;
|
LD A,ColLstBxFr ;
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
INC DE
|
INC DE
|
||||||
LD A," "
|
LD A," "
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
@ -515,15 +514,15 @@ PClCheckB:
|
|||||||
clch1: LD A,"Ä"
|
clch1: LD A,"Ä"
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
INC DE
|
INC DE
|
||||||
ld a,ColLstBxFr ;
|
LD A,ColLstBxFr ;
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
INC DE
|
INC DE
|
||||||
DJNZ clch1
|
DJNZ clch1
|
||||||
ClChkN1: LD A,"¿"
|
ClChkN1: LD A,"¿"
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
inc de
|
INC DE
|
||||||
ld a,ColLstBxFr ;
|
LD A,ColLstBxFr ;
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
INC (IX+5)
|
INC (IX+5)
|
||||||
LD BC,6 ;Next element claster
|
LD BC,6 ;Next element claster
|
||||||
ADD IY,BC
|
ADD IY,BC
|
||||||
@ -535,16 +534,16 @@ ClChkN1:LD A,"
|
|||||||
LD (HL),"³"
|
LD (HL),"³"
|
||||||
INC HL
|
INC HL
|
||||||
;ld a,(ColLstBxFr) ;
|
;ld a,(ColLstBxFr) ;
|
||||||
ld (hl),ColLstBxFr
|
LD (HL),ColLstBxFr
|
||||||
INC HL
|
INC HL
|
||||||
LD C,(IX+6)
|
LD C,(IX+6)
|
||||||
LD B,0
|
LD B,0
|
||||||
ADD HL,BC
|
ADD HL,BC
|
||||||
ADD HL,BC
|
ADD HL,BC
|
||||||
LD (HL),"³"
|
LD (HL),"³"
|
||||||
inc hl
|
INC HL
|
||||||
;ld a,(ColLstBxFr) ;
|
;ld a,(ColLstBxFr) ;
|
||||||
ld (hl),ColLstBxFr
|
LD (HL),ColLstBxFr
|
||||||
INC (IX+5)
|
INC (IX+5)
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
; Next element
|
; Next element
|
||||||
@ -556,7 +555,7 @@ ClChkLp:LD C,(IX+4) ;pos element
|
|||||||
LD (HL),"³"
|
LD (HL),"³"
|
||||||
INC HL
|
INC HL
|
||||||
;ld a,(ColLstBxFr) ;
|
;ld a,(ColLstBxFr) ;
|
||||||
ld (hl),ColLstBxFr
|
LD (HL),ColLstBxFr
|
||||||
INC HL
|
INC HL
|
||||||
INC HL
|
INC HL
|
||||||
INC HL
|
INC HL
|
||||||
@ -577,13 +576,13 @@ ClChkLp:LD C,(IX+4) ;pos element
|
|||||||
INC HL
|
INC HL
|
||||||
INC B
|
INC B
|
||||||
;
|
;
|
||||||
ld a,(ColDialWn) ;Put name element
|
LD A,(ColDialWn) ;Put name element
|
||||||
LD C,A
|
LD C,A
|
||||||
LD A,(DE)
|
LD A,(DE)
|
||||||
ClChkL1: INC DE
|
ClChkL1: INC DE
|
||||||
CP '~'
|
CP '~'
|
||||||
JR NZ,ClChkN0
|
JR NZ,ClChkN0
|
||||||
ld c,ColDhotkey
|
LD C,ColDhotkey
|
||||||
;LD C,A
|
;LD C,A
|
||||||
LD A,(DE)
|
LD A,(DE)
|
||||||
INC DE
|
INC DE
|
||||||
@ -597,7 +596,7 @@ ClChkL1:INC DE
|
|||||||
LD (HL),A
|
LD (HL),A
|
||||||
INC HL
|
INC HL
|
||||||
INC DE
|
INC DE
|
||||||
ld a,(ColDialWn)
|
LD A,(ColDialWn)
|
||||||
LD C,A
|
LD C,A
|
||||||
INC B
|
INC B
|
||||||
LD A,(DE)
|
LD A,(DE)
|
||||||
@ -618,9 +617,9 @@ ClChkN0:LD (HL),A
|
|||||||
ADD HL,BC
|
ADD HL,BC
|
||||||
ADD HL,BC
|
ADD HL,BC
|
||||||
LD (HL),"³"
|
LD (HL),"³"
|
||||||
inc hl
|
INC HL
|
||||||
;ld a,(ColLstBxFr) ;
|
;ld a,(ColLstBxFr) ;
|
||||||
ld (hl),ColLstBxFr
|
LD (HL),ColLstBxFr
|
||||||
;
|
;
|
||||||
LD A,(IX+5) ;Current Y pos
|
LD A,(IX+5) ;Current Y pos
|
||||||
ADD A,(IX+1) ;from begin screen
|
ADD A,(IX+1) ;from begin screen
|
||||||
@ -664,20 +663,20 @@ ClChkN0:LD (HL),A
|
|||||||
LD (HL),"À"
|
LD (HL),"À"
|
||||||
INC HL
|
INC HL
|
||||||
;ld a,(ColLstBxFr) ;
|
;ld a,(ColLstBxFr) ;
|
||||||
ld (hl),ColLstBxFr
|
LD (HL),ColLstBxFr
|
||||||
INC HL
|
INC HL
|
||||||
LD B,(IX+6)
|
LD B,(IX+6)
|
||||||
clch2: LD A,"Ä"
|
clch2: LD A,"Ä"
|
||||||
LD (HL),A
|
LD (HL),A
|
||||||
INC HL
|
INC HL
|
||||||
;ld a,(ColLstBxFr) ;
|
;ld a,(ColLstBxFr) ;
|
||||||
ld (hl),ColLstBxFr
|
LD (HL),ColLstBxFr
|
||||||
INC HL
|
INC HL
|
||||||
DJNZ clch2
|
DJNZ clch2
|
||||||
LD (HL),"Ù"
|
LD (HL),"Ù"
|
||||||
inc hl
|
INC HL
|
||||||
;ld a,(ColLstBxFr) ;
|
;ld a,(ColLstBxFr) ;
|
||||||
ld (hl),ColLstBxFr
|
LD (HL),ColLstBxFr
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
PUSH IY
|
PUSH IY
|
||||||
EXX
|
EXX
|
||||||
@ -697,90 +696,90 @@ clch2: LD A,"
|
|||||||
; Input: HL-label
|
; Input: HL-label
|
||||||
; Format mouse table: None
|
; Format mouse table: None
|
||||||
;
|
;
|
||||||
PFrame: ld c,(hl) ; X pos
|
PFrame: LD C,(HL) ; X pos
|
||||||
inc hl
|
INC HL
|
||||||
ld b,(hl) ; Y pos
|
LD B,(HL) ; Y pos
|
||||||
inc hl ; X len
|
INC HL ; X len
|
||||||
inc hl ; Y len
|
INC HL ; Y len
|
||||||
ld a,(hl)
|
LD A,(HL)
|
||||||
push af ; á®åà. Y len
|
PUSH AF ; á®åà. Y len
|
||||||
push bc
|
PUSH BC
|
||||||
call GetPutA
|
CALL GetPutA
|
||||||
ld a,"Ú"
|
LD A,"Ú"
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
inc de
|
INC DE
|
||||||
ld a,ColorFrame
|
LD A,ColorFrame
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
inc de
|
INC DE
|
||||||
dec hl
|
DEC HL
|
||||||
ld b,(hl) ; X len
|
LD B,(HL) ; X len
|
||||||
.loop1: ld a,"Ä"
|
.loop1: LD A,"Ä"
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
inc de
|
INC DE
|
||||||
ld a,ColorFrame
|
LD A,ColorFrame
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
inc de
|
INC DE
|
||||||
djnz .loop1
|
DJNZ .loop1
|
||||||
ld a,"¿"
|
LD A,"¿"
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
inc de
|
INC DE
|
||||||
ld a,ColorFrame
|
LD A,ColorFrame
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
pop bc
|
POP BC
|
||||||
.loop2: inc b
|
.loop2: INC B
|
||||||
push bc
|
PUSH BC
|
||||||
call GetPutA
|
CALL GetPutA
|
||||||
ex de,hl
|
EX DE,HL
|
||||||
ld (hl),"³"
|
LD (HL),"³"
|
||||||
inc hl
|
INC HL
|
||||||
ld (hl),ColorFrame
|
LD (HL),ColorFrame
|
||||||
inc hl
|
INC HL
|
||||||
ex de,hl
|
EX DE,HL
|
||||||
ld b,(hl) ; X len
|
LD B,(HL) ; X len
|
||||||
.loop3: ld a," "
|
.loop3: LD A," "
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
inc de
|
INC DE
|
||||||
ld a,ColorFrame ; 梥⠢ãâਠä३¬
|
LD A,ColorFrame ; 梥⠢ãâਠä३¬
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
inc de
|
INC DE
|
||||||
djnz .loop3
|
DJNZ .loop3
|
||||||
ld a,"³"
|
LD A,"³"
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
inc de
|
INC DE
|
||||||
ld a,ColorFrame
|
LD A,ColorFrame
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
inc de
|
INC DE
|
||||||
pop bc
|
POP BC
|
||||||
inc hl
|
INC HL
|
||||||
dec (hl)
|
DEC (HL)
|
||||||
dec hl
|
DEC HL
|
||||||
jr nz,.loop2
|
JR NZ,.loop2
|
||||||
inc b
|
INC B
|
||||||
call GetPutA
|
CALL GetPutA
|
||||||
ld a,"À"
|
LD A,"À"
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
inc de
|
INC DE
|
||||||
ld a,ColorFrame
|
LD A,ColorFrame
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
inc de
|
INC DE
|
||||||
ld b,(hl) ; X len
|
LD B,(HL) ; X len
|
||||||
inc hl
|
INC HL
|
||||||
pop af
|
POP AF
|
||||||
ld (hl),a ; ¢®ááâ. Y len
|
LD (HL),A ; ¢®ááâ. Y len
|
||||||
.loop4: ld a,"Ä"
|
.loop4: LD A,"Ä"
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
inc de
|
INC DE
|
||||||
ld a,ColorFrame
|
LD A,ColorFrame
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
inc de
|
INC DE
|
||||||
djnz .loop4
|
DJNZ .loop4
|
||||||
ld a,"Ù"
|
LD A,"Ù"
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
inc de
|
INC DE
|
||||||
ld a,ColorFrame
|
LD A,ColorFrame
|
||||||
ld (de),a
|
LD (DE),A
|
||||||
inc hl
|
INC HL
|
||||||
ret
|
RET
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -893,7 +892,7 @@ SetInLn:CALL MoveObj ;Select Input line
|
|||||||
EI
|
EI
|
||||||
InLnExt: LD HL,what
|
InLnExt: LD HL,what
|
||||||
LD (HL),evNothing
|
LD (HL),evNothing
|
||||||
jp GetFire
|
JP GetFire
|
||||||
|
|
||||||
|
|
||||||
; Work select input line
|
; Work select input line
|
||||||
@ -1029,7 +1028,7 @@ EIcombK:BIT 7,(IX+1)
|
|||||||
JP SetInLn ; ¢ë¤¥«¨âì ¯à¥¤. ®¡ê¥ªâ
|
JP SetInLn ; ¢ë¤¥«¨âì ¯à¥¤. ®¡ê¥ªâ
|
||||||
;
|
;
|
||||||
EIcombn: PUSH IY
|
EIcombn: PUSH IY
|
||||||
ld c,(hl) ; what+1
|
LD C,(HL) ; what+1
|
||||||
INC HL
|
INC HL
|
||||||
LD A,(HL) ; what+2
|
LD A,(HL) ; what+2
|
||||||
LD L,(IX+9) ; Address buffer
|
LD L,(IX+9) ; Address buffer
|
||||||
@ -1038,8 +1037,8 @@ EIcombn:PUSH IY
|
|||||||
PUSH DE
|
PUSH DE
|
||||||
PUSH HL
|
PUSH HL
|
||||||
POP IY
|
POP IY
|
||||||
bit 7,c ; ªãàá®àë¥ ¨«¨ shift+... ?
|
BIT 7,C ; ªãàá®àë¥ ¨«¨ shift+... ?
|
||||||
jr nz,eicmb1 ; Shift+...
|
JR NZ,eicmb1 ; Shift+...
|
||||||
CP 54h
|
CP 54h
|
||||||
JR Z,ILleft ; ªãàá®à ¢«¥¢®
|
JR Z,ILleft ; ªãàá®à ¢«¥¢®
|
||||||
CP 56h
|
CP 56h
|
||||||
@ -1050,11 +1049,11 @@ EIcombn:PUSH IY
|
|||||||
JP Z,ILHome ; ¢ ç «® áâப¨
|
JP Z,ILHome ; ¢ ç «® áâப¨
|
||||||
CP 51h
|
CP 51h
|
||||||
JP Z,ILEnd ; ¢ ª®¥æ áâப¨
|
JP Z,ILEnd ; ¢ ª®¥æ áâப¨
|
||||||
jr eicmb2
|
JR eicmb2
|
||||||
eicmb1: cp " "
|
eicmb1: CP " "
|
||||||
jr c,eicmb2
|
JR C,eicmb2
|
||||||
cp "~"+1
|
CP "~"+1
|
||||||
jp c,ILwrk2 ; ¢¢®¤ ᨬ¢®«®¢
|
JP C,ILwrk2 ; ¢¢®¤ ᨬ¢®«®¢
|
||||||
eicmb2: POP DE
|
eicmb2: POP DE
|
||||||
POP IY
|
POP IY
|
||||||
RET
|
RET
|
||||||
@ -1231,15 +1230,11 @@ PrnInLn:LD A,(CurILFl)
|
|||||||
NEG
|
NEG
|
||||||
LD L,A
|
LD L,A
|
||||||
LD E,H
|
LD E,H
|
||||||
;LD A,E
|
|
||||||
;CP 80
|
|
||||||
;JR NC,prne
|
|
||||||
;LD A,D
|
|
||||||
;CP 31
|
|
||||||
;JR NC,prne
|
|
||||||
LD (prnadd+1),HL
|
LD (prnadd+1),HL
|
||||||
LD C,BIOS.LP_SET_PLACE ; ãáâ. ¯®§¨æ¨î ªãàá®à
|
;LD C,BIOS.LP_SET_PLACE ; ãáâ. ¯®§¨æ¨î ªãàá®à
|
||||||
RST ToBIOS
|
;RST ToBIOS
|
||||||
|
LD C,Dss.Locate
|
||||||
|
RST ToDSS
|
||||||
LD L,(IX+9) ;Address buffer
|
LD L,(IX+9) ;Address buffer
|
||||||
LD H,(IX+0Ah)
|
LD H,(IX+0Ah)
|
||||||
LD A,(IY+3)
|
LD A,(IY+3)
|
||||||
@ -1332,82 +1327,111 @@ prne: LD A,(IY+2)
|
|||||||
SUB (IX+6)
|
SUB (IX+6)
|
||||||
LD C,A
|
LD C,A
|
||||||
LD B,0
|
LD B,0
|
||||||
IN A,(Page3)
|
IN A,(SLOT3)
|
||||||
PUSH AF
|
PUSH AF
|
||||||
LD A,(Win2)
|
LD A,(hPages.Win2)
|
||||||
OUT (Page3),A
|
OUT (SLOT3),A
|
||||||
LDI
|
LDI
|
||||||
INC DE
|
INC DE
|
||||||
JP PE,$-3
|
JP PE,$-3
|
||||||
POP AF
|
POP AF
|
||||||
OUT (Page3),A
|
OUT (SLOT3),A
|
||||||
RET
|
RET
|
||||||
|
|
||||||
|
;;;;;;;;;;;;;;;;
|
||||||
;Šãàá®à ®¡ê¥ªâ InputLine
|
|
||||||
PrnILCr:LD A,(Timer) ;¯ ã§ ¬¨£ ¨ï
|
|
||||||
DEC A
|
|
||||||
CALL Z,PutILCr
|
|
||||||
LD (Timer),A
|
|
||||||
RET
|
|
||||||
|
|
||||||
PutILCr:LD A,(Flag)
|
|
||||||
CPL
|
|
||||||
LD (Flag),A
|
|
||||||
PILCurs: LD DE,(CursPos) ; ãáâ. ªãàá®à
|
PILCurs: LD DE,(CursPos) ; ãáâ. ªãàá®à
|
||||||
LD (CrPs+1),DE
|
LD (ResILCr.CrPs),DE
|
||||||
BIT 7,E
|
BIT 7,E
|
||||||
JR NZ,cre
|
JR NZ,.cre
|
||||||
;LD A,E
|
;
|
||||||
;CP 80
|
LD C,Dss.Locate
|
||||||
;JR NC,cre
|
RST ToDSS
|
||||||
;LD A,D
|
;
|
||||||
;CP 31
|
LD BC,Dss.K_SETUP.ShowCursor
|
||||||
;JR NC,cre
|
RST ToDSS
|
||||||
LD C,0B4h ; ¯®«ãç¨âì ᨬ¢®«
|
;
|
||||||
SUB A
|
.cre: LD A,1
|
||||||
RST ToBIOS
|
|
||||||
LD A,(Flag)
|
|
||||||
OR A
|
|
||||||
LD B,1Bh
|
|
||||||
JR Z,NoILC
|
|
||||||
LD B,5Bh ; ªãàá®à ç¥àâ®çª®©
|
|
||||||
NoILC: LD C,0B5h ; ᨬ¢®« íªà
|
|
||||||
SUB A
|
|
||||||
RST ToBIOS
|
|
||||||
cre: LD A,1
|
|
||||||
LD (CurILFl),A
|
LD (CurILFl),A
|
||||||
LD A,12
|
LD A,12 ;!FIXIT ¤® «¨?
|
||||||
RET
|
RET
|
||||||
|
;;;;;;;;;;;;;;;;
|
||||||
|
|
||||||
; ‘¡à®á¨âì ªãàá®à
|
; ‘¡à®á¨âì ªãàá®à
|
||||||
ResILCr: LD A,(CurILFl)
|
ResILCr: LD A,(CurILFl)
|
||||||
OR A
|
OR A
|
||||||
RET Z
|
RET Z
|
||||||
LD A,0FFh
|
;
|
||||||
LD (Flag),A
|
.CrPs+1: LD DE,0
|
||||||
INC A
|
|
||||||
LD (CurILFl),A
|
|
||||||
LD A,12
|
|
||||||
LD (Timer),A
|
|
||||||
CrPs: LD DE,0
|
|
||||||
BIT 7,E
|
BIT 7,E
|
||||||
RET NZ
|
RET NZ
|
||||||
;LD A,E
|
;
|
||||||
;CP 80
|
LD BC,Dss.K_SETUP.HideCursor
|
||||||
;RET NC
|
RST ToDSS
|
||||||
;LD A,D
|
XOR A
|
||||||
;CP 31
|
LD (CurILFl),A
|
||||||
;RET NC
|
|
||||||
LD C,0B4h ; ¯®«ãç¨âì ᨬ¢®«
|
|
||||||
SUB A
|
|
||||||
RST ToBIOS
|
|
||||||
LD BC,1BB5h ; ᨬ¢®« íªà
|
|
||||||
SUB A
|
|
||||||
RST ToBIOS
|
|
||||||
RET
|
RET
|
||||||
|
|
||||||
|
|
||||||
|
;;;;;;;;;;;;;;;;
|
||||||
|
;!FIXIT CURSOR ¯¥à¥¤¥« âì ªãàá®à ¤®á ¨ ã¡à âì ¯¥à¥å¢ âì ¯à¥àë¢ ¨©
|
||||||
|
;Šãàá®à ®¡ê¥ªâ InputLine
|
||||||
|
; PrnILCr: LD A,(Timer) ;¯ ã§ ¬¨£ ¨ï
|
||||||
|
; DEC A
|
||||||
|
; CALL Z,.PutILCr
|
||||||
|
; LD (Timer),A
|
||||||
|
; RET
|
||||||
|
; ;
|
||||||
|
|
||||||
|
; .PutILCr: LD A,(Flag)
|
||||||
|
; CPL
|
||||||
|
; LD (Flag),A
|
||||||
|
; PILCurs: LD DE,(CursPos) ; ãáâ. ªãàá®à
|
||||||
|
; LD (ResILCr.CrPs),DE
|
||||||
|
; BIT 7,E
|
||||||
|
; JR NZ,.cre
|
||||||
|
; ;
|
||||||
|
; LD C,0B4h ; ¯®«ãç¨âì ᨬ¢®«
|
||||||
|
; SUB A
|
||||||
|
; RST ToBIOS
|
||||||
|
; LD A,(Flag)
|
||||||
|
; OR A
|
||||||
|
; LD B,1Bh
|
||||||
|
; JR Z,.NoILC
|
||||||
|
; LD B,5Bh ; ªãàá®à ç¥àâ®çª®©
|
||||||
|
; .NoILC: LD C,0B5h ; ᨬ¢®« íªà
|
||||||
|
; SUB A
|
||||||
|
; RST ToBIOS
|
||||||
|
; .cre: LD A,1
|
||||||
|
; LD (CurILFl),A
|
||||||
|
; LD A,12
|
||||||
|
; RET
|
||||||
|
;;;;;;;;;;;;;;;;
|
||||||
|
|
||||||
|
|
||||||
|
; ‘¡à®á¨âì ªãàá®à
|
||||||
|
; ResILCr: LD A,(CurILFl)
|
||||||
|
; OR A
|
||||||
|
; RET Z
|
||||||
|
; LD A,#FF
|
||||||
|
; LD (Flag),A
|
||||||
|
; INC A
|
||||||
|
; LD (CurILFl),A
|
||||||
|
; LD A,12
|
||||||
|
; LD (Timer),A
|
||||||
|
; .CrPs+1: LD DE,0
|
||||||
|
; BIT 7,E
|
||||||
|
; RET NZ
|
||||||
|
; ;
|
||||||
|
; LD C,#B4 ; ¯®«ãç¨âì ᨬ¢®«
|
||||||
|
; SUB A
|
||||||
|
; RST ToBIOS
|
||||||
|
; LD BC,1BB5h ; ᨬ¢®« íªà
|
||||||
|
; SUB A
|
||||||
|
; RST ToBIOS
|
||||||
|
; RET
|
||||||
|
;;;;;;;
|
||||||
|
|
||||||
|
|
||||||
;
|
;
|
||||||
InpLineI:
|
InpLineI:
|
||||||
LD E,(IX+2) ;Xo
|
LD E,(IX+2) ;Xo
|
||||||
@ -1435,7 +1459,7 @@ ClastI: LD E,(IX+2) ;Xo
|
|||||||
SUB E
|
SUB E
|
||||||
DEC A
|
DEC A
|
||||||
LD C,A ;Len X
|
LD C,A ;Len X
|
||||||
jp SetClasInv
|
JP SetClasInv
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -1447,10 +1471,10 @@ ClastI: LD E,(IX+2) ;Xo
|
|||||||
SetClasInv:
|
SetClasInv:
|
||||||
PUSH IX
|
PUSH IX
|
||||||
LD IX,DialData
|
LD IX,DialData
|
||||||
IN A,(Page3)
|
IN A,(SLOT3)
|
||||||
PUSH AF ;á®åà.page4
|
PUSH AF ;á®åà.page4
|
||||||
LD A,(Win2)
|
LD A,(hPages.Win2)
|
||||||
OUT (Page3),A ;¢ª«.¡ãä¥à
|
OUT (SLOT3),A ;¢ª«.¡ãä¥à
|
||||||
PUSH HL
|
PUSH HL
|
||||||
LD L,C ;Len X
|
LD L,C ;Len X
|
||||||
LD H,1 ;len Y
|
LD H,1 ;len Y
|
||||||
@ -1466,9 +1490,9 @@ SetClasInv:
|
|||||||
EX DE,HL
|
EX DE,HL
|
||||||
LD (RClIbuf+2),HL
|
LD (RClIbuf+2),HL
|
||||||
LD B,E
|
LD B,E
|
||||||
ld e,ColDialInv
|
LD E,ColDialInv
|
||||||
;LD E,A
|
;LD E,A
|
||||||
ld d,ColDhotkey
|
LD D,ColDhotkey
|
||||||
;LD D,A
|
;LD D,A
|
||||||
SetDin2: INC HL
|
SetDin2: INC HL
|
||||||
LD A,(HL)
|
LD A,(HL)
|
||||||
@ -1477,8 +1501,8 @@ SetDin2:INC HL
|
|||||||
JR Z,.loc2 ;$+5
|
JR Z,.loc2 ;$+5
|
||||||
LD A,(HL)
|
LD A,(HL)
|
||||||
;XOR E
|
;XOR E
|
||||||
and 0xF0 ;
|
AND 0xF0 ;
|
||||||
or e ;
|
OR E ;
|
||||||
LD (HL),A
|
LD (HL),A
|
||||||
.loc2: INC HL
|
.loc2: INC HL
|
||||||
DJNZ SetDin2
|
DJNZ SetDin2
|
||||||
@ -1488,7 +1512,7 @@ SetDin2:INC HL
|
|||||||
CALL PutDialLn
|
CALL PutDialLn
|
||||||
POP HL
|
POP HL
|
||||||
POP AF
|
POP AF
|
||||||
OUT (Page3),A
|
OUT (SLOT3),A
|
||||||
POP IX
|
POP IX
|
||||||
LD E,(IX+2) ;Xo pos element
|
LD E,(IX+2) ;Xo pos element
|
||||||
INC E
|
INC E
|
||||||
@ -1775,7 +1799,7 @@ ECnext: LD A,0
|
|||||||
CALL NZ,ChangeB
|
CALL NZ,ChangeB
|
||||||
EClexit: LD HL,what ;Event claster exit
|
EClexit: LD HL,what ;Event claster exit
|
||||||
LD (HL),evNothing
|
LD (HL),evNothing
|
||||||
jp GetFire
|
JP GetFire
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -1813,10 +1837,10 @@ ChangL1:INC HL ;Begin elements claster
|
|||||||
INC HL
|
INC HL
|
||||||
INC HL
|
INC HL
|
||||||
POP HL ;Reset begin elem table
|
POP HL ;Reset begin elem table
|
||||||
IN A,(Page3)
|
IN A,(SLOT3)
|
||||||
PUSH AF
|
PUSH AF
|
||||||
LD A,(Win2)
|
LD A,(hPages.Win2)
|
||||||
OUT (Page3),A
|
OUT (SLOT3),A
|
||||||
ChangL2: LD D,(HL) ;Ypos
|
ChangL2: LD D,(HL) ;Ypos
|
||||||
INC HL
|
INC HL
|
||||||
INC HL
|
INC HL
|
||||||
@ -1876,14 +1900,14 @@ cl1: BIT 7,(HL)
|
|||||||
CALL PILCurs ; Set cursor
|
CALL PILCurs ; Set cursor
|
||||||
EI
|
EI
|
||||||
POP AF
|
POP AF
|
||||||
OUT (Page3),A
|
OUT (SLOT3),A
|
||||||
RET
|
RET
|
||||||
|
|
||||||
;Change radio button ([x])
|
;Change radio button ([x])
|
||||||
ChangeR:IN A,(Page3)
|
ChangeR: IN A,(SLOT3)
|
||||||
PUSH AF
|
PUSH AF
|
||||||
LD A,(Win2)
|
LD A,(hPages.Win2)
|
||||||
OUT (Page3),A
|
OUT (SLOT3),A
|
||||||
LD D,(HL) ;Ypos
|
LD D,(HL) ;Ypos
|
||||||
INC HL
|
INC HL
|
||||||
INC HL
|
INC HL
|
||||||
@ -1941,6 +1965,6 @@ cl2: CALL ResILCr ;
|
|||||||
CALL PILCurs ; ãáâ. ªãàá®à
|
CALL PILCurs ; ãáâ. ªãàá®à
|
||||||
EI
|
EI
|
||||||
POP AF
|
POP AF
|
||||||
OUT (Page3),A
|
OUT (SLOT3),A
|
||||||
RET
|
RET
|
||||||
|
|
||||||
|
|||||||
@ -1 +1 @@
|
|||||||
Subproject commit 378f3fdd49601390b3aacfe51e45c6fceba25022
|
Subproject commit a0e68ce3a19bd47537585e49bfbf5e45fab197a1
|
||||||
@ -1,4 +1,6 @@
|
|||||||
define RELEASE 1
|
; ०¨¬ ª®¬¯¨«ï樨 ¨á室¨ª
|
||||||
|
DEFINE release 1
|
||||||
|
|
||||||
; ¢¥àá¨ï ¯à®£à ¬¬ë
|
; ¢¥àá¨ï ¯à®£à ¬¬ë
|
||||||
DEFINE FF_Version '1.13.2'
|
major_version equ 1
|
||||||
|
minor_version equ 16
|
||||||
Loading…
Reference in New Issue
Block a user