mirror of
https://github.com/Tolik-Trek/Spectrum.EXE.git
synced 2026-06-15 00:51:36 +03:00
Initial commit
This commit is contained in:
commit
bd2abb6229
4
.gitmodules
vendored
Normal file
4
.gitmodules
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
[submodule "Shared_Includes"]
|
||||
branch = main
|
||||
path = Shared_Includes
|
||||
url = https://github.com/Tolik-Trek/Shared_Includes.git
|
||||
BIN
Docs/FORMATS/AZXformat103.txt.zip
Normal file
BIN
Docs/FORMATS/AZXformat103.txt.zip
Normal file
Binary file not shown.
74
Docs/FORMATS/HOBETA.MSG
Normal file
74
Docs/FORMATS/HOBETA.MSG
Normal file
@ -0,0 +1,74 @@
|
||||
Ä SPECTRUM RULEZ! (2:5020/993.213) ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ZX.SPECTRUM Ä
|
||||
Msg : 133 of 185
|
||||
From : Alexei Bugai 2:461/173.3 Fri 31 Oct 97 23:24
|
||||
To : Ilya Zverev Mon 03 Nov 97 17:43
|
||||
Subj : ”®p¬ â ä ©«®¢ 审¥âë
|
||||
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
||||
Peace unto you, _Ilya_!
|
||||
|
||||
29 Oct 97 Ilya Zverev write to All about "®p¬ â ä ©«®¢ 审¥âë":
|
||||
|
||||
IZ> Žç¥ì 㦥 á ¡¦, pls.
|
||||
|
||||
== Cut ==
|
||||
‘âàãªâãà 17-¡ ©â®£® § £®«®¢ª , ¤®¡ ¢«ï¥¬®£® ª TR-DOSë¬
|
||||
ä ©« ¬ ¯à®£à ¬¬®© HoBeta.exe:
|
||||
|
||||
00-07 - ¨¬ï ä ©«
|
||||
08 - ⨯ ä ©«
|
||||
09-0A - Start
|
||||
0B-0C - Length
|
||||
0D-0E - Length ¢ 256-¡ ©âëå § ¯¨áïå (¡ ©â 0E - p §¬¥p ¢ ᥪâ®p å)
|
||||
0F-10 - Š®â஫ì ï á㬬
|
||||
|
||||
’ ª¨¬ ®¡à §®¬, ¯¥à¢ë¥ 14 ¡ ©â ª®¯¨àãîâáï ¨§ TR-DOS®¢áª®£® ª â «®£ .
|
||||
|
||||
‚ë稫¥¨¥ ª®â஫쮩 á㬬ë: S=S+257*Di+i, £¤¥
|
||||
|
||||
S ç «ì®¥=0
|
||||
Di - § 票¥ ¡ ©â
|
||||
i - ¯®à浪®¢ë© ®¬¥à ¡ ©â (¥á«¨ ¥ ®è¨¡ îáì, ç¨ ï á 0, ¥ á 1)
|
||||
|
||||
|
||||
C src:
|
||||
|
||||
union {
|
||||
struct {
|
||||
unsigned char tr_filename[8];
|
||||
unsigned char tr_filetype;
|
||||
unsigned int tr_address;
|
||||
unsigned int tr_length;
|
||||
unsigned int tr_tr;
|
||||
unsigned int tr_crc;
|
||||
} tr_head;
|
||||
unsigned char head[17];
|
||||
} header;
|
||||
|
||||
unsigned int CheckSum;
|
||||
int i;
|
||||
|
||||
CheckSum=0;
|
||||
for (i=0; i<=14; CheckSum = CheckSum + (header.head[i] * 257) + i, i++);
|
||||
header.tr_head.tr_crc = CheckSum;
|
||||
|
||||
|
||||
‚®â ¢ ®¤®© ¨§ ᢮¨å ¯à®£à ¬¬®ª 襫 â ª®© § ¡ ¢ë© ᯮᮡ ¯®¤áç¥â
|
||||
ª®â஫쮩 áã¬¬ë § £®«®¢ª :
|
||||
|
||||
checksum=0;
|
||||
for (i=0; i<=14; checksum+=(unsigned char)*(bufptr+i), i++);
|
||||
checksum*=257;
|
||||
checksum+=105;
|
||||
|
||||
bufptr, ®ç¥¢¨¤®, ¯®¨â¥à ç «® § £®«®¢ª .
|
||||
=== Cut ===
|
||||
|
||||
|
||||
With best wishes, [ZX_Power Team]
|
||||
Dr.Squizer. [Power_ZX Team]
|
||||
|
||||
... Don't try to understand me... You never will!
|
||||
--- Powered by Spectrum Mail System.
|
||||
* Origin: X-Project BBS (2:461/173.3)
|
||||
|
||||
|
||||
61
Docs/FORMATS/Hobeta_fmt.txt
Normal file
61
Docs/FORMATS/Hobeta_fmt.txt
Normal file
@ -0,0 +1,61 @@
|
||||
">Q04: —â® § ä ©«ë á p áè¨p¥¨¥¬ *.$b, *.$c?
|
||||
A: •®¡¥âë© ä ©«. ’® ¥áâì ä ©«, ᪮¯¨p®¢ ë© ¯p®£p ¬¬®© hobeta ¨§
|
||||
âp-¤®á®© ¤¨áª¥âª¨. <20>㪢 ç é¥ ¢á¥£® ®¡®§ ç ¥â ¯p¨ ¤«¥¦®áâì ª
|
||||
ª ª®¬ã-«¨¡® ⨯ã. (.$b - § ¯ã᪠¥¬ë© ä ©« ¡¥©á¨ª , .$w - ⥪áâ ¢ ä®p¬ â¥
|
||||
ᯥªâp㬮¢áª®£® ZX-Word, .$m - ¬ã§ëª ¤«ï ᯥªâp㬮¢áª®£® Pro Tracker'
|
||||
¨ â.¤.) <20> áè¨p¥¨¥ ¢ ¯p¨æ¨¯¥ ¬®¦¥â ¡ëâì «î¡ë¬. <20>â® § ¢¨á¨â ®â ¢â®p®¢
|
||||
¯p®£p ¬¬ë, ª®â®p ï ¯®«ì§ã¥âáï í⨬¨ ä ©« ¬¨.
|
||||
A: Michael Kondratyev (2:5030/362.1) …£® (审¥â®£® ä ©« ) áâpãªâãp :
|
||||
<EFBFBD>¥p¢ë¥ 13 ¡ ©â â®ç ï ª®¯¨ï âp¤®á®£® § £®«®¢ª . „ «¥¥ ¤¢ ¡ ©â ¤«¨ë
|
||||
¢ ᥪâ®p å; â.ª. ® ªp â 256, â® ¯¥p¢ë© ¢á¥£¤ ®«ì, ¢â®p®© -
|
||||
ç¨á«® ᥪâ®p®¢. € ¯®á«¥¤¨¥ ¤¢ ¡ ©â - ª®âp®«ì ï á㬬 . ‘ç¨â ¥âáï
|
||||
® ¯p®áâ® - á㬬¨pãîâáï ¢á¥ ¯p¥¤ë¤ã騥 15 ¡ ©â, ç¨á«® 㬮¦ ¥âáï
|
||||
257 ¨ ¯p¨¡ ¢«ï¥âáï á㬬 _ç¨á¥«_®â_0_¤®_14 â.¥. 105.
|
||||
‚®â ¯p®æ¥¤ãpª Z80 Asm:
|
||||
; ¢å®¤ de = ¤p¥á § £®«®¢ª
|
||||
ld hl,0
|
||||
ld b,15
|
||||
m1: ld a,(de)
|
||||
add a,l
|
||||
ld l,a
|
||||
jr nc,m2
|
||||
inc h
|
||||
m2: inc de
|
||||
djnz m1
|
||||
add a,h
|
||||
ld h,a
|
||||
ld c,105
|
||||
add hl,bc ; hl = Hobeta sum
|
||||
|
||||
>Q05: € p áè¨p¥¨¥ .$z?
|
||||
A: •®¡¥âë© ä ©«, 㯠ª®¢ ë© á¯¥ªâp㬥 ¯p®£p ¬¬®© zxzip (by Michael
|
||||
Kondratyev), á⠢訩 ¤¥ ä ªâ® ®ä¨æ¨ «ìë¬ ¯ ª®¢é¨ª®¬ ¯p®£p ¬¬ ¤«ï ZX.
|
||||
„«ï ¥£® p ᯠª®¢ª¨ ¥®¡å®¤¨¬ zxunzip. €¢â®p ¯¨á « zxunzip ¨ zxzip ¨
|
||||
¤«ï pc ⮦¥. ‘ãé¥áâ¢ã¥â plugin ¤«ï FAR - xZXZIP. Ž ¯®§¢®«ï¥â ¢å®¤¨âì
|
||||
¢ zxzip på¨¢ë ª ª ¢ ª â «®£¨ ¨ ¨§¢«¥ª âì/¯p®á¬ âp¨¢ âì ä ©«ë ¨§ ¨å,
|
||||
zxunzip ¯p¨ í⮬ ¥ âp¥¡ã¥âáï.
|
||||
|
||||
>Q06: <20> p®¤. <20>®¬®£¨â¥ pls ª ª í⨠审¥âë¥ ä ©«ë § ¯ãáâ¨âì.
|
||||
A: ‘ ¬ë© ¯p®á⮩ ¢ p¨ â - § ¯ãáâ¨âì Spectrum Navigator (ª®¯¨ï Dos Navigator,
|
||||
® c 㪫®®¬ ¯®¤ ZX. €¢â®p - Roman Khroupnin 2:5015/97,
|
||||
ftp://dimm.ab.nnov.ru/sn/ ) ¨ á®§¤ âì â ¬ ®¢ë© ®¡p § ¤¨áª .trd, ¨«¨ ¢®©â¨
|
||||
¢ áâ pë© ¨ ¯p®á⮠᪮¯¨p®¢ âì â㤠¯® F5 ¨¬¥î騥áï 审¥âë¥ ä ©«ë. <20>®á«¥
|
||||
祣® ᬥ«® ¨á¯®«ì§®¢ âì .trd ¢ í¬ã«ïâ®p¥. …éñ ¬®¦® ¯®¤ª«îç¨âì plug-in xTRD
|
||||
ª FAR'ã, ª®â®pë© â ª¦¥ ¯®§¢®«¨â ª®¯¨p®¢ âì .$? ¢ âp¤è¨ª¨. <20>⨠¦¥ ¯p®£p ¬¬ë
|
||||
¯®§¢®«ïîâ ᮢ¥pè âì ®¡p ⮥ ¤¥©á⢨¥. Ž¡p ¡®â âì 审¥âë¥ ä ©«ë ¨ .trd
|
||||
¬®¦® ®ç¥ì ¡®«ì訬 ª®«¨ç¥á⢮¬ ᯮᮡ®¢. ˆ í⮠㦥 §«®á⥩訩 ä ª (¢
|
||||
á¬ëá«¥ FAQ) . —¨â ©â¥ ¤®ª¨ ª Spectrum Navigator, zcop - íâ® ¢¥áì¬
|
||||
¯®«¥§®¥ § ï⨥.
|
||||
A: Œ®¦® ¨á¯®«ì§®¢ âì ã⨫¨âã Archive Support (á) Max Piwamoto ᮢ¬¥áâ® á
|
||||
®¤¨¬ ¨§ í¬ã«ïâ®p®¢, ¯®¤¤¥p¦¨¢ î騬 âp-¤®á: ukv, zx_emul, r80, shalaev...
|
||||
€: ‘ãé¥áâ¢ã¥â â ª¦¥ ¡®à ¯« £¨®¢ HalfElf' (djk@dem.kreml.nnov.ru) ¤«ï FAR
|
||||
Manager. ‘®á⮨⠨§ á«¥¤ãîé¨å ¯« £¨®¢:
|
||||
1. bView v0.3b - ¯®§¢®«ï¥â ¯à®á¬ âਢ âì Basic ä ©«ë ¢ ä®à¬ ⥠Hobeta.
|
||||
2. unSNAP v0.2b - ª®¢¥àâ¨â .SNA ¨ .Z80 ¢ ¡®à ä ©«®¢ Hobeta.
|
||||
3. xCreate v0.22b - á®§¤ ¥â ¤¨áª¨ TR-DOS ¢ ä®à¬ â å trd, fdi, scl.
|
||||
4. xHRiP v0.1b - à ᯠª®¢ë¢ ¥â ä ©«ë, á®§¤ ë¥ ZX- à娢 â®à®¬ HRiP.
|
||||
5. XiSD v0.1b - à ¡®â ¥â á iS-DOS ¤¨áª ¬¨ ¢ ä®à¬ â å .img, .fdi.
|
||||
6. xSCL v0.1b - à ¡®â ¥â á .SCL
|
||||
7. xTRD v0.9b - à ¡®â ¥â á ®¡à § ¬¨ ¤¨áª®¢ .trd, .td0, .fdi.
|
||||
8. xZXZIP v0.11b - à ᯠª®¢ë¢ ¥â ä ©«ë, á®§¤ ë¥ à娢 â®à®¬ ZXZIP.
|
||||
…áâì ¥é¥ ¯« £¨ ª Windows Commander."
|
||||
76
Docs/FORMATS/SPGv0_2.INF
Normal file
76
Docs/FORMATS/SPGv0_2.INF
Normal file
@ -0,0 +1,76 @@
|
||||
.SPG
„ ë© ä®à¬ â á«ã¦¨â ¤«ï åà ¥¨ï § ¯ã᪠¥¬ëå
¯à®£à ¬¬ «î¡ëå ®á¨â¥«ïå (CD/DVD/HDD/SD). ‘ ¬¨
ä ©«ë ¬®£ãâ ¡ëâì § ¯ãé¥ë ¨§ WDC ¯à®áâë¬ ¦ ⨥¬
ENTER.
Žâ«¨ç¨ï ®â SPGv0.1 ¢ ®á®¢®¬ ¥ ªà¨â¨çë ¨
§ ¯ã᪠«ª ¢¥àᨨ 0.2 ¯®¤®©¤ñâ ¨ ª v0.1/0.0, ® ¢áñ
¦¥ ¢ v0.2: ¡«®ª®¢ § £à㧪¨ áâ «® 16(!), ¤«¨
§ £®«®¢ª ª ¦¤®£® ¡«®ª 㬥ì訫 áì ¤® 4å ¡ ©â!
„à㣨¬¨ á«®¢ ¬¨, çâ®¡ë ¬®¦® ¡ë«® § £à㦠âì v0.1
¨ ¨¦¥, ¥®¡å®¤¨¬® 㢥«¨ç¨¢ âì è £ ¢ ®¡« áâ¨
§ £®«®¢ª®¢ ¡«®ª®¢ § £à㧪¨ á 4 ¤® 8!!!
’ ª ¦¥, ¥á«¨ § ¯ã᪠«ª¥ v0.2 ᪠ଫ¨¢ ¥âáï ¡®«¥¥
à ïï ¢¥àá¨ï, â® ¨§ +66(1) ¤® ç¨â âì ç¥à¥§ AND 7
ˆ á ¬®¥ £« ¢®¥.
‚ ¤ ®© ¢¥àᨨ ¯®ï¢¨« áì ¢®§¬®¦®áâì à ¡®âë á
256ª ¯ ¬ïâìî. „«ï ¢ë¡®à áâà ¨æ ¯®á«¥ § £à㧪¨
㦮 ¢ë§ë¢ âì á¯¥æ¨ «ìãî ¯à®æ¥¤ãàã, ª®â®à ï
§ £à㦠¥âáï 㪠§ ë© ¢ SPG § £®«®¢ª¥ ¤à¥á...
[¥ § ¡ë¢ ¥¬ <20><>Ž‚…<E2809A>Ÿ’œ ¢¥àá¨î ä®à¬ â ¢ +44(1)!!!]
¢ WDCv1.3final ¥áâì ®£à ¨ç¥¨ï:
1.¢á¥ ¡«®ª¨ (ªà®¬¥ ¯¥à¢®£®), 㦮 £à㧨âì
¢ ¤à¥á #A000-#FFFF!!!
[¯¥à¢ë© ¡«®ª ¬®¦® £à㧨âì ¢ #9A00-#FFFF!!!]
2.¨á¯®«ì§ã¥âáï 256ª ¯ ¬ïâì!!!
¯¥à¥¤ § £à㧪®© SPG, § ¯ã᪠¥âáï ¤¥â¥ªâ¨«ª
256ª ¯ ¬ï⨠( ¤ ë© ¬®¬¥â ¨éñâáï ¯ ¬ïâì
¯¥â £® , § ⥬ ᪮௨® (ª ï) ¨ § ⥬ ¯à®ä¨),
¥á«¨ 256ª ¯ ¬ïâì ¥ ©¤¥ , â® § £à㧪
¬®¤ã«¥© á ®¬¥à ¬¨ áâà ¨æ ¢ëè¥ #07 ¡ã¤¥â
¨¤â¨ ¢ ¨¦¨¥ 128ª!!!
[¢ § ¢¨á¨¬®á⨠®â ⮣®, ª ª®© ª«® ¡ë« ©¤¥,]
[¢ ¯ ¬ïâì § £ã¦ ¥âáï ¬ ¦¥à áâà ¨æ (¢ ¤à¥á]
[㪠§ ë© ¢ +68(2)), ª ¥¬ã ¤® ®¡à é âìáï]
[¯à¨ ¢ë¡®à¥ áâà ¨æ... ]
!¡®«¥¥ ¯®¤à®¡® ᬮâਬ ¢ ®¯¨á ¨¨ ᬥ饨ï +68!
3.¥¤®¯ãá⨬® § ¤ ¢ âì ¤à¥á § £à㧪¨ ¬¥¥¤¦¥à
|
||||
áâà ¨æ ¨ ¡«®ª ¯¥à¥¬¥ëå ¢ ¤¨ ¯ §®¥ ®â #7000
|
||||
¤® #99FF!!!
|
||||
!*íâ® ¯à¨¢¥¤ñâ ª § ¢¨á ¨î ¯à¨ § ¯ã᪥.*!
"Spectrum Prog" file format v0.2:
ᬥ鳤«¨.
ÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+0³32 - १¥à¢
+32³12 - ¨¤¥â¨ä¨ª â®à ä®à¬ â ("SpectrumProg")
+44³1 - ¢¥àá¨ï ä®à¬ â (#00=0.0, #01=0.1, #02=0.2)
+45³2 - CRC ¢á¥£® § £®«®¢ª (512 ¡ ©â)
+47³2 - ®¡à â ï CRC (áâ à訩 ¡ ©â ¢¯¥à¥¤¨)
³ [CRC= à¨ä¬¥â¨ç. á㬬¥ ¢á¥å 512⨠¡ ©â]
³ [§ £®«®¢ª + 512... ]
³ !¥á«¨ = 0, â® ¥ ¯à®¢¥à塞 CRC!
ÄÄÄÄÅÄ[§ ¯¨áì_¢_¯®àâ X]*5ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+49³2 - ¤à¥á ¯®àâ Xi
+51³1 - § 票¥ ¢ ¥£® (¥á«¨ ¤à¥á <> 0!)
ÄÄÄÄÅÄ ¯ à ¬¥âàë_§ ¯ã᪠ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+64³2 - ¤à¥á § ¯ã᪠¯à®£à ¬¬ë
+66³1 - ®¬¥à áâà ¨æë ¯à¨ § ¯ã᪥
³ [¢ 256ª - íâ® ®¬¥à ®â 0 ¤® 15]
³
+67³1 - ä« £
³ [=0 - ¥ ॠ£¨à㥬]
³ [=1 - ®¬¥à ªâ¨¢®£® ¤¨áª®¢®¤ ª¨¤ ¥âáï]
³ [¢ á®®â¢. ¯¥à¥¬¥ë¥ TR-DOS ¯¥à¥¤ á ¬ë¬ ]
³ [§ ¯ã᪮¬ ]
³
+68³2 - ¤à¥á ªã¤ ¡ã¤¥â § £à㦥 ¬ ¦¥à áâà ¨æ
³ [¥á«¨ =0, â® â ª®¢®© ¥ § £à㦠¥âáï]
³ á ¬ ¯® ᥡ¥ ¬¥¥¤¦¥à ¯à¥¤áâ ¢«ï¥â ¯à®áâãî
³ ¯à®æ¥¤ãàã, ¨¬¥îéãî ⮫쪮 ®¤¨ ¢å®¤®©
³ ¯ à ¬¥âà: ¢ ॣ¨áâॠA 㪠§ë¢ ¥âáï ®¬¥à
³ áâà ¨æë ª®â®àãî ¤® ¢ª«îç¨âì (ã¬¥à æ¨ï
³ ᮢ¯ ¤ ¥â á ⮩, çâ® ¨á¯®«ì§ã¥âáï ¢ § £®-
³ «®¢ª å ª ¡«®ª ¬ § £à㧪¨).
³ ¤®¯ãáâ¨¬ë© ¤¨ ¯ §® - ®â 0 ¤® 15, ® ¤®
³ ãç¨âë¢ âì, çâ® ®¡à 饨¥ ª #7FFD ¨¤ñâ ¯®
³ ¬ ᪥ #10!]
³ !à §¬¥à ¬¥¥¤¦¥à ¥ ¡®«¥¥ 32 ¡ ©â!
³
+70³3 - ¤ â (¤¥ì,¬¥áïæ,£®¤)
+73³1 - ¢¥àá¨ï ᡮન ¯à®£à ¬¬ë
+74³2 - ¤à¥á ¢¥àè¨ë á⥪ (¥á«¨=0, â® ¥ ¬¥ï¥¬)
³
+76³2 - ¤à¥á ªã¤ ¡ã¤ãâ § £àã¦¥ë ¯¥à¥¬¥ë¥
³ [ ª ¯à¨¬¥àã, ¬®¦® åà ¨âì ¯¥à¥¬¥ë¥]
³ [¡í©á¨ª ¨ âà-¤®á' , 㪠§ ¢ ¢¤à¥á #5C00]
³ [¨ ¤«¨ã 320 ¡ ©â]
+78³2 - ¤«¨ ¡«®ª ¯¥à¥¬¥ëå
³ [¥á«¨=0, â® ¨£®à¨à㥬 â ª®¢ë¥, ¨ ç¥]
³ [ª¨¤ ¥¬ n<321 ¡ ©â ¤à¥á ¢ +76(2).]
³ !¥á«¨ ¦¥ ¤à¥á = 0, â® ª¨¤ ¥¬ ¢ #5B00!
ÄÄÄÄÅÄ[POKEZ] ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+80³48 - coming soon! ^_^
ÄÄÄÄÅÄ[¡«®ª_§ £à㧪¨]*16ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+128³2 - ¤à¥á § £à㧪¨
³ (¥á«¨ <#9A00, â® ¨¤ñâ § ¢¥à襨¥ ®¡à ¡®âª¨
³ ¡«®ª®¢ § £à㧪¨)
³1 - ¤«¨ ¡«®ª ¢ 2048 ¡ ©âëå ᥪâ®à å
³1 - ®¬¥à áâà ¨æë ¢ ª®â®àãî £à㧨¬ ¡«®ª
³ [¤«ï 128ª ®¨ ¨¤ãâ ®â 0 ¤® 7]
³ [¤«ï 256ª¡ ®â 0 ¤® 15... ]
ÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+192³320- ¡«®ª ¯¥à¥¬¥ëå ¯à®£à ¬¬ë ¨«¨ ¡í©á¨ª
ÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+512³XXX- ª®¤®¢ë© ¡«®ª/¡«®ª¨
ÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
!¢® ¢à¥¬ï § ¯ã᪠¯à®£à ¬¬ë ¢ª«îç¥ 1© ०¨¬!
!¯à¥àë¢ ¨© (I=63), ® ®¨ § ¯à¥é¥ë. !
|
||||
P.S.¯¥à¢ë© £à㧨¬ë© ¡«®ª ¤®«¦¥ à ᯮ«®£ âìáï áà §ã
|
||||
§ § £®«®¢ª®¬ ¢ 512 ¡ ©â, ¢á¥ ¯®á«¥¤ãî騥
|
||||
¤®«¦ë à ᯮ«®£ âìáï áà §ã § ¯à¥¤ë¤ã騬, ® ¯®
|
||||
¤à¥áã ªà ⮬ã 2¬ Š¡ ©â!!!
|
||||
(á¬. PREF.txt ¨ PREFWP.txt)
|
||||
¤«¨ ¯¥à¢®£® £à㧨¬®£® ¡«®ª = ¤«¨¥ 㪠§ ®©
|
||||
¢ ¯¥à¥¬¥®© + (2048-512). „à㣨¬¨ á«®¢ ¬¨, ¥á«¨
|
||||
¤«¨ ¯¥à¢®£® ¡«®ª ¬¥ìè¥ 1536 ¡ ©â, â® ¥£®
|
||||
¤«¨ã ¢ 2ª ¡«®ª å ¤® 㪠§ë¢ âì ã«¥¢®©!!!
|
||||
[íâ® ¢ë§¢ ® ⥬, çâ® ¯¥à¢ë¥ 1536 ¡ ©â â ª®¢®£®
|
||||
à ᯮ«®£ îâáï ¢ 2å ª¨«®¡ ©â®¬ ¡«®ª¥ § £®«®¢ª ]
---------------------------------------------------
<20>ਫ®¦¥¨¥
|
||||
|
||||
;¬¥¥¤¦¥à áâà ¨æ ¯®¤ Pentagon:
|
||||
MANAG0 ;I:A - num of PAGE (VALID: 0-15)
|
||||
; Pentagon
|
||||
PUSH BC
|
||||
LD C,A
|
||||
AND %11111000:LD A,C:JR Z,K128
|
||||
AND 7:OR %01000000
|
||||
K128 OR 16:LD BC,#7FFD:OUT A
|
||||
POP BC
|
||||
RET
|
||||
|
||||
;¬¥¥¤¦¥à áâà ¨æ ¯®¤ Scorpion/KAY:
|
||||
MANAG1 ;Scorpion/KAY
|
||||
PUSH BC
|
||||
PUSH AF
|
||||
AND %11111000
|
||||
LD A,16:JR NZ,$+3:XOR A
|
||||
LD BC,#1FFD:OUT A
|
||||
POP AF
|
||||
AND 7
|
||||
OR 16:LD B,#7F:OUT A
|
||||
POP BC
|
||||
RET
|
||||
|
||||
;¬¥¥¤¦¥à áâà ¨æ ¯®¤ Profi:
|
||||
MANAG2 ;Profi
|
||||
PUSH BC
|
||||
PUSH AF
|
||||
AND %11111000
|
||||
LD A,1:JR NZ,$+3:XOR A
|
||||
LD BC,#DFFD:OUT A
|
||||
POP AF
|
||||
AND 7
|
||||
OR 16:LD B,#7F:OUT A
|
||||
POP BC
|
||||
RET
|
||||
|
||||
;¬¥¥¤¦¥à áâà ¨æ ¯®¤ ATM 4.5:
|
||||
MANAG3 ;ATM 4.5
|
||||
PUSH BC
|
||||
PUSH AF
|
||||
AND %11111000
|
||||
LD A,1:JR NZ,$+3:XOR A
|
||||
LD BC,#FDFD:OUT A
|
||||
POP AF
|
||||
AND 7
|
||||
OR 16:LD B,#7F:OUT A
|
||||
POP BC
|
||||
RET
|
||||
|
||||
;¬¥¥¤¦¥à áâà ¨æ, ¥á«¨ ©¤¥® ⮫쪮 128ª:
|
||||
MANAGF ;128k
|
||||
PUSH BC
|
||||
AND 7
|
||||
OR 16
|
||||
BC,#7FFD:OUT A
|
||||
POP BC
|
||||
RET
|
||||
---------------------------------------------------
|
||||
Budder/23.12.2006-13.10.2009
|
||||
BIN
Docs/FORMATS/TZXformat113.txt.zip
Normal file
BIN
Docs/FORMATS/TZXformat113.txt.zip
Normal file
Binary file not shown.
386
Docs/FORMATS/csw.html
Normal file
386
Docs/FORMATS/csw.html
Normal file
@ -0,0 +1,386 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<META NAME="keywords" CONTENT="CSW, Ramsoft, ZX Spectrum, TZX, tapes">
|
||||
<title>WWR - CSW technical specifications</title>
|
||||
<basefont face="Verdana">
|
||||
</head>
|
||||
|
||||
<body TEXT="#000000" BGCOLOR="#FFFFFF" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000">
|
||||
|
||||
<center>
|
||||
<table bgcolor="#0040ff" width="50%" border=0>
|
||||
<tr><td align="center"><font size="+4" color="#ffff40"><strong>CSW FORMAT</strong></font></td></tr>
|
||||
</table>
|
||||
<br>
|
||||
<font size="+1"><strong>Compressed Square Wave</strong></font><br>
|
||||
<em><font size="-1">Created by Ramsoft ZX Spectrum demogroup</font></em>
|
||||
<br><br>
|
||||
<font><strong>Format revision: v2.00 (August 1st 2003)</strong></font>
|
||||
<br><br>
|
||||
</center>
|
||||
<br><br>
|
||||
|
||||
<div align=center>
|
||||
<TABLE WIDTH="40%">
|
||||
<TR><TD ALIGN=LEFT><OL>
|
||||
<LI><B><A HREF="#INTRODUCTION">Introduction</A></b></LI>
|
||||
<LI><B><A HREF="#CSWUTIL">The CSW utility</A></B></LI>
|
||||
<LI><B><A HREF="#CSW2FORMAT">CSW file format</A></B></LI>
|
||||
<LI><B><A HREF="#CSW1FORMAT">Old CSW 1.01 file format</A></B></LI>
|
||||
<LI><B><A HREF="#CONTACT">Contact information</A></B></LI>
|
||||
<LI><B><A HREF="#HISTORY">Revision history</A></B></LI>
|
||||
</OL></TD></TR></TABLE>
|
||||
</div><br><br>
|
||||
|
||||
|
||||
<a name="INTRODUCTION"></a>
|
||||
<p><table bbgcolor="#ffff90" width="100%" cellspacing="12" cellpadding="0" border="0"><tr>
|
||||
<td align="center" bgcolor="#ff7848" width="10%"><font size="+2" color="white"><b>
|
||||
1.
|
||||
</b></font></td><td><font size="+2">
|
||||
Introduction
|
||||
</font></td></tr></table>
|
||||
<br>
|
||||
<table width="100%" border="0"><tr><td width="10%"> </td></td><td>
|
||||
This document describes the CSW file format and the CSW.EXE utility. CSW is strongly based upon the MakeTZX engine and it shares with it various aspects of its behaviour. In the manual of MakeTZX you will find lots of explanations, tips and FAQ that are not reported here, so we recommend you to read it too.
|
||||
|
||||
<br><br>
|
||||
<b>The CSW file format</b>
|
||||
<br><br>
|
||||
|
||||
CSW files are a way of storing sample data in a compact form, typically taking 1/10th of an ordinary VOC. It is used internally by MakeTZX, but it is also very useful to keep down the disk space taken by your VOC/WAV files. The CSW utility can handle CSW conversion in both ways (see below). Of course, MakeTZX itself accepts CSW files for input.
|
||||
When converting to the CSW format, the sample file is processed through MakeTZX's internal digital filter which reduces noise and signal distortions very efficiently. Make a backup copy of the original file if you will need the original samples later, but remeber that in most cases the CSW will be a lot better than the original file.
|
||||
Note that CSWs are intended for use with square waves only (such as computer tapes)!
|
||||
The compression ratio depends on many factors; in general, the higher the sample rate, the higher the ratio. A clean and regular signal helps too. The ratio for a 44 KHz file will usually be twice the value for a 22 KHz one. The typical gain for a 44 KHz turbo tape is about 93%, which means a 12:1 compression factor! Normal speed tapes should compress even better.
|
||||
Finally, CSW files are highly compressable with the standard PC archivers such as RAR and ZIP. The packed CSW files are usually smaller than the zipped original VOCs. You will be able to RAR a 40 MB sample file down to a few hundreds KB.
|
||||
</td></tr></table></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="CSWUTIL"></a>
|
||||
<p><table bbgcolor="#ffff90" width="100%" cellspacing="12" cellpadding="0" border="0"><tr>
|
||||
<td align="center" bgcolor="#ff7848" width="10%"><font size="+2" color="white"><b>
|
||||
2.
|
||||
</b></font></td><td><font size="+2">
|
||||
The CSW utility
|
||||
</font></td></tr></table>
|
||||
<br>
|
||||
<table width="100%" border="0"><tr><td width="10%"> </td></td><td>
|
||||
This small program is intended to provide a basic support for CSW files. It can compress VOC, WAV, IFF and OUT files to CSW and decompress CSW files back to VOC format (switch -d). Enter CSW -? or simply CSW for help. At the moment, CSW.EXE accepts only uncompressed mono 8-bit sample files. Extensions in filenames can be omitted; in this case, the default extensions will be appended in turn to match an existing file. The search order is VOC, WAV, IFF and OUT for last. If the output filename is left out, the input file name with extension .CSW (or .VOC if decompressing) will be used. If the input filename ends with the extension .CSW, then the switch -d (decompression) is implicitly assumed.
|
||||
<br><br>
|
||||
CSW can also work in <strong>DirectMode</strong> (switch -r), in which case the input is taken from your soundcard and conversion is performed on-the-fly in true realtime. You can stop the conversion by pressing any key at any time. To pause the recording press 'P', followed by any key to resume. During the pause, the vu-meter is shown again.
|
||||
Note that, due to MakeTZX's engine requirements, the samples are written to disk anyway, so the maximum recording time is limited by the available disk space. If you want, you can keep this samples at the end of conversion and save them in a WAV file (switch -k), just in case something goes wrong and you don't want to repeat the sample. In this way, CSW may also act like a sampler!
|
||||
You can set the sampling frequency with switch -s (e.g. -s44100). You can also do programmed recordings using switch -t and specifying the recording time (in seconds, e.g. -t60.0 for one minute); in this case, CSW will automatically stop when the time has elapsed (or when the disk is full), so you can start it and go away to do better things :)
|
||||
<br><br>
|
||||
The DirectMode SoundBlaster driver has been written for 100% compatible soundcards. If you are experiencing problems, try option "-c" which will attempt to access the hardware in a different way. The driver also performs a preliminary stability check; if this fails, CSW exits after two seconds with an error message. All this stuff is extensively covered in MakeTZX's manual, DirectMode section; please read it carefully.
|
||||
Note: In order to run the CSW utility under plain MS-DOS you need a DPMI host (such as CWSDPMI.EXE)
|
||||
Note: DirectMode, OUT files, digital filter and the other features are extensively described into MakeTZX's manual. Please read it.
|
||||
Note: Although it is possible to specify fractions of seconds, the effective recording time is subject to DMA buffer size quantums (a few 1/10ths of sec).
|
||||
Note: Like MakeTZX, CSW supports long filenames under Windows 9x
|
||||
|
||||
</td></tr></table></p>
|
||||
|
||||
|
||||
|
||||
<a name="CSW2FORMAT"></a>
|
||||
<p><table bbgcolor="#ffff90" width="100%" cellspacing="12" cellpadding="0" border="0"><tr>
|
||||
<td align="center" bgcolor="#ff7848" width="10%"><font size="+2" color="white"><b>
|
||||
3.
|
||||
</b></font></td><td><font size="+2">
|
||||
CSW-2 file format
|
||||
</font></td></tr></table>
|
||||
<br>
|
||||
<table width="100%" border="0"><tr><td width="10%"> </td></td><td>
|
||||
|
||||
Here is the CSW implementation chart for anyone who wants to use it in some utility or emulator (if so, please let us know). The file format is very simple and the compression scheme used is somewhat based on the RLE algorithm.
|
||||
<br><br>
|
||||
|
||||
<div align="center">
|
||||
|
||||
<table border=1 bgcolor="#8080D0" cellspacing="2" cellpadding="4" width="50%">
|
||||
<tr bgcolor="#8080D0"><td colspan=2 align="center"><font color="#FFFFFF" size="+1"><b>Legenda</b></font></td></tr>
|
||||
<tr bgcolor="#f7f7ff"><td align="center" width="30%">WORD</td><td>2 bytes</td></tr>
|
||||
<tr bgcolor="#f7f7ff"><td align="center">DWORD</td><td>4 bytes</td></tr>
|
||||
<tr bgcolor="#f7f7ff"><td align="center">BYTE[N]</td><td>N bytes</td></tr>
|
||||
<tr bgcolor="#f7f7ff"><td align="center">ASCII[N]</td><td>N ASCII characters</td></tr>
|
||||
<tr bgcolor="#f7f7ff"><td align="center">ASCIIZ[N]</td><td>ASCII string with zero-padding to N bytes total</td></tr>
|
||||
<tr bgcolor="#8080D0"><td colspan=2><font color="#FFFFFF">All multi-byte values are stored in Intel byte order (little-endian).<br>
|
||||
All <em>reserved</em> or undefined bits must be set to zero.
|
||||
<br>
|
||||
All the headers fields must be filled in; blank values are not allowed.</font></td></tr>
|
||||
</table>
|
||||
|
||||
<br><br>
|
||||
|
||||
|
||||
<table width="70%" border=0 cellspacing=1 cellpadding=2 bgcolor="#000000">
|
||||
<tr bgcolor="#80a0ff">
|
||||
<td colspan=4 align="center"><strong><font size="+2" color="#ffffff">CSW-2 Header</font></strong></td>
|
||||
</tr>
|
||||
<tr bgcolor="#fff000">
|
||||
<td colspan=4 align="center"><font size="-2" color="#606060">CSW global file header - <strong> status: <font color="#ff6060">required</font></font></strong></td>
|
||||
</tr>
|
||||
<tr bgcolor="#ffdf90">
|
||||
<td align="center"><strong>Offset</strong></td>
|
||||
<td align="center"><strong>Value</strong></td>
|
||||
<td align="center"><strong>Type</strong></td>
|
||||
<td align="center"><strong>Description</strong></td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x00</td>
|
||||
<td align="center">(note)</td>
|
||||
<td align="center">ASCII[22]</td>
|
||||
<td>"Compressed Square Wave" signature</td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x16</td>
|
||||
<td align="center">0x1A</td>
|
||||
<td align="center">BYTE</td>
|
||||
<td>Terminator code</td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x17</td>
|
||||
<td align="center">0x02</td>
|
||||
<td align="center">BYTE</td>
|
||||
<td>CSW major revision number</td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x18</td>
|
||||
<td align="center">0x00</td>
|
||||
<td align="center">BYTE</td>
|
||||
<td>CSW minor revision number</td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x19</td>
|
||||
<td align="center">-</td>
|
||||
<td align="center">DWORD</td>
|
||||
<td>Sample rate</td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x1D</td>
|
||||
<td align="center">-</td>
|
||||
<td align="center">DWORD</td>
|
||||
<td>Total number of pulses (after decompression)</td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x21</td>
|
||||
<td align="center">-</td>
|
||||
<td align="center">BYTE</td>
|
||||
<td>Compression type (see notes below)<br>
|
||||
<font size="1">0x01: RLE<br>
|
||||
0x02: Z-RLE</font>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x22</td>
|
||||
<td align="center">-</td>
|
||||
<td align="center">BYTE</td>
|
||||
<td>Flags<br>
|
||||
<font size="1">b0: initial polarity; if set, the signal starts at logical high</font></td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x23</td>
|
||||
<td align="center">HDR</td>
|
||||
<td align="center">BYTE</td>
|
||||
<td>Header extension length in bytes (0x00)<br>
|
||||
<font size="1">For future expansions only, see note below.</font></td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x24</td>
|
||||
<td align="center">-</td>
|
||||
<td align="center">ASCIIZ[16]</td>
|
||||
<td>Encoding application description<br>
|
||||
<font size="1">Information about the tool which created the file (e.g. name and version)</font></td>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x34</td>
|
||||
<td align="center">-</td>
|
||||
<td align="center">BYTE[HDR]</td>
|
||||
<td>Header extension data (if present)</td>
|
||||
</tr>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x34+HDR</td>
|
||||
<td align="center">-</td>
|
||||
<td align="center">-</td>
|
||||
<td>CSW data.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<br><br>
|
||||
<strong>Note about Header Extensions:</strong>
|
||||
<br><br>
|
||||
CSW-2 allows to extend the header size by a certain amount of bytes (the current default value is 0). However, this is designed for future revisions of this format and it is not meant to store application-specific data.
|
||||
|
||||
<br><br>
|
||||
<strong>Compression types:</strong>
|
||||
<br><br>
|
||||
<ul>
|
||||
<li><strong>0x01: RLE (Run Length Encoding)</strong><br>
|
||||
The data is stored as a sequence of pulse lengths (1 byte per pulse). Consider the following scenario (each dot is a sample):
|
||||
<br><br>
|
||||
<img src="wave.gif" border=0>
|
||||
<br><br>
|
||||
The 5 pulses shown will be represented with the following bytes:<br>
|
||||
03 05 01 04 07<br>
|
||||
Pulse lengths greater than 0xFF (255) are represented as byte 0x00 followed by the duration represented on 4 bytes, e.g. 0xCDE9 is stored as 00 E9 CD 00 00.
|
||||
</li>
|
||||
<br><br>
|
||||
<li><strong>0x02: Z-RLE (CSW v2.xx only)</strong><br>
|
||||
Pulses are encoded exactly as in method 1, but the generated byte-stream is further compressed with the standard deflate() algorithm as defined by the <a href="http://www.gzip.org/zlib/">ZLIB</a> library (RFC 1151 and 1152). In fact the compression is equivalent to "gzip -9" (without the magic signature); the source code of the compression routines we used is the same as in our RZX SDK. [more tech details here]
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<br>
|
||||
In format revision 1.01 we have introduced a bit to represent the initial signal polarity, which is not important in the Spectrum world but it is for other platforms such as C64. All the Spectrum TZX converters can safely ignore this bit (like MakeTZX does), so any tool supporting CSW 1.00 will also work fine with CSW 1.01 without modifications.
|
||||
<br><br>
|
||||
Note that no info about the pulse amplitude is represented because it is not necessary, since we are dealing with discrete 2-values amplitude scales.
|
||||
</td></tr></table></p>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="CSW1FORMAT"></a>
|
||||
<p><table bbgcolor="#ffff90" width="100%" cellspacing="12" cellpadding="0" border="0"><tr>
|
||||
<td align="center" bgcolor="#ff7848" width="10%"><font size="+2" color="white"><b>
|
||||
4.
|
||||
</b></font></td><td><font size="+2">
|
||||
Old CSW v1.01 file format
|
||||
</font></td></tr></table>
|
||||
<br>
|
||||
<table width="100%" border="0"><tr><td width="10%"> </td></td><td>
|
||||
This is the format specification for the old CSW v1.01. It is reported here because a lot of existing tools support the original version of the file format.
|
||||
<br><br>
|
||||
|
||||
<div align="center">
|
||||
|
||||
<table width="70%" border=0 cellspacing=1 cellpadding=2 bgcolor="#000000">
|
||||
<tr bgcolor="#80a0ff">
|
||||
<td colspan=4 align="center"><strong><font size="+2" color="#ffffff">CSW-1 Header</font></strong></td>
|
||||
</tr>
|
||||
<tr bgcolor="#fff000">
|
||||
<td colspan=4 align="center"><font size="-2" color="#606060">CSW global file header - <strong> status: <font color="#ff6060">required</font></font></strong></td>
|
||||
</tr>
|
||||
<tr bgcolor="#ffdf90">
|
||||
<td align="center"><strong>Offset</strong></td>
|
||||
<td align="center"><strong>Value</strong></td>
|
||||
<td align="center"><strong>Type</strong></td>
|
||||
<td align="center"><strong>Description</strong></td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x00</td>
|
||||
<td align="center">(note)</td>
|
||||
<td align="center">ASCII[22]</td>
|
||||
<td>"Compressed Square Wave" signature</td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x16</td>
|
||||
<td align="center">0x1A</td>
|
||||
<td align="center">BYTE</td>
|
||||
<td>Terminator code</td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x17</td>
|
||||
<td align="center">0x01</td>
|
||||
<td align="center">BYTE</td>
|
||||
<td>CSW major revision number</td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x18</td>
|
||||
<td align="center">0x01</td>
|
||||
<td align="center">BYTE</td>
|
||||
<td>CSW minor revision number</td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x19</td>
|
||||
<td align="center">-</td>
|
||||
<td align="center">WORD</td>
|
||||
<td>Sample rate</td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x1B</td>
|
||||
<td align="center">0x01</td>
|
||||
<td align="center">BYTE</td>
|
||||
<td>Compression type<br>
|
||||
<font size="1">0x01: RLE</font>
|
||||
</td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x1C</td>
|
||||
<td align="center">-</td>
|
||||
<td align="center">BYTE</td>
|
||||
<td>Flags<br>
|
||||
<font size="1">b0: initial polarity; if set, the signal starts at logical high</font></td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x1D</td>
|
||||
<td align="center">0x00</td>
|
||||
<td align="center">BYTE[3]</td>
|
||||
<td>Reserved.</td>
|
||||
</tr>
|
||||
<tr bgcolor="#c0f0ff">
|
||||
<td align="center">0x20</td>
|
||||
<td align="center">-</td>
|
||||
<td align="center">-</td>
|
||||
<td>CSW data.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<br><br>
|
||||
For information about the RLE compression method (0x01) and the meaning of the polarity flag, please refer to the notes for version 2.xx.
|
||||
</td></tr></table></p>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="CONTACT"></a>
|
||||
<p><table bbgcolor="#ffff90" width="100%" cellspacing="12" cellpadding="0" border="0"><tr>
|
||||
<td align="center" bgcolor="#ff7848" width="10%"><font size="+2" color="white"><b>
|
||||
5.
|
||||
</b></font></td><td><font size="+2">
|
||||
Contact information
|
||||
</font></td></tr></table>
|
||||
<br>
|
||||
<table width="100%" border="0"><tr><td width="10%"> </td></td><td>
|
||||
The latest version of this document can be found at:
|
||||
<ul><li><a href="http://www.ramsoft.bbk.org/csw.html">http://www.ramsoft.bbk.org/csw.html</a></li></ul>
|
||||
E-mails concerning the CSW specifications should be directed to:
|
||||
<ul><li><a href="mailto:ramsoft@bbk.org?subject=CSW">ramsoft@bbk.org</a></li></ul>
|
||||
</td></tr></table></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="HISTORY"></a>
|
||||
<p><table bbgcolor="#ffff90" width="100%" cellspacing="12" cellpadding="0" border="0"><tr>
|
||||
<td align="center" bgcolor="#ff7848" width="10%"><font size="+2" color="white"><b>
|
||||
6.
|
||||
</b></font></td><td><font size="+2">
|
||||
Revision history
|
||||
</font></td></tr></table>
|
||||
<br>
|
||||
<table width="100%" border="0"><tr><td width="10%"> </td></td><td>
|
||||
<b>Revision 2.00 (August 1st 2003)</b>
|
||||
<ul>
|
||||
<li>Introduced CSW revision 2.00.</li>
|
||||
<li>Cleared up the document a bit.</li>
|
||||
</ul>
|
||||
<b>Revision 1.01 (July 13th 1999)</b>
|
||||
<ul>
|
||||
<li>Introduced the polarity bit (b0 in Flags)</li>
|
||||
</ul>
|
||||
</td></tr></table></p>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
43
Docs/FORMATS/fdd.hdr
Normal file
43
Docs/FORMATS/fdd.hdr
Normal file
@ -0,0 +1,43 @@
|
||||
|
||||
.FDD ä ©«ë
|
||||
----------
|
||||
|
||||
/* --------------------------------------*/
|
||||
/* í¬ã«ïâ®à ®¡à § ¤¨áª¥âë (image.fdd) */
|
||||
/* (c) 1996 MOA */
|
||||
/* ------------------------------------- */
|
||||
|
||||
// ¯ à ¬¥âàë "¤¨áª¥âë"
|
||||
#define versionLength 30
|
||||
|
||||
#define TRACKMAX (85*2)
|
||||
#define SECTMAX 30 // ç¨á«® ᥪâ®à®¢ ¤®à®¦ª¥
|
||||
|
||||
/* ä®à¬ â ä ©« ®¡à § ¤¨áª */
|
||||
|
||||
/* § £®«®¢®ª */
|
||||
struct diskHEADER {
|
||||
char head[versionLength]; /* ᨣ âãà */
|
||||
byte trkMax; /* ç¨á«® â४®¢, ¢á¥£® ¡¥§ ãç¥â £®«®¢®ª */
|
||||
byte headMax; /* ç¨á«® £®«®¢®ª (1 ¨«¨ 2) */
|
||||
long diskIndex = 0l; /* unused */
|
||||
long trkIdx[TRACKMAX]; /* ᬥ饨¥ ¢ ä ©«¥ ª áâàãªâãà ¬ § £®«®¢ª®¢ */
|
||||
/* â४®¢ */
|
||||
};
|
||||
|
||||
/* ¬¥á⮯®«®¦¥¨¥ ®á⠫쮩 ¨ä®à¬ 樨 ¢ ä ©«¥ ¥ 䨪á¨à®¢ ® */
|
||||
|
||||
/* ¨ä®à¬ æ¨ï ® ¤®à®¦ª¥ */
|
||||
struct diskTRACK {
|
||||
byte trkType = 0; /* unused */
|
||||
byte sectNum; /* ç¨á«® ᥪâ®à®¢ â४¥ */
|
||||
struct {
|
||||
/* § £®«®¢®ª ᥪâ®à */
|
||||
byte trk; /* ®¬¥à â४ */
|
||||
byte side; /* ®¬¥à áâ®à®ë */
|
||||
/* 7 ¡¨â í⮣® ¡ ©â 㪠§ë¢ ¥â ¡¨â a */
|
||||
byte sect; /* ®¬¥à ᥪâ®à */
|
||||
byte size; /* à §¬¥à ᥪâ®à (ª®¤) */
|
||||
long sectPos; /* ᬥ饨¥ ¢ ä ©«¥ ª ¤ ë¬ á¥ªâ®à */
|
||||
} sect[SECTMAX];
|
||||
};
|
||||
89
Docs/FORMATS/fdi.hdr
Normal file
89
Docs/FORMATS/fdi.hdr
Normal file
@ -0,0 +1,89 @@
|
||||
|
||||
.FDI ä ©«ë
|
||||
----------
|
||||
|
||||
<20>®áª®«ìªã ¯® àï¤ã ¯à¨ç¨ áãé¥áâ¢ãî騥 ä®à¬ âë ä ©«®¢-®¡à §®¢ ¤¨áª¥â
|
||||
¥ ¯®¤å®¤¨«¨ (®âáãâá⢨¥ ¤®ªã¬¥â 樨, £« ¢®¥ - ¥¢®§¬®¦®áâì à áè¨à¥¨ï
|
||||
ä®à¬ â ¤«ï § ¯¨á¨ ¯®«ëå ®¡à §®¢ â४®¢, ®¡« á⥩ á 䨧¨ç¥áª¨¬¨ ¤¥ä¥ªâ ¬¨
|
||||
¨ â.¯.), â® ¯à¨è«®áì á®§¤ âì ᢮© ᮡáâ¢¥ë© ä®à¬ â. <20>¥ ¬®£ã £ à â¨à®¢ âì,
|
||||
çâ® à áè¨à¥¨¥ *.FDI ¥ ¨á¯®«ì§ã¥âáï ¥é¥ ª¥¬-â® ¤«ï ¤àã£¨å æ¥«¥©; ¯®í⮬ã
|
||||
®£®¢®àîáì, çâ® ¤ ®¥ ®¯¨á ¨¥ ªâã «ì® â®«ìª® ¤«ï ä ©«®¢, á®§¤ ¢ ¥¬ëå
|
||||
¯à®£à ¬¬®© MAKEFDI ¨ ¨á¯®«ì§ã¥¬ëå ¯à®£à ¬¬®© SP_EMU (Spectrum debugger).
|
||||
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
‘¬¥é¥¨¥ „«¨ ¯®«ï ޝ¨á ¨¥
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
0 3 Š«î祢 ï ¬¥âª 'FDI'
|
||||
3 1 ”« £ § é¨âë § ¯¨á¨ (0 - write enabled, 1 - write disabled)
|
||||
4 2 —¨á«® 樫¨¤à®¢
|
||||
6 2 —¨á«® ¯®¢¥àå®á⥩
|
||||
8 2 ‘¬¥é¥¨¥ ⥪áâ (ª®à®âª¨© ª®¬¬¥â ਩ ª ¤¨áªã)
|
||||
A 2 ‘¬¥é¥¨¥ ¤ ëå
|
||||
‘ 2 „«¨ ¤®¯®«¨â¥«ì®© ¨ä®à¬ 樨 ¢ § £®«®¢ª¥. ‚ í⮩ ¢¥àᨨ - 0
|
||||
|
||||
E "„«¨ ¤®¯®«¨â¥«ì®© ¨ä®à¬ 樨"
|
||||
”®à¬ â ¥é¥ ¥ ®¯à¥¤¥«¥ (१¥à¢ ¤«ï ¤ «ì¥©è¥© ¬®¤¥à¨§ 樨)
|
||||
|
||||
E+"¤«¨ ¤®¯®«¨â¥«ì®© ¨ä®à¬ 樨"
|
||||
???
|
||||
Ž¡« áâì § £®«®¢ª®¢ â४®¢. ‡¤¥áì á®¡à ¢áï ¨ä®à¬ æ¨ï ®
|
||||
ä®à¬ ⥠¤¨áª¥âë. <20>â ®¡« áâì ¤®«¦ ᮤ¥à¦ âì ¥ ¬¥ìè¥
|
||||
"—¨á«® 樫¨¤à®¢"*"—¨á«® ¯®¢¥àå®á⥩" § £®«®¢ª®¢. ‡ £®«®¢ª¨
|
||||
¨¤ãâ ¢ ¯®à浪¥ Cyl 0 Head 0, Cyl 0 Head 1, Cyl 1 Head 0 ¨ â.¤.
|
||||
”®à¬ â § £®«®¢ª ®¯¨á ¨¦¥.
|
||||
|
||||
"‘¬¥é¥¨¥ ⥪áâ "
|
||||
???
|
||||
Š®¬¬¥â ਩ ª ¤¨áªã.Š®¥æ ª®¬¬¥â à¨ï - ã«¥¢®© ᨬ¢®«.
|
||||
MAKEFDI ¯à¨ á®§¤ ¨¨ ®¢®£® ä ©« ¯®§¢®«ï¥â ¢¢®¤¨âì ª®¬¬¥â ਩
|
||||
¥ ¡®«¥¥ 64 ᨬ¢®«®¢ á § ¢¥àè î騬 ã«¥¬,® ¯à¨ à ¡®â¥ á ä ©«®¬
|
||||
¤«¨ í⮣® ¯®«ï ¡ã¤¥â ®¯à¥¤¥«ïâìáï ¯® ¯®«®¦¥¨î § ¢¥àè î饣®
|
||||
ã«¥¢®£® ᨬ¢®«
|
||||
|
||||
"‘¬¥é¥¨¥ ¤ ëå"
|
||||
???
|
||||
‡¤¥áì «¥¦ â ᮡá⢥® ¤ ë¥ ¨§ ᥪâ®à®¢. ‘ª®«ìª® §¤¥áì ¡ã¤¥â
|
||||
ᥪâ®à®¢, ¨å ¤«¨ ¨ ¯®à冷ª á«¥¤®¢ ¨ï - § ¢¨á¨â ®â ä®à¬ â .
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
”®à¬ â FDI-ä ©« ¤®¯ã᪠¥â ¯à®¯ã᪨ ¬¥¦¤ã ®¡« áâﬨ § £®«®¢ª®¢ â४®¢,⥪á⮢ë¬
|
||||
ª®¬¬¥â ਥ¬ ¨ ®¡« áâìî ¤ ëå.
|
||||
|
||||
|
||||
”®à¬ â § £®«®¢ª â४
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
‘¬¥é¥¨¥ „«¨ ¯®«ï ޝ¨á ¨¥
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
0 4 ‘¬¥é¥¨¥ â४ - ç «® ®¡« á⨠¤ ëå í⮣® â४
|
||||
®â®á¨â¥«ì® "‘¬¥é¥¨ï ¤ ëå"
|
||||
4 2 ‚ᥣ¤ ᮤ¥à¦¨â 0 (१¥à¢ ¤«ï ¬®¤¥à¨§ 樨)
|
||||
6 1 —¨á«® ᥪâ®à®¢ â४¥
|
||||
|
||||
7 (—¨á«® ᥪâ®à®¢)*7
|
||||
ˆä®à¬ æ¨ï ® ᥪâ®à å â४¥. Š ¦¤ë© ᥪâ®à ®¯¨áë¢ ¥âáï 7
|
||||
¡ ©â ¬¨. <20>¥à¢ë¥ 4 ¡ ©â - áâ ¤ àë¥ ¯ à ¬¥âàë C,H,R,N ¨§
|
||||
¤à¥á®£® ¬ થà . ‘«¥¤ãî騩 ¡ ©â - ä« £¨:
|
||||
|
||||
bit 7=0 - ¬ àª¥à ®à¬ «ìëå ¤ ëå, 1 - 㤠«¥ëå ¤ ëå;
|
||||
bit 0-5: ä« £¨ CRC. …¤¨¨æ ¢ ®¤®¬ ¨§ à §à冷¢ ®§ ç ¥â, çâ®
|
||||
¯à¨ áç¨âë¢ ¨¨ í⮣® ᥪâ®à ¤«¨ã 128,256,1024,2048 ¨«¨
|
||||
4096 ¡ ©â ¯®«ãç ¥âáï ¯à ¢¨«ì ï ª®â஫ì ï á㬬 . …᫨ ¢® ¢á¥å
|
||||
à §àï¤ å 0 - ᥪâ®à § ¯¨á á ®è¨¡ª®© ª®â஫쮩 á㬬ë.
|
||||
bit 6: ‚ ¤ ®© ¢¥àᨨ ¢á¥£¤ 0. ‚®§¬®¦®, 1 ¢ ¤ ®¬ à §à拉
|
||||
¡ã¤¥â ®¡®§ ç âì ¤à¥áë© ¬ àª¥à ¡¥§ ®¡« á⨠¤ ëå.
|
||||
|
||||
<20>®á«¥¤¨¥ 2 ¡ ©â - ᬥ饨¥ ¤ ëå í⮣® ᥪâ®à ®â®á¨â¥«ì®
|
||||
ç « ®¡« á⨠¤ ëå â४ . —â®¡ë ¯®«ãç¨âì ¡á®«îâë© ¤à¥á
|
||||
¢ ä ©«¥, ª í⮬ã ç¨á«ã ¤® ¤®¡ ¢¨âì "‘¬¥é¥¨¥ ¤ ëå" ¨
|
||||
"‘¬¥é¥¨¥ â४ "
|
||||
------------------------------------------------------------------------------
|
||||
7*(—¨á«® ᥪâ®à®¢+1) ¤«¨ § £®«®¢ª â४
|
||||
|
||||
|
||||
‡ ¬¥â¨¬, çâ® ¡ ©â ä« £®¢ ¢ ®¯¨á ¨¨ ᥪâ®à ¯®ª ¨ª ª ¥ ¨á¯®«ì§ã¥âáï
|
||||
í¬ã«ïâ®à®¬.
|
||||
1
Docs/FORMATS/info_guide/1SPRITES
Normal file
1
Docs/FORMATS/info_guide/1SPRITES
Normal file
File diff suppressed because one or more lines are too long
246
Docs/FORMATS/info_guide/888
Normal file
246
Docs/FORMATS/info_guide/888
Normal file
@ -0,0 +1,246 @@
|
||||
|
||||
Формат упакованного триколора .888
|
||||
|
||||
Файлы данного формата будут генерироваться редактором 8col, на-
|
||||
чиная с версии v0. Разумеется, поддержка всех старых форматов
|
||||
останется, как на чтение, так и на запись.
|
||||
|
||||
Заголовок отсутствует!
|
||||
Тело файла содержит данные о содержимом последовательно идущих
|
||||
знакомест 8x8 (слева направо, сверху вниз, 32 знакоместа по го-
|
||||
ризонтали и 24 по вертикали). Всего существует 8 цветов - по 2
|
||||
градации на каждую цветовую составляющую: G, R, B.
|
||||
|
||||
В теле файла перемешаны 2 потока: битовый и байтовый, аналогично
|
||||
формату hrust2.1 (см. AlCoNews#11). Битовый поток является упра-
|
||||
вляющим, первый байт файла принадлежит ему.
|
||||
|
||||
Запись о каждом знакоместе состоит из полей:
|
||||
3 бита - тип цветности (характеризует количество цветов)
|
||||
[опционально] - использованные цвета в порядке увеличения часто-
|
||||
ты (т.е. начиная с самых редких)
|
||||
[опционально] сколько-то бит или, возможно, 24 байта - пиксе-
|
||||
льные данные знакоместа в соответствии с его типом.
|
||||
|
||||
Типы цветности:
|
||||
0 - 8-цветное знакоместо, в байтовом потоке лежит 24 байта дан-
|
||||
ных,по 3 байта (в порядке R, G, B) на каждую пиксельную линию
|
||||
знакоместа. (Байтовый поток, кроме как здесь, больше нигде не
|
||||
используется.) Палитра отсутствует.
|
||||
1 - используется последний использованый не 8-цветный тип цвет-
|
||||
ности, палитра также берётся старая.
|
||||
2 - одноцветное знакоместо. В палитре один элемент, указывающий
|
||||
этот цвет. Элемент палитры занимает 3 бита: G, R, B. Пиксель-
|
||||
ные данные отсутствуют.
|
||||
3 - двухцветное знакоместо. В пиксельных данных лежат пиксели
|
||||
слева направо, сверху вниз, по 1 биту на пиксель. 0 - наибо-
|
||||
лее частый пиксель (последний элемент палитры), 1 - наиболее
|
||||
редкий пиксель (первый элемент палитры).
|
||||
4 - трёхцветное знакоместо. Цвета пикселей кодируются: 0, 10, 11
|
||||
(в порядке убывания частоты, т.е. в порядке убывания номера в
|
||||
палитре).
|
||||
5 - четырёхцветное знакоместо. Цвета пикселей кодируются: 00,
|
||||
01, 10, 11 (в порядке убывания частоты).
|
||||
6 - пятицветное знакоместо. Цвета пикселей кодируются: 00, 01,
|
||||
10, 110, 111 (в порядке убывания частоты).
|
||||
7 - шестицветное знакоместо. Цвета пикселей кодируются: 00, 01,
|
||||
100, 101, 110, 111 (в порядке убывания частоты).
|
||||
|
||||
Степень сжатия среднестатистической триколорины несколько силь-
|
||||
нее, чем у hrust2.1, при этом скорость сжатия многократно выше.
|
||||
|
||||
Распаковщик:
|
||||
|
||||
;палитра не запоминается, если
|
||||
;8 цветов ИЛИ используется старая палитра
|
||||
|
||||
;ЦВЕТА В ОБРАТНОМ ПОРЯДКЕ:начиная с редких
|
||||
|
||||
FROM=#D000
|
||||
TO=#8000
|
||||
ORG #6000
|
||||
TCOL_S ;DS 6
|
||||
GO
|
||||
LD HL,FROM
|
||||
LD C,128
|
||||
EXX
|
||||
LD HL,TO
|
||||
LD DE,125
|
||||
LD C,1
|
||||
DEP EXX
|
||||
CALL DEP3
|
||||
CALL NZ,oldcl
|
||||
JR NZ,COLQQ
|
||||
LD B,8
|
||||
COL80 LD E,(HL) ;R
|
||||
INC HL
|
||||
LD D,(HL) ;G
|
||||
INC HL
|
||||
;(DE)=%0GRB0grb
|
||||
DUP 4
|
||||
XOR A
|
||||
RL D
|
||||
RLA
|
||||
RL E
|
||||
RLA
|
||||
RLC (HL)
|
||||
RLA
|
||||
ADD A,A
|
||||
RL D
|
||||
RLA
|
||||
RL E
|
||||
RLA
|
||||
RLC (HL)
|
||||
RLA
|
||||
EXX
|
||||
LD (HL),A
|
||||
INC L
|
||||
EXX
|
||||
EDUP
|
||||
ORG $-2
|
||||
ADD HL,DE
|
||||
EXX
|
||||
INC HL
|
||||
DJNZ COL80
|
||||
COLQQ EXX
|
||||
LD A,H
|
||||
INC L,L,L,L
|
||||
JP PE,$+6
|
||||
SUB 4
|
||||
LD H,A
|
||||
RES 7,L
|
||||
CP 'TO+96
|
||||
JP C,DEP
|
||||
CHL LD C,(HL)
|
||||
INC HL
|
||||
RL C
|
||||
RET
|
||||
|
||||
oldcl LD D,'TCOL_S
|
||||
DEC A
|
||||
JR Z,COLOLD
|
||||
LD LX,A
|
||||
LD E,A
|
||||
DEPTAB CALL DEP3
|
||||
DEC E
|
||||
LD (DE),A
|
||||
JR NZ,DEPTAB
|
||||
COLOLD LD A,LX
|
||||
LD B,64
|
||||
CP 4
|
||||
JR NC,COL45O
|
||||
DEC A
|
||||
JR Z,COL1
|
||||
DEC A
|
||||
JR Z,COL2
|
||||
;2=11
|
||||
;1=10
|
||||
;0=0
|
||||
COL3
|
||||
LD A,#80
|
||||
CALL DEPCOL0
|
||||
JR Z,COL3N1
|
||||
SLA C
|
||||
CALL Z,CHL
|
||||
RLA
|
||||
DEC A
|
||||
COL3N1 CALL PUTCOL
|
||||
DJNZ COL3
|
||||
RET
|
||||
;1=1
|
||||
;0=0
|
||||
COL2
|
||||
LD A,#80
|
||||
CALL DEPCOL0
|
||||
CALL PUTCOL
|
||||
DJNZ COL2
|
||||
RET
|
||||
COL45O
|
||||
JR Z,COL4
|
||||
RRA
|
||||
JR C,COL5
|
||||
;5=111
|
||||
;4=110
|
||||
;3=101
|
||||
;2=100
|
||||
;1=01
|
||||
;0=00
|
||||
COL6 LD A,#40
|
||||
CALL DEPCOL0
|
||||
CP 2
|
||||
JR C,COL6N1
|
||||
DEC A
|
||||
SLA C
|
||||
CALL Z,CHL
|
||||
RLA
|
||||
COL6N1 CALL PUTCOL
|
||||
DJNZ COL6
|
||||
RET
|
||||
;4=111
|
||||
;3=110
|
||||
;2=10
|
||||
;1=01
|
||||
;0=00
|
||||
COL5 LD A,#40
|
||||
CALL DEPCOL0
|
||||
CP 3
|
||||
JR C,COL5N1
|
||||
SLA C
|
||||
CALL Z,CHL
|
||||
RLA
|
||||
SUB 3
|
||||
COL5N1 CALL PUTCOL
|
||||
DJNZ COL5
|
||||
RET
|
||||
;3=11
|
||||
;2=10
|
||||
;1=01
|
||||
;0=00
|
||||
COL4
|
||||
LD A,#40
|
||||
CALL DEPCOL0
|
||||
CALL PUTCOL
|
||||
DJNZ COL4
|
||||
RET
|
||||
COL1
|
||||
LD A,(DE)
|
||||
LD D,A
|
||||
RLCA
|
||||
RLCA
|
||||
RLCA
|
||||
RLCA
|
||||
OR D
|
||||
EXX
|
||||
LD B,8
|
||||
COL10 LD (HL),A
|
||||
INC L
|
||||
LD (HL),A
|
||||
INC L
|
||||
LD (HL),A
|
||||
INC L
|
||||
LD (HL),A
|
||||
ADD HL,DE
|
||||
DJNZ COL10
|
||||
EXX
|
||||
RET
|
||||
|
||||
PUTCOL LD E,A
|
||||
LD A,(DE)
|
||||
EXX
|
||||
RLD
|
||||
LD A,C
|
||||
AND #2A
|
||||
JR Z,$+3
|
||||
INC L
|
||||
RLC C
|
||||
JR NC,$+3
|
||||
ADD HL,DE
|
||||
EXX
|
||||
RET
|
||||
DEP3
|
||||
LD A,#20
|
||||
DEPCOL0 SLA C
|
||||
CALL Z,CHL
|
||||
ADC A,A
|
||||
JR NC,DEPCOL0
|
||||
RET
|
||||
1
Docs/FORMATS/info_guide/ARITHM.$W!
Normal file
1
Docs/FORMATS/info_guide/ARITHM.$W!
Normal file
File diff suppressed because one or more lines are too long
1
Docs/FORMATS/info_guide/MOA_FS.$W!
Normal file
1
Docs/FORMATS/info_guide/MOA_FS.$W!
Normal file
File diff suppressed because one or more lines are too long
1
Docs/FORMATS/info_guide/OLZH.$W!
Normal file
1
Docs/FORMATS/info_guide/OLZH.$W!
Normal file
@ -0,0 +1 @@
|
||||
Ž¯â¨¬ «ìë© LZH
From : hrumer@gorny.ru
>>ˆ£®àì <20> ¢«®¢ ¢¥¤ñ⠯஥ªâ 7-zip, ®â ¥£® ¢ ª®ä¥à¥æ¨¨ ï
>>ã§ « ¯à® «£®à¨â¬ optimal lzh - ª®£¤ ¢ë¡¨à ¥âáï
>>¤¥©áâ¢¨â¥«ì® ®¯â¨¬ «ìë© á¯®á®¡ ¯®¤¡®à áâப ¯à¨ 㦥
>>áãé¥áâ¢ãî饬 ¤¥à¥¢¥ ª®¤®¢ ¤«¨ ¨ à ááâ®ï¨©.
DB>•€—“íâ®â «£®à¨â¬.
„¥à¦¨!
<0A>â®â «£®à¨â¬ ॠ«ì® 㦥 ª ¦¤®¬ã ¯ ª¥àã ᯥªâà㬥. Ÿ ¤®«-
¦¥ ¡ë« ¥£® ॠ«¨§®¢ âì ¤«ï ¢á¥å åà㬮¢,åàãá⮢ ¨ « §¥àª®¬¯ ªâ®¢
âà¨-ç¥âëॠ£®¤ § ¤. €©ï©ï© ¢ ®¡é¥¬. „«ï " ¬¥à⢮" § è¨âëå
ª®¤®¢, ª ª í⮠ᤥ« ® ¢ ¡®«ìè¨á⢥ ¯ ª¥à®¢ ᯥª¥, íâ®â
«£®à¨â¬ ¯à¨¥áñâ ®ª®«®, ¡®îáì ᪠§ âì,2-20%.<08> ¯ ª¥à å ⨯
RIP¤® ¯à¨¬¥à®1-10%.<08>â® ¢áª¨¤ªã. Š®¥ç®, ¯ ¬ï⨠¬®£® ¤®
¯ ª®¢ªã, â®à¬®§¨âì ¡ã¤¥â á¥àìñ§®, ® ¥áâì à §«¨çë¥ ¢ ਠâë
- ªã᪨ ª ª®© ¤«¨ë à §¡¨âì ä ©« ¨ ¯à®ç¥¥.„ å®âì PC ¬®¦®
¯ ª®¢ âì.
--------åàã¬--------
ˆ£®àì <20> ¢«®¢ ¯¨á « ¢ RU.COMPRESS ¢ 1999 £®¤ã.
€«£®à¨â¬ ®¯â¨¬ «ì®£® Lempel-Ziv-Huffman ª®¤¨à®¢ ¨ï
----------------------------------------------------
1)
<0A>®¨áª ᮢ¯ ¤¥¨© ¢ á«®¢ àî ®áãé¥á⢫ï¥âáï ¤«ï ª ¦¤®£® ᬥ饨ï.
<0A>ਠ¯®¨áª¥ ¤®¯®«¨â¥«ì® ᮡ¨à ¥¬ ¨ä®à¬ æ¨î ®¡ ®¯â¨¬ «ìëå (¯®
à ááâ®ï¨î) ᮢ¯ ¤¥¨ïå á ¤«¨ ¬¨ ®â2¤® ¤«¨ë ¬ ªá¨¬ «ì®£®
ᮢ¯ ¤¥¨ï.
Offsets[] = Get_Longest_And_Other_Good_Matches();
// Offsets.Size = length of longest match.
// Offsets[i] = back offset in dictionary for match with len=i.
BYTE Get_Current_Literal();
// returns current byte
2)
‚ᥣ¤ ¬®¦¥¬ ¯®áç¨â âì, ᪮«ìª® ¯à¥¤¯®«®¦¨â¥«ì® ¡¨â § ©¬ñâ
«î¡®© ¢ ਠâ (match/literal) ®á®¢¥ ¨ä®à¬ 樨 ® ¯à¥¤ë¤ãé¨å
huffman ¡«®ª å:
int Get_Match_Huffman_Price(int Length, int Offset);
// Length = length of match
// Offset = offset of match;
// Result = number of bits for coding this match;
int Get_Literal_Huffman_Price(BYTE Literal);
// Result = number of bits for coding this Literal;
3)
Câந¬ ®¯â¨¬ «ìãî ¯®á«¥¤®¢ ⥫ì®áâì ª®¤®¢ ¬®£® 室®¢
¢¯¥àñ¤.
…áâì ¡®«ì让 ¬ áᨢ a[]:
a[i] =
{
int Price;// –¥ ¯ã⨠¢ ¡¨â å,çâ®¡ë ¤®¡à âìáï ¤® i-£® ¡ ©â .
struct
{
int Prev;// <20>®§¨æ¨ï,®âªã¤ ¬ë ¯àë£ ¥¬ ¢ ⥪ãéãî(=i) ¯®§¨æ¨î
// ¤«ï Literal: Prev = i - 1
// ¤«ï Match' á ¤«¨®© Length: Prev = i - Length
int Offset;// ‘¬¥é. ¢ ¡ãä¥à¥(á«®¢ à¥) § ¤ ¢ á«ãç ¥ Œatch'
// ¤«ï § ¯¨á¨ Œatch' ®â Prev ¤® i
}
}
a)
„«ï ¢á¥å í«¥¬¥â®¢ a[] ãáâ ¢«¨¢ ¥¬ Price = ¡¥áª®¥ç®áâì.
b)
for(int i=0; i < Big_Value; i++)
{
// ‘ãé¥áâ¢ãîâ ¥ª®â®àë¥ ãá«®¢¨ï ¤®áà®ç®£® ¢ëå. ¨§ í⮣® 横«
// <20>®«ãç ¥¬ ¬ áᨢ Offsets[2..Longest_match_length] ᬥ饨© ¢
// ¡ãä¥à¥ (á«®¢ à¥) § ¤, ᬮâਠ1).
Offsets[] = Get_Longest_And_Other_Good_Matches();
for(int Len = 1; Len < Offsets[].Length; Len++)
// Len=1 means Literal
{
// Ž¯à¥¤¥«ï¥¬ æ¥ã ¢ ¡¨â å à áᬠâਢ ¥¬®£® "¯à릪 " Len
// ᨬ¢®«®¢ ¢¯¥àñ¤
if (Len == 1) // it's a literal
aPrice = Get_Literal_Huffman_Price(Get_Current_Literal());
else
aPrice = Get_Match_Huffman_Price(Len, Offsets[Len]);
// ¨ ¢ëç¨á«ï¥¬ æ¥ã ®¢®£® ª ¤¨¤ â ¢ a[i + Len].
aNewPrice = a[i].Price + aPrice;
if (aNewPrice < a[i + Len].Price )
// …᫨ ¢ë£®¤® áâ àë© ¯ãâì (áâ à ï æ¥ ¬®¦¥â ¡ëâì ¤ ¦¥
// à ¢ ¡¥áª®¥ç®áâ¨,â.¥.¢®®¡é¥ ¥éñ ¥â ¯ãâ¨) § ¬¥¨âì
// ®¢ë¬, â® ¬¥ï¥¬ a[i + Len], çâ®¡ë ® 㪠§ë¢ « i
{
a[i + Len].Price = aNewPrice;
a[i + Len].Prev = i;
a[i + Len].Offset = Offsets[Len];
}
}
}
c)
„¢¨£ ïáì ¯® a[] ®â ª®æ , ᮡ¨à ¥¬ "®¯â¨¬ «ìë¥" match/literal
¯®á«¥¤®¢ ⥫ì®á⨠¨ ª®¤¨à㥬 ¨å.
End.
--------åàã¬--------
>>‚ ®¡é¥¬, ¬®¥ ®â®è¥¨¥ ᬮâਠ¢ëè¥, ® ¢®â ¥áâì ¦¥ ¤à㣠ï
>>¨â¥à¥á ï ¢¥éì - ¯à®áâ® ¯®¤¤¥à¦ âì à ᯠª®¢ªãLZMA
>>ᯥªâà㬥. <20>à ¢¤ , ¬¥ ª ¦¥âáï, ¡ã¤¥â ¥ã¤®¡® ¨á¯®«ì§®¢ âì
>>à ᯠª®¢é¨ªLZMA¤«ï ¯à®£à ¬¬ ᯥªâà㬥.
DB><04>® ¬®¦® ¯à¨¬¥¨âì ¤«ï ¦ãà «®¢ ¨«¨ ¡®«ìè¨å á¯à ¢®ç¨ª®¢.
DB><04> ¯à¨¬¥à,Open Letters ®¤®¬ ¤¨áª¥ ;)
>>PS. <20>¥à¥ç¨â « ⢮ñ ¯¨á쬮 ¨ ¯®ï«, çâ® ¨á室¨ª¨ ⥡¥
>>¯à¨á« «¨...
DB>’ ¬ ¡¥§ ¯®««¨âàë ¥ ¢ê¥¤¥èì -1021ä ©«,3.4¬¥£ ¡ ©â
DB>¨á室¨ª®¢. Œãá®àª .
<0A>ã, ¯®««¨âà ¥ ¯à®¡«¥¬ :). ’ ¬ ¨ á ¯®««¨âன ¥ ¢ê¥¤¥èì.
’ë ¥ ¯à®¡®¢ « ¨§ãç¨âì ¯à®áâ® ¤¥ª®¤¥à, â®â, ª®â®àë© ¢ ä ©«¥
\SRC\7zip\Compress\LZMA_C\lzmadecode.c,â ¬ ¢á¥£®23ª¡ :).
|
||||
1
Docs/FORMATS/info_guide/Ptdoc.$w!
Normal file
1
Docs/FORMATS/info_guide/Ptdoc.$w!
Normal file
File diff suppressed because one or more lines are too long
550
Docs/FORMATS/info_guide/RARFOR00.TFI
Normal file
550
Docs/FORMATS/info_guide/RARFOR00.TFI
Normal file
@ -0,0 +1,550 @@
|
||||
...á í⮣® ¬¥áâ Alone Coder ¯¥à¥á¥« §
|
||||
¯¥â £® ¨ ¯à®¤®«¦¨« ¡¨à âì áâ âì¨
|
||||
ñ¬. <20>¥á¬®âàï ᮯà®â¨¢«ïîéãîáï ª« ¢¨ -
|
||||
âãàã, íâ® ®ª § «®áì 㤮¡¥¥ :)
|
||||
|
||||
”®à¬ â RAR 2.x.
|
||||
|
||||
Œ¥ ®ç¥ì ¯®à ¢¨«áï íâ®â ä®à¬ â á â®çª¨
|
||||
§à¥¨ï ¡ëáâà®âë à ᯠª®¢é¨ª , á®®â¥áñ®©
|
||||
á ª ç¥á⢮¬ ᦠâ¨ï, ¯®í⮬ã ï à¥è¨« ¢ ¬ ®
|
||||
ñ¬ à á᪠§ âì.
|
||||
„«ï ç « ¯à¨¢¥¤ã ä¨à¬¥ãî â¥å¨ç¥áªãî
|
||||
¨ä®à¬ æ¨î,çâ®¡ë ¡ë«® ¥¬®£® ¯®ïâ®, çâ®
|
||||
¨ £¤¥ ¢ ä ©«¥ «¥¦¨â :)
|
||||
|
||||
---------begin of techinfo.txt----------
|
||||
|
||||
’¥å¨ç¥áª ï ¨ä®à¬ æ¨ï ¯® RAR ¢¥àᨨ 2.70
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Ž<>ˆ‘›‚€…Œ›‰ ”Ž<E2809D>Œ€’ €<>•ˆ‚€ „…‰‘’‚ˆ’…‹…<E280B9>
|
||||
’Ž‹œŠŽ „‹Ÿ RAR ‚…<E2809A>‘ˆˆ 1.50 ˆ ‘’€<E28099>˜…
|
||||
|
||||
==========================================
|
||||
”®à¬ â à娢®£® ä ©« RAR
|
||||
==========================================
|
||||
|
||||
” ©« à娢 á®á⮨⠨§ ¡«®ª®¢ à §®© ¤«¨-
|
||||
ë. <20>®à冷ª á«¥¤®¢ ¨ï íâ¨å ¡«®ª®¢ ¬®¦¥â
|
||||
¬¥ïâìáï, ® ¯¥à¢ë¬ ¡«®ª®¬ ¢á¥£¤ ¤®«¦¥
|
||||
¡ëâì ¡«®ª-¬ થà, § ª®â®àë¬ á«¥¤ã¥â ¡«®ª
|
||||
§ £®«®¢ª à娢 .
|
||||
Š ¦¤ë© ¡«®ª ç¨ ¥âáï á® á«¥¤ãîé¨å ¯®«¥©:
|
||||
|
||||
HEAD_CRC 2 ¡ ©â CRC ¢á¥£® ¡«®ª
|
||||
¨«¨ ¥£® ç áâ¨
|
||||
HEAD_TYPE 1 ¡ ©â ’¨¯ ¡«®ª
|
||||
HEAD_FLAGS 2 ¡ ©â ”« £¨ ¡«®ª
|
||||
HEAD_SIZE 2 ¡ ©â <04> §¬¥à ¡«®ª
|
||||
ADD_SIZE 4 ¡ ©â <04>¥®¡ï§ ⥫쮥
|
||||
¯®«¥:¤®¡ ¢«¥¨¥
|
||||
ª à §¬¥àã ¡«®ª
|
||||
<EFBFBD>®«¥ ADD_SIZE ¯à¨áãâáâ¢ã¥â, ⮫쪮 ¥á«¨
|
||||
(HEAD_FLAGS & 0x8000) != 0
|
||||
|
||||
ޡ鍩 à §¬¥à ¡«®ª 㪠§ ¢ ¯®«¥ HEAD_SIZE
|
||||
- ¥á«¨ (HEAD_FLAGS & 0x8000) == 0,- ¨«¨
|
||||
HEAD_SIZE+ADD_SIZE,¥á«¨ ¥áâì ¯®«¥ ADD_SIZE
|
||||
- ¯à¨ í⮬ (HEAD_FLAGS & 0x8000) != 0.
|
||||
|
||||
‚® ¢á¥å ¡«®ª å á«¥¤ãî騥 ¡¨âë ¢ HEAD_FLAGS
|
||||
¨¬¥îâ ®¤¨ ª®¢®¥ § 票¥:
|
||||
0x4000 -¥á«¨ ãáâ ®¢«¥, â® áâ àë¥ ¢¥àᨨ
|
||||
RAR ¡ã¤ãâ ¨£®à¨à®¢ âì íâ®â ¡«®ª
|
||||
¨ 㤠«ïâì ¥£® ¯à¨ ¨§¬¥¥¨¨ àå¨-
|
||||
¢ ;
|
||||
¥á«¨ ¥ ãáâ ®¢«¥, â® ¡«®ª ª®¯¨-
|
||||
àã¥âáï ¢ ®¢ë© àå¨¢ë© ä ©« ¯à¨
|
||||
¨§¬¥¥¨¨ à娢 ;
|
||||
0x8000 -¥á«¨ ãáâ ®¢«¥, â® ¯à¨áãâáâ¢ã¥â
|
||||
¯®«¥ ADD_SIZE,
|
||||
¨ à §¬¥à ¯®«®£® ¡«®ª á®áâ ¢«ï¥â
|
||||
HEAD_SIZE+ADD_SIZE.
|
||||
|
||||
‡ ¥ë¥ â¨¯ë ¡«®ª®¢:
|
||||
HEAD_TYPE=0x72 ¡«®ª-¬ થà
|
||||
HEAD_TYPE=0x73 § £®«®¢®ª à娢
|
||||
HEAD_TYPE=0x74 § £®«®¢®ª ä ©«
|
||||
HEAD_TYPE=0x75 § £®«®¢®ª ª®¬¬¥â à¨ï
|
||||
HEAD_TYPE=0x76 í«¥ªâà® ï ¯®¤¯¨áì
|
||||
áâ ண® ⨯
|
||||
HEAD_TYPE=0x77 áã¡¡«®ª
|
||||
HEAD_TYPE=0x78 ¨ä®à¬ æ¨ï ¤«ï
|
||||
¢®ááâ ®¢«¥¨ï
|
||||
HEAD_TYPE=0x79 í«¥ªâà® ï ¯®¤¯¨áì
|
||||
|
||||
<EFBFBD>«®ª ª®¬¬¥â à¨ï ¨á¯®«ì§ã¥âáï ⮫쪮 ¢ãâ-
|
||||
ਠ¤àã£¨å ¡«®ª®¢.
|
||||
|
||||
Ž¡à ¡®âª à娢 ¯à®¨á室¨â á«¥¤ãî騬 ®¡-
|
||||
à §®¬:
|
||||
1.—¨â ¥âáï ¨ ¯à®¢¥àï¥âáï ¡«®ª-¬ થà
|
||||
2.—¨â ¥âáï § £®«®¢®ª à娢
|
||||
3.—¨â îâáï ¨«¨ ¯à®¯ã᪠îâáï HEAD_SIZE-à -
|
||||
§¬¥à(MAIN_HEAD) ¡ ©â
|
||||
4.…᫨ ®¡ à㦥 ª®¥æ à娢 , â® ®¡à ¡®-
|
||||
⪠à娢 ¯à¥ªà é ¥âáï, ¨ ç¥ ç¨â îâáï 7
|
||||
¡ ©â ¢ ¯®«ïå:
|
||||
HEAD_CRC,HEAD_TYPE,HEAD_FLAGS,HEAD_SIZE.
|
||||
5.<04>஢¥àï¥âáï HEAD_TYPE.
|
||||
ɇǬ HEAD_TYPE==0x74
|
||||
¯à®ç¨â âì § £®«®¢®ª ä ©« (¯¥à¢ë¥ 7 ¡ ©â
|
||||
㦥 ¯à®ç¨â ë)
|
||||
¯à®ç¨â âì ¨«¨ ¯à®¯ãáâ¨âì HEAD_SIZE-à §-
|
||||
¬¥à(FILE_HEAD) ¡ ©â
|
||||
¯à®ç¨â âì ¨«¨ ¯à®¯ãáâ¨âì FILE_SIZE ¡ ©â
|
||||
¨ ç¥
|
||||
¯à®ç¨â âì ᮮ⢥âáâ¢ãî騩 ¡«®ª HEAD_TYPE:
|
||||
¯à®ç¨â âì HEAD_SIZE-7 ¡ ©â
|
||||
¥á«¨ (HEAD_FLAGS & 0x8000)
|
||||
¯à®ç¨â âì ADD_SIZE ¡ ©â
|
||||
6.<04>¥à¥©â¨ ª è £ã4.
|
||||
|
||||
==========================================
|
||||
”®à¬ âë ¡«®ª®¢
|
||||
==========================================
|
||||
|
||||
<EFBFBD>«®ª-¬ થà (MARK_HEAD)
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
HEAD_CRC ‚ᥣ¤ 0x6152
|
||||
2 ¡ ©â
|
||||
HEAD_TYPE ’¨¯ § £®«®¢ª : 0x72
|
||||
1 ¡ ©â
|
||||
HEAD_FLAGS ‚ᥣ¤ 0x1a21
|
||||
2 ¡ ©â
|
||||
HEAD_SIZE <04> §¬¥à ¡«®ª = 0x0007
|
||||
2 ¡ ©â
|
||||
<EFBFBD>«®ª-¬ àª¥à ¢ ¤¥©á⢨⥫ì®á⨠áç¨â ¥âáï
|
||||
䨪á¨à®¢ ®© ¯®á«¥¤®¢ ⥫ì®áâìî ¡ ©â:
|
||||
0x52 0x61 0x72 0x21 0x1a 0x07 0x00
|
||||
|
||||
(¯à¨¬.AlCo:ã¤ ç® ¯®¤®¡à CRC!!! ‚ë室¨â
|
||||
«î¡®¯ëâ ï ¯®á«¥¤®¢ ⥫ì®áâì:"Rar!",Esc,
|
||||
Bell¨Nul,㤮¡ ï ¨ ¤«ï ¢¨§ã «ì®£® ®¯®-
|
||||
§ ¢ ¨ï, ¨ ¤«ï ¯à®¢¥àª¨ ª « ¯¥à¥¤ ç¨
|
||||
¤ ëå ¢è¨¢®áâì.)
|
||||
(¯à¨¬. Shaitan: ᮡá⢥® à §à ¡®â-
|
||||
稪, …¢£¥¨© <20>®è «, ¤ ®£® ä®à¬ â ¯¥à¢®-
|
||||
ç «ì® ¨ ¤®¡¨¢ «áï ¢¨§ã «ì®£® ®¯à¥¤¥«¥-
|
||||
¨ à娢 . <20>ਬ¥à® â ª ï ¦¥ ¨áâ®à¨ï ¨ á
|
||||
¤à㣨¬¨ ä®à¬ â ¬¨ à娢®¢, ¨ ¢®®¡é¥, «¨-
|
||||
稥 ¥¯®¢â®à¨¬®© ¨ ¢¨§ã «ì®© ᨣ âãàë ¢
|
||||
à §®£® த ä ©« å 㦥 áâ «® ¯à ¢¨«®¬ å®-
|
||||
à®è¥£® â® )
|
||||
|
||||
‡ £®«®¢®ª à娢 (MAIN_HEAD)
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
HEAD_CRC CRC ¯®«¥© ®â HEAD_TYPE ¤®
|
||||
2 ¡ ©â RESERVED2
|
||||
HEAD_TYPE ’¨¯ § £®«®¢ª : 0x73
|
||||
1 ¡ ©â
|
||||
HEAD_FLAGS <20>¨â®¢ë¥ ä« £¨:
|
||||
2 ¡ ©â
|
||||
0x01 -€âਡãâ ⮬ (⮬
|
||||
¬®£®â®¬®£® à娢 )
|
||||
0x02 -…áâì àå¨¢ë© ª®¬¬¥-
|
||||
â ਩
|
||||
0x04 -€âਡãâ ¡«®ª¨à®¢ª¨
|
||||
à娢
|
||||
0x08 -€âਡãâ ¥¯à¥à뢮£®
|
||||
(solid) à娢
|
||||
0x10 -<04>¥ ¨á¯®«ì§ã¥âáï
|
||||
0x20 -…áâì ¨ä®à¬ æ¨ï ®¡
|
||||
¢â®à¥ ¨«¨ í«¥ªâà® ï
|
||||
¯®¤¯¨áì (AV)
|
||||
®áâ «ìë¥ ¡¨âë ¢ HEAD_FLAGS § १¥à¢¨-
|
||||
஢ ë ¤«ï ¢ãâ॥£® ¨á¯®«ì§®¢ ¨ï.
|
||||
|
||||
HEAD_SIZE ޡ鍩 à §¬¥à à娢®£®
|
||||
2 ¡ ©â § £®«®¢ª ,¢ª«îç ï à娢ë¥
|
||||
ª®¬¬¥â ਨ
|
||||
RESERVED1 ‡ १¥à¢¨à®¢ ®
|
||||
2 ¡ ©â
|
||||
RESERVED2 ‡ १¥à¢¨à®¢ ®
|
||||
4 ¡ ©â
|
||||
|
||||
<EFBFBD>«®ª ª®¬¬¥â à¨ï
|
||||
¯à¨áãâáâ¢ã¥â, ¥á«¨ (HEAD_FLAGS & 0x02)!=0
|
||||
|
||||
‡ £®«®¢®ª ä ©« (ä ©« ¢ à娢¥)
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
HEAD_CRC CRC ¯®«¥© ®â HEAD_TYPE ¤®
|
||||
2 ¡ ©â FILEATTR ¨ ¨¬¥¨ ä ©«
|
||||
HEAD_TYPE ’¨¯ § £®«®¢ª : 0x74
|
||||
1 ¡ ©â
|
||||
HEAD_FLAGS <04>¨â®¢ë¥ ä« £¨:
|
||||
2 ¡ ©â
|
||||
0x01 -ä ©« ¯à®¤®«¦ ¥âáï ¨§
|
||||
¯à¥¤ë¤ã饣® ⮬
|
||||
0x02 -ä ©« ¯à®¤®«¦ ¥âáï ¢
|
||||
á«¥¤ãî饬 ⮬¥
|
||||
0x04 -ä ©« § è¨ä஢ ¯ ஫¥¬
|
||||
0x08 -¥áâì ª®¬¬¥â ਩ ä ©«
|
||||
0x10 -¨á¯®«ì§ã¥âáï ¨ä®à¬ æ¨ï
|
||||
¨§ ¯à¥¤ë¤ãé¨å ä ©«®¢
|
||||
(ä« £ ¥¯à¥à뢮áâ¨)
|
||||
(¤«ï RAR 2.0 ¨ ¢ëè¥)
|
||||
|
||||
¡¨âë 7 6 5(¤«ï RAR 2.0 ¨ ¢ëè¥)
|
||||
0 0 0 -à §¬¥à á«®¢ àï 64 Š¡
|
||||
0 0 1 -à §¬¥à á«®¢ àï 128 Š¡
|
||||
0 1 0 -à §¬¥à á«®¢ àï 256 Š¡
|
||||
0 1 1 -à §¬¥à á«®¢ àï 512 Š¡
|
||||
1 0 0 -à §¬¥à á«®¢ àï 1024Š¡
|
||||
1 0 1 -§ १¥à¢¨à®¢ ®
|
||||
1 1 0 -§ १¥à¢¨à®¢ ®
|
||||
1 1 1 -file is directory
|
||||
|
||||
0x100 -¥áâì ¯®«ï
|
||||
HIGH_PACK_SIZE ¨
|
||||
HIGH_UNP_SIZE. <20>⨠¯®«ï
|
||||
¨á¯®«ì§ãîâáï ⮫쪮 ¤«ï
|
||||
à娢¨à®¢ ¨ï ®ç¥ì ¡®-
|
||||
«ìè¨å ä ©«®¢ (¡®«ìè¥ 2
|
||||
ƒ¡), ¤«ï ¬¥ìè¨å ä ©«®¢
|
||||
í⨠¯®«ï ®âáãâáâ¢ãîâ.
|
||||
0x8000 -íâ®â ¡¨â ¢á¥£¤ ãáâ ®-
|
||||
¢«¥,â ª ª ª ®¡é¨© à §-
|
||||
¬¥à ¡«®ª HEAD_SIZE +
|
||||
+ PACK_SIZE (¨ ¯«îá
|
||||
HIGH_PACK_SIZE, ¥á«¨
|
||||
ãáâ ®¢«¥ ¡¨â 0x100)
|
||||
|
||||
HEAD_SIZE <04>®«ë© à §¬¥à § £®«®¢ª
|
||||
2 ¡ ©â ä ©« , ¢ª«îç ï ¨¬ï ä ©« ¨
|
||||
ª®¬¬¥â ਨ
|
||||
PACK_SIZE <04> §¬¥à ä ©« ¢ à娢¥
|
||||
4 ¡ ©â (ᦠâë©)
|
||||
UNP_SIZE <04> §¬¥à ¨á室®£® ä ©«
|
||||
4 ¡ ©â (¥á¦ âë©)
|
||||
HOST_OS ˆá¯®«ì§®¢ ï ¯à¨ à娢¨à®-
|
||||
1 ¡ ©â ¢ ¨¨ ®¯¥à 樮 ï á¨á⥬ :
|
||||
0 -MS-DOS
|
||||
1 -OS/2
|
||||
2 -Win32
|
||||
3 -Unix
|
||||
4 -Mac OS
|
||||
5 -BeOS
|
||||
FILE_CRC CRC ä ©«
|
||||
4 ¡ ©â
|
||||
FTIME „ â ¨ ¢à¥¬ï ¢ áâ ¤ à⮬
|
||||
4 ¡ ©â ä®à¬ ⥠MS-DOS
|
||||
UNP_VER ‚¥àá¨ï RAR,¥®¡å®¤¨¬ ï ¤«ï
|
||||
1 ¡ ©â ¨§¢«¥ç¥¨ï ä ©«
|
||||
METHOD Œ¥â®¤ ᦠâ¨ï
|
||||
1 ¡ ©â
|
||||
NAME_SIZE <04> §¬¥à ¨¬¥¨ ä ©«
|
||||
2 ¡ ©â
|
||||
ATTR €âਡãâë ä ©«
|
||||
4 ¡ ©â
|
||||
HIGH_PACK_SIZE ‘â à訥 4 ¡ ©â 64-¡¨â®£®
|
||||
4 ¡ ©â à §¬¥à ᦠ⮣® ä ©« .
|
||||
<04>¥®¡ï§ ⥫쮥 § 票¥,
|
||||
ª®â®à®¥ ¯à¨áãâáâ¢ã¥â,
|
||||
⮫쪮 ¥á«¨ ¡¨â 0x100 ¢
|
||||
HEAD_FLAGS ãáâ ®¢«¥.
|
||||
HIGH_UNP_SIZE ‘â à訥 4 ¡ ©â 64-¡¨â®£®
|
||||
4 ¡ ©â à §¬¥à ¥á¦ ⮣® ä ©« .
|
||||
<04>¥®¡ï§ ⥫쮥 § 票¥,
|
||||
ª®â®à®¥ ¯à¨áãâáâ¢ã¥â,
|
||||
⮫쪮 ¥á«¨ ¡¨â 0x100 ¢
|
||||
HEAD_FLAGS ãáâ ®¢«¥.
|
||||
FILE_NAME ˆ¬ï ä ©« - áâப
|
||||
à §¬¥à®¬ NAME_SIZE ¡ ©â
|
||||
|
||||
<EFBFBD>«®ª ª®¬¬¥â à¨ï
|
||||
¯à¨áãâáâ¢ã¥â, ¥á«¨ (HEAD_FLAGS & 0x08)!=0
|
||||
|
||||
<EFBFBD>«®ª ª®¬¬¥â à¨ï
|
||||
~~~~~~~~~~~~~~~~
|
||||
|
||||
HEAD_CRC CRC ¯®«¥© ®â HEAD_TYPE ¤®
|
||||
2 ¡ ©â COMM_CRC
|
||||
HEAD_TYPE ’¨¯ § £®«®¢ª : 0x75
|
||||
1 ¡ ©â
|
||||
HEAD_FLAGS <04>¨â®¢ë¥ ä« £¨
|
||||
2 ¡ ©â
|
||||
HEAD_SIZE <04> §¬¥à § £®«®¢ª ª®¬¬¥â -
|
||||
2 ¡ ©â à¨ï + à §¬¥à ª®¬¬¥â à¨ï
|
||||
UNP_SIZE <04> §¬¥à ¥á¦ ⮣® ª®¬¬¥â -
|
||||
2 ¡ ©â à¨ï
|
||||
UNP_VER ‚¥àá¨ï RAR,¥®¡å®¤¨¬ ï ¤«ï
|
||||
1 ¡ ©â ¨§¢«¥ç¥¨ï ª®¬¬¥â à¨ï
|
||||
METHOD Œ¥â®¤ ᦠâ¨ï
|
||||
1 ¡ ©â
|
||||
COMM_CRC CRC ª®¬¬¥â à¨ï
|
||||
2 ¡ ©â
|
||||
COMMENT ’¥ªáâ ª®¬¬¥â à¨ï
|
||||
|
||||
<EFBFBD>«®ª ¤®¯®«¨â¥«ì®© ¨ä®à¬ 樨
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
HEAD_CRC CRC ¡«®ª
|
||||
2 ¡ ©â
|
||||
HEAD_TYPE ’¨¯ § £®«®¢ª : 0x76
|
||||
1 ¡ ©â
|
||||
HEAD_FLAGS <04>¨â®¢ë¥ ä« £¨
|
||||
2 ¡ ©â
|
||||
HEAD_SIZE ޡ鍩 à §¬¥à ¡«®ª
|
||||
2 ¡ ©â
|
||||
INFO <04>à®ç¨¥ ¤ ë¥
|
||||
|
||||
‘ã¡¡«®ª
|
||||
~~~~~~~
|
||||
|
||||
Ž¡ê¥ªâ ¢ à娢¥ (¡«®ª ¨«¨ § £®«®¢®ª) ¬®¦¥â
|
||||
ᮯ஢®¦¤ âìáï áã¡¡«®ª®¬. ‘ã¡¡«®ª § ¢¨á¨â
|
||||
®â ®á®¢®£® ®¡ê¥ªâ . ‘ã¡¡«®ª ¬®¦¥â ¡ëâì
|
||||
㤠«¥ ¨«¨ ¯¥à¥¬¥é¥ ¢ ®¢®© ¢¥àᨨ à娢
|
||||
¯à¨ ¥£® ®¡®¢«¥¨¨.
|
||||
|
||||
‘ã¡¡«®ª ᮤ¥à¦¨â á«¥¤ãî騥 ¯®«ï:
|
||||
|
||||
HEAD_CRC CRC ¡«®ª
|
||||
2 ¡ ©â
|
||||
HEAD_TYPE ’¨¯ § £®«®¢ª : 0x77
|
||||
1 ¡ ©â
|
||||
HEAD_FLAGS <04>¨â®¢ë¥ ä« £¨
|
||||
2 ¡ ©â (HEAD_FLAGS & 0x8000)==1,
|
||||
â ª ª ª ¯®«ë© à §¬¥à
|
||||
¡«®ª á®áâ ¢«ï¥â
|
||||
HEAD_SIZE + DATA_SIZE
|
||||
HEAD_SIZE ޡ鍩 à §¬¥à ¡«®ª
|
||||
2 ¡ ©â
|
||||
DATA_SIZE ޡ鍩 à §¬¥à ¤ ëå
|
||||
4 ¡ ©â
|
||||
SUB_TYPE ’¨¯ áã¡¡«®ª
|
||||
2 ¡ ©â
|
||||
RESERVED „®«¦® ¡ëâì 0
|
||||
1 ¡ ©â
|
||||
„à㣨¥ ¯®«ï „à㣨¥ ¯®«ï ¢ § ¢¨á¨¬®áâ¨
|
||||
®â ⨯ áã¡¡«®ª
|
||||
|
||||
‘ã¡¡«®ª à áè¨à¥ëå âਡã⮢ OS/2
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
HEAD_CRC CRC ¡«®ª
|
||||
2 ¡ ©â
|
||||
HEAD_TYPE ’¨¯ § £®«®¢ª : 0x77
|
||||
1 ¡ ©â
|
||||
HEAD_FLAGS <04>¨â®¢ë¥ ä« £¨
|
||||
2 ¡ ©â (HEAD_FLAGS & 0x8000)==1,
|
||||
â ª ª ª ¯®«ë©
|
||||
à §¬¥à ¡«®ª á®áâ ¢«ï¥â
|
||||
HEAD_SIZE + DATA_SIZE
|
||||
HEAD_SIZE ޡ鍩 à §¬¥à ¡«®ª
|
||||
2 ¡ ©â
|
||||
DATA_SIZE ޡ鍩 à §¬¥à ¤ ëå
|
||||
4 ¡ ©â (ᦠâë© à §¬¥à à áè¨à¥ëå
|
||||
âਡã⮢)
|
||||
SUB_TYPE 0x100
|
||||
2 ¡ ©â
|
||||
RESERVED „®«¦® ¡ëâì 0
|
||||
1 ¡ ©â
|
||||
UNP_SIZE <04> §¬¥à ¥á¦ âëå
|
||||
4 ¡ ©â à áè¨à¥ëå âਡã⮢
|
||||
UNP_VER ‚¥àá¨ï RAR,¥®¡å®¤¨¬ ï ¤«ï
|
||||
1 ¡ ©â ¨§¢«¥ç¥¨ï à áè¨à¥ëå
|
||||
âਡã⮢
|
||||
METHOD Œ¥â®¤ ᦠâ¨ï
|
||||
1 ¡ ©â
|
||||
EA_CRC CRC à áè¨à¥ëå âਡã⮢
|
||||
4 ¡ ©â
|
||||
|
||||
==========================================
|
||||
<20>ਬ¥ç ¨ï
|
||||
==========================================
|
||||
|
||||
1.„«ï ®¡à ¡®âª¨ SFX- à娢 㦮 ¯à®¯ãá-
|
||||
â¨âì ¬®¤ã«ì SFX, ¤«ï 祣® ¢ à娢¥ ®áãé¥-
|
||||
á⢫ï¥âáï ¯®¨áª ¡«®ª -¬ થà .‚ á ¬®¬ SFX
|
||||
¬®¤ã«¥ ®âáãâáâ¢ã¥â ¯®á«¥¤®¢ ⥫ì®áâì ¡ -
|
||||
©â®¢ ¡«®ª -¬ થà
|
||||
(0x52 0x61 0x72 0x21 0x1a 0x07 0x00).
|
||||
2.CRC ¢ëç¨á«ï¥âáï á ¯®¬®éìî áâ ¤ à⮣®
|
||||
¯®«¨®¬ 0xEDB88320. ‚ á«ãç ¥,¥á«¨ à §¬¥à
|
||||
CRC ¬¥ìè¥ 4 ¡ ©â, â® ¨á¯®«ì§ãîâáï ⮫쪮
|
||||
¬« ¤è¨¥ ¡ ©âë.
|
||||
3.Š®¤¨à®¢ ¨¥ ¬¥â®¤ ᦠâ¨ï:
|
||||
0x30 -á®åà ¥¨¥ (¡¥§ ᦠâ¨ï)
|
||||
0x31 -᪮à®á⮥ ᦠ⨥
|
||||
0x32 -¡ëáâ஥ ᦠ⨥
|
||||
0x33 -®à¬ «ì®¥ ᦠ⨥
|
||||
0x34 -å®à®è¥¥ ᦠ⨥
|
||||
0x35 -¬ ªá¨¬ «ì®¥ ᦠ⨥
|
||||
4.<04>®¬¥à ¢¥àᨨ RAR,¥®¡å®¤¨¬®© ¤«ï ¨§¢«¥-
|
||||
票ï, ª®¤¨àã¥âáï ª ª 10 * áâ à訩 ®¬¥à
|
||||
¢¥àᨨ + ¬« ¤è¨© ®¬¥à ¢¥àᨨ.
|
||||
----------end of techinfo.txt-----------
|
||||
|
||||
„ «ìè¥ ¯®è« ®âᥡï⨠:
|
||||
|
||||
‚ãâ२© ä®à¬ â RAR.
|
||||
|
||||
ˆá¯®«ì§ã¥âáï ᦠ⨥ ⨯ LZ, § ª«îç î饥áï
|
||||
¢ ª®¯¨à®¢ ¨¨ ¥ª®â®àëå ªã᪮¢ ¨§ 㦥 à á-
|
||||
¯ ª®¢ ®© ç áâ¨ ä ©« ¯®¤ ªãàá®à. <20>¨¦¥
|
||||
㯮âॡ«ï¥âáï â¥à¬¨®«®£¨ï:
|
||||
"¤«¨ áá뫪¨"(puts)- ¤«¨ ª®¯¨à㥬®£®
|
||||
ªã᪠;
|
||||
"ᬥ饨¥"(disp)- ᬥ饨¥ ®â ªãàá®à ¤®
|
||||
ç « ª®¯¨à㥬®£® ªã᪠.
|
||||
|
||||
„«ï 㬥ìè¥¨ï ¨§¡ëâ®ç®á⨠LZ ª®¤¨à®¢ ¨ï
|
||||
¨á¯®«ì§ãîâáï ¤¥à¥¢ìï • ää¬ £«ã¡¨®© ¤®
|
||||
15 ¡¨â,¢ ª®«¨ç¥á⢥ 4 èâ㪨. <20>⨠¤¥à¥¢ìï
|
||||
®áïâ §¢ ¨ï:BD, LD, DD ¨ RD.<08>¥à¢®¥
|
||||
¯à¨¬¥ï¥âáï ¤«ï à ᯠª®¢ª¨ ®áâ «ìëå âàñå.
|
||||
BDᮤ¥à¦¨â19¢®§¬®¦ëå ᨬ¢®«®¢;
|
||||
LDᮤ¥à¦¨â298¢®§¬®¦ëå ᨬ¢®«®¢;
|
||||
DDᮤ¥à¦¨â48¢®§¬®¦ëå ᨬ¢®«®¢;
|
||||
RDᮤ¥à¦¨â28¢®§¬®¦ëå ᨬ¢®«®¢.
|
||||
|
||||
<EFBFBD>¨¦¥ ¨á¯®«ì§ã¥âáï â¥à¬¨:
|
||||
"ïàãá"(Row)- ᮢ®ªã¯®áâì ᨬ¢®«®¢ ¢ ¤¥-
|
||||
ॢ¥, ¨¬¥îé¨å ®¤¨ ª®¢ãî ¡¨â®¢ãî ¤«¨ã.
|
||||
|
||||
‹î¡®© 㯠ª®¢ ë© ¡«®ª,¥á«¨ ® ¥ ï¥âáï
|
||||
¢â®àë¬ ¨ ¤ «¥¥ ¢ solid à娢¥, ç¨ ¥âáï
|
||||
á ¡«®ª ¯®¤ §¢ ¨¥¬"㯠ª®¢ ë¥ ¤¥à¥-
|
||||
¢ìï".
|
||||
|
||||
“¯ ª®¢ ë¥ ¤¥à¥¢ìï:
|
||||
|
||||
1 ¡¨â-"multimedia block"flag (0,¥á«¨
|
||||
¥ multimedia: ¨¦¥ à áᬠâਢ ¥âáï ⮫쪮
|
||||
â ª®© ¢ ਠâ)
|
||||
1 ¡¨â- ®ç¨áâ¨âì áâ àë© ¬ áᨢ ¤«¨ ã«ï¬¨
|
||||
(1- ¥ ¤®)
|
||||
19x4 ¡¨â- ¤¥à¥¢®BD.“ª § ë ¤«¨ë ¢ ¡¨-
|
||||
â å ¤«ï ¢á¥å19ᨬ¢®«®¢ (ᨬ¢®«ë à ᯨá -
|
||||
ë ¨¦¥). €«£®à¨â¬ £¥¥à 樨 ¤¥à¥¢ ,¨á室ï
|
||||
¨§ ¨ä®à¬ 樨 ® ¤«¨ å, ¤®¢®«ì® å¨âàë©, ¨
|
||||
§¤¥áì ï ¥£® ¯à¨¢®¤¨âì ¥ ¡ã¤ã. ‘ª ¦ã ⮫ì-
|
||||
ª®, çâ® ¡®«¥¥ ª®à®âª¨¥ ᨬ¢®«ë à ᯮ« £ î-
|
||||
âáï ¢ ¤¥à¥¢¥ «¥¢¥¥ (â.¥. ç¨ îâáï ᪮॥
|
||||
á ã«ï, 祬 á ¥¤¨¨æë), ¥¦¥«¨ ¡®«¥¥ ¤«¨-
|
||||
ë¥.
|
||||
|
||||
<EFBFBD>®á«¥ ⮣®, ª ª ¢ë襨§«®¦¥ ï ¨ä®à¬ æ¨ï
|
||||
¯à®ç¨â , ç¨ ¥âáï à ¡®â á ¡®«ì让 â -
|
||||
¡«¨æ¥© ¤«¨ ¯®¤ §¢ ¨¥¬RT_Table,ª®â®-
|
||||
à ï ¨¬¥¥â à §¬¥à374=298+48+28 ¡ ©â.‚ ¥©
|
||||
¯®á«¥¤®¢ â¥«ì® á®¤¥à¦ âáï ¤«¨ë(0..15)
|
||||
¢á¥å ᨬ¢®«®¢ ¤¥à¥¢ì¥¢LD, DD¨RD.
|
||||
|
||||
ˆâ ª, ãáâ ¢«¨¢ ¥¬ 㪠§ ⥫ìi ¯¥à¢ë©
|
||||
¡ ©â â ¡«¨æë RT_Table¨ ç¨â ¥¬ ᨬ¢®«ë ¨§
|
||||
ä ©« , ¯®«ì§ãïáì ¤¥à¥¢®¬BD:
|
||||
|
||||
0..15- ¯à¨¡ ¢¨âì íâ® ç¨á«® ª ⥪ã饩 ïç¥-
|
||||
©ª¥ â ¡«¨æëRT_Table¨ ¯¥à¥©â¨ ª á«¥¤ãî饩
|
||||
ï祩ª¥.
|
||||
tab[i]=(tab[i]+num)&15;i++
|
||||
|
||||
16- ᪮¯¨à®¢ âì ¯à¥¤ë¤ãéãî ï祩ªãN+3à -
|
||||
§ , £¤¥N (2 ¡¨â )åà ¨âáï ¢ ä ©«¥ áà §ã
|
||||
¯®á«¥ ᨬ¢®« 16.
|
||||
tab[i]=tab[i-1];i++ ¨ â.¤.
|
||||
|
||||
17- ¯®¬¥áâ¨âì ¢Z+3ï祥ª, ç¨ ï á ⥪ã-
|
||||
饩,ç¨á«®0.ƒ¤¥Z (3 ¡¨â )åà ¨âáï áà §ã
|
||||
¯®á«¥ ᨬ¢®« 17.
|
||||
tab[i]=0;i++ ¨ â.¤.
|
||||
|
||||
18- ¯®¬¥áâ¨âì ¢Z+11ï祥ª, ç¨ ï á â¥-
|
||||
ªã饩,ç¨á«®0.ƒ¤¥Z (7 ¡¨â)åà ¨âáï áà -
|
||||
§ã ¯®á«¥ ᨬ¢®« 18.
|
||||
tab[i]=0;i++ ¨ â.¤.
|
||||
|
||||
‡ ¯®«¥¨¥ RT_Table § ª 稢 ¥âáï, ª®£¤
|
||||
®¡à ¡®â ë ¢á¥ ¥ñ374ï祩ª¨.
|
||||
|
||||
’ ª¨¬ ®¡à §®¬, ¬ë ¯®«ã稫¨ ¨§ ä ©« áâàãª-
|
||||
âãàë ¢á¥å ¤¥à¥¢ì¥¢. <20>¥à¥¢®¤¨¬ ¤¥à¥¢ìï ¢
|
||||
㤮¡ë© ¤«ï á ä®à¬ â(¢ ¬®ñ¬ à ᯠª®¢é¨-
|
||||
ª¥ íâ® â ¡«¨æ ç¨á¥«"LowRowCode",â ¡«¨æ
|
||||
ç¨á¥«"RowAdr-(LowRowCode>>Row)"¨ â ¡«¨æ
|
||||
"®¬¥à «¨áâ ¤¥à¥¢ ->ᨬ¢®«",£¤¥RowAdr-
|
||||
¤à¥á ¯¥à¢®£® ᨬ¢®« ¢ ïàãá¥, LowRowCode
|
||||
- ª®¤,ᮮ⢥âáâ¢ãî騩 á ¬®¬ã «¥¢®¬ã í«¥¬¥-
|
||||
âã ïàãá )¨ ¯¥à¥å®¤¨¬ ª áç¨âë¢ ¨î 㯠ª®-
|
||||
¢ ëå ¤ ëå.
|
||||
|
||||
“¯ ª®¢ ë¥ ¤ ë¥:
|
||||
|
||||
Š ª ¢ëè¥ ã¦¥ 㯮¬¨ «®áì, ¤® á ¬¨å ¤ ëå
|
||||
¢ ä ©«¥ «¥¦ â ¤¥à¥¢ìï. <20>® ⮬㠦¥ ãá«®¢¨î,
|
||||
çâ® âॡã¥âáï ¤«ï «¨ç¨ï ¤¥à¥¢ì¥¢ ¢ ç -
|
||||
«¥ ä ©« (â® ¥áâì,"¡«®ª ¥ ï¥âáï ¢â®àë¬
|
||||
¨«¨ ¤ «¥¥ ä ©«®¬ solid à娢 "),á«¥¤ã¥â
|
||||
(¨«¨ ¥ á«¥¤ã¥â ¨ ç¥) ®¡ã«¨âì â ¡«¨æã
|
||||
¯à¥¤ë¤ãé¨å ᬥ饨©. „¥«® ¢ ⮬,çâ® à ᯠ-
|
||||
ª®¢é¨ª ¢á¥£¤ åà ¨â4¯à¥¤ë¤ãé¨å ॠ«¨§®-
|
||||
¢ ëå ᬥ饨ï. <20>⨠ᬥ饨ï -20-¡¨âë¥
|
||||
ç¨á« (¬ ªá¨¬ «ì ï áá뫪 § ¤ =1 Œ¡).
|
||||
‚¯à®ç¥¬, ï ¥ 㢥à¥, çâ® ®¡ã«ïâì ¨å â ª
|
||||
㦠¥®¡å®¤¨¬®, ® ªâ® § ¥â, ç⮠㬥 ã
|
||||
㯠ª®¢é¨ª ?
|
||||
|
||||
—¨â ¥¬ ¨§ ä ©« ⮪¥, ¯®«ì§ãïáì ¤¥à¥¢®¬
|
||||
LD:
|
||||
|
||||
0..255- ¯à®á⮠ᨬ¢®«. <20>®¬¥é ¥¬ ¥£® ¢ ¢ë-
|
||||
室®© ¯®â®ª.
|
||||
|
||||
256- ¯®¢â®à ¯à¥¤ë¤ã饣® á¬¥é¥¨ï ¨ ¯à¥¤ë-
|
||||
¤ãéñ© ¤«¨ë áá뫪¨. <20>¥ «¨§ã¥¬ íâã áá뫪ã.
|
||||
|
||||
257..260- ¡¥àñ¬ ®¤® ¨§ ¯à¥¤ë¤ãé¨å 4 ᬥ-
|
||||
饨© (257=á ¬®¥ ®¢®¥,258=¯®§ ¯à®è«®¥
|
||||
¨ â.¤.). —¨â ¥¬ ⮪¥, ¯®«ì§ãïáì ¤¥à¥¢®¬
|
||||
RD.<04>â®â ⮪¥ 㪠§ë¢ ¥â ®¬¥à áâப¨ ¢
|
||||
â ¡«¨æ¥midBIT.ˆ§ ¥ñ ¡¥àñâáï ¤«¨ ááë«-
|
||||
ª¨ ¨ ª®«¨ç¥á⢮ ¡¨â®¢,ª®â®àë¥ ã¦® ᥩç á
|
||||
¤®¯®«¨â¥«ì® ¤®ç¨â âì ¨§ ä ©« ,çâ®¡ë ¯à¨-
|
||||
¡ ¢¨âì ¨å ª í⮩ ¤«¨¥ áá뫪¨.
|
||||
<EFBFBD>®â®¬ ¤«¨ ¥éñ ¥¬®£® ª®à४â¨àã¥âáï:
|
||||
¥á«¨disp>=257,¨ªà¥¬¥â¨à㥬 ¤«¨ã;
|
||||
¥á«¨disp>=#2000,ᮢ ¨ªà¥¬¥â¨à㥬
|
||||
¤«¨ã;
|
||||
¥á«¨disp>=#40000,¥éñ à § ¨ªà¥¬¥â¨à㥬
|
||||
¤«¨ã.
|
||||
“ääää. <20>¥ «¨§ã¥¬ áá뫪ã.
|
||||
|
||||
261..268- ¥á«¨ ¢ëç¥áâì261,¯®«ã稬 ®¬¥à
|
||||
áâப¨ ¢ â ¡«¨æ¥ litBIT.ˆ§ ¥ñ ¡¥àñâáï
|
||||
ᬥ饨¥ ¨ ç¨á«® ¡¨â®¢, ª®â®àë¥ ã¦® ¤®-
|
||||
ç¨â âì ¨§ ä ©« ¤«ï ª®à४樨 í⮣® ᬥé¥-
|
||||
¨ï. „«¨ áá뫪¨ áç¨â ¥âáï à ¢®©2.<04>¥ -
|
||||
«¨§ã¥¬ áá뫪ã.
|
||||
|
||||
269- áç¨âë¢ ¥¬ ®¢ë¥ ¤¥à¥¢ìï (ä®à¬ â á¬.
|
||||
¢ëè¥). <20>¨ç¥£® ¢ á ¬®¬ à ᯠª®¢é¨ª¥ ¥ ¨¨-
|
||||
æ¨ «¨§¨àã¥âáï! Œ¥ïîâáï ⮫쪮 ¤¥à¥¢ìï!
|
||||
|
||||
270..297- ¢ëç¨â ¥¬270,¯®«ãç ¥¬ ü áâப¨
|
||||
¢midBIT,¤®áâ ñ¬ ®ââ㤠¤«¨ã áá뫪¨ ¨
|
||||
ç¨á«® ¡¨â ¥ñ ª®à४樨.
|
||||
ˆªà¥¬¥â¨à㥬 ¤«¨ã.
|
||||
—¨â ¥¬ ⮪¥, ¯®«ì§ãïáì ¤¥à¥¢®¬DD.Ž § -
|
||||
¤ ñâ ®¬¥à áâப¨ ¢ â ¡«¨æ¥bigBIT- ¡¥àñ¬
|
||||
®ââ㤠ᬥ饨¥ ¨ ç¨á«® ¡¨â®¢ ¤«ï ¥£® ª®à-
|
||||
४樨.
|
||||
|
||||
…᫨disp>=#2000,¨ªà¥¬¥â¨à㥬 ¤«¨ã;
|
||||
¥á«¨disp>=#40000,¥éñ à § ¨ªà¥¬¥â¨à㥬
|
||||
¤«¨ã.
|
||||
<EFBFBD>¥ «¨§ã¥¬ áá뫪ã.
|
||||
|
||||
<EFBFBD> ᯠª®¢ª § ª 稢 ¥âáï, ª®£¤ ¨§¢«¥ç¥®
|
||||
á⮫쪮 ¡ ©â à ᯠª®¢ ®£® ä ©« , ᪮«ìª®
|
||||
㪠§ ® ¢ § £®«®¢ª¥ í⮣® ä ©« .
|
||||
|
||||
‚áñ! :) ‚ á«¥¤ãî騩 à § ï à á᪠¦ã ¢ ¬ ¯à®
|
||||
¬ã«ì⨬¥¤¨©ãî ª®¬¯à¥áá¨î ¨ è¨ä஢ ¨¥,
|
||||
¥á«¨, ª®¥ç®, á ¬ à §¡¥àãáì :)
|
||||
ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
|
||||
54
Docs/FORMATS/info_guide/SPG0_0.txt
Normal file
54
Docs/FORMATS/info_guide/SPG0_0.txt
Normal file
@ -0,0 +1,54 @@
|
||||
.SPG
|
||||
„ ë© ä®à¬ â á«ã¦¨â ¤«ï åà ¥¨ï § ¯ã᪠¥¬ëå
|
||||
¯à®£à ¬¬ «î¡ëå ®á¨â¥«ïå (CD/DVD/HDD). ‘ ¬¨
|
||||
ä ©«ë ¬®£ãâ ¡ëâì § ¯ãé¥ë ¨§ WDC ¢ «¥¢®© ¯ ¥«¨
|
||||
¯à®áâë¬ ¦ ⨥¬ ENTER.
|
||||
(¢ WDCv1.06 ä®à¬ â ¯®¤¤¥à¦ ¥ ¯®«®áâìî:
|
||||
1. ®¡à ¡ âë¢ ¥âáï ⮫쪮 ¯¥à¢ë© ¡«®ª á ¤ 묨
|
||||
2. ¥ ãç¨âë¢ ¥âáï ¯®àâ X
|
||||
3. CRC ¥ ¯à®¢¥àï¥âáï)
|
||||
|
||||
"Spectrum Prog" file format v0.0:
|
||||
|
||||
ᬥ鳤«¨.
|
||||
---+-----------------------------------------------
|
||||
+0³32 - १¥à¢
|
||||
+32³12 - ¨¤¥â¨ä¨ª â®à ä®à¬ â ("SpectrumProg")
|
||||
+44³1 - ¢¥àá¨ï ä®à¬ â
|
||||
+45³2 - CRC ¢á¥£® § £®«®¢ª (512 ¡ ©â)
|
||||
+47³2 - ®¡à â ï CRC (áâ à訩 ¡ ©â ¢¯¥à¥¤¨)
|
||||
+49³1 - ***
|
||||
+50³1 - ***
|
||||
+51³13 - १¥à¢
|
||||
---+-----------------------------------------------
|
||||
+64³2 - ¤à¥á § ¯ãáª
|
||||
+66³1 - § 票¥ ¯®àâ #7FFD ¯¥à¥¤ § ¯ã᪮¬
|
||||
+67³2 - ¤à¥á ¯®àâ X, ¥á«¨ = 0 â® ¢ ¯®àâ X § -¥
|
||||
³ ¥ § ®á¨âáï
|
||||
+69³1 - § 票¥ ª®â. ¡ã¤¥â § ¥á¥® ¢ ¯®àâ X ¯-¤
|
||||
³ § ¯ã᪮¬ (¥á«¨ X<>0)
|
||||
+70³3 - ¤ â (¤¥ì,¬¥áïæ,£®¤)
|
||||
+73³1 - ¢¥àá¨ï ᡮન
|
||||
+74³2 - ¤à¥á ¢¥àè¨ë á⥪ (¥á«¨=0, â® ¥ ¬¥ï¥¬)
|
||||
³
|
||||
+76³2 - १¥à¢
|
||||
³
|
||||
+78³1 - ¤«¨ ¡«®ª áâ஥ª
|
||||
³ (¥á«¨=0, â® ¨£®à¨à㥬 â ª®¢ë¥,
|
||||
³ ¨ ç¥ ª¨¤ ¥¬ n<256 ¡ ©â ¢ ¤à¥á #5B00)
|
||||
----+-<06>«®ª_§ £à㧪¨*8-----------------------------
|
||||
+128³2 - ¤à¥á § £à㧪¨
|
||||
³ (¥á«¨ <#A000, â® ¨¤ñâ § ¢¥à襨¥ ®¡à ¡®âª¨
|
||||
³ ¡«®ª®¢ § £à㧪¨)
|
||||
³1 - ¤«¨ ¡«®ª ¢ 2048 ¡ ©âëå ᥪâ®à å
|
||||
³1 - ®¬¥à áâà ¨çª¨ ª®â. ¤® ¢ª«îç¨âì
|
||||
³4 - १¥à¢
|
||||
----+----------------------------------------------
|
||||
+192³256- ®¡« áâì áâ஥ª ¯à®£à ¬¬ë
|
||||
----+----------------------------------------------
|
||||
+448³64 - १¥à¢
|
||||
----+----------------------------------------------
|
||||
‚® ¢à¥¬ï § ¯ã᪠¯à®£à ¬¬ë ¢ª«îç¥ 1 ०¨¬ ¯à¥àë¢ -
|
||||
¨© (I=63). <20>® ¤à¥áã #6000 «¥¦¨â ª¥à «ì ¢ë§®¢®¢.
|
||||
---------------------------------------------------
|
||||
Budder/23.12.2006
|
||||
98
Docs/FORMATS/info_guide/XDELPZ.A80
Normal file
98
Docs/FORMATS/info_guide/XDELPZ.A80
Normal file
@ -0,0 +1,98 @@
|
||||
;„¥ª®¬¯à¥áá®à ¤«ï v 3.01
|
||||
;HL-®âªã¤ DE-ªã¤
|
||||
;DLPCB DEFM "v301"
|
||||
DELPZ PUSH DE
|
||||
LD DE,DLPCB
|
||||
LD BC,4
|
||||
LDIR
|
||||
POP DE
|
||||
xpD0 LD A,(HL)
|
||||
SRL A
|
||||
JR NC,xpD1
|
||||
CALL xpSUB ;short copy
|
||||
RRA
|
||||
RL B
|
||||
AND 7
|
||||
xpM2 JR NZ,xpNex
|
||||
LD A,(HL)
|
||||
INC HL
|
||||
xpNex LD C,(HL)
|
||||
INC HL
|
||||
PUSH HL
|
||||
LD H,D
|
||||
LD L,E
|
||||
SBC HL,BC
|
||||
LD B,0
|
||||
LD C,A
|
||||
xpM1 INC BC
|
||||
INC BC
|
||||
LDIR
|
||||
POP HL
|
||||
EX AF,AF
|
||||
JR Z,xpD0
|
||||
JR NZ,xpDRR
|
||||
xpD1 RRA
|
||||
JR C,xpZ1
|
||||
RRA
|
||||
JR C,xpZ2
|
||||
JR Z,xpDEND
|
||||
INC HL
|
||||
xpDRR LD B,A ;nocompr
|
||||
xpDL0 LD A,(HL)
|
||||
INC HL
|
||||
XOR (HL)
|
||||
LD (DE),A
|
||||
INC DE
|
||||
DJNZ xpDL0
|
||||
JR xpD0
|
||||
xpZ2 SRL A ;repeat
|
||||
JR C,xpZ2L
|
||||
LD C,A
|
||||
XOR A
|
||||
EX AF,AF
|
||||
xpZ22 INC HL
|
||||
PUSH HL
|
||||
LD H,D
|
||||
LD L,E
|
||||
DEC HL
|
||||
JR xpM1
|
||||
xpZ2L CALL xpSUB
|
||||
RRA
|
||||
RL B
|
||||
LD C,(HL)
|
||||
JR xpZ22
|
||||
xpZ1 SRL A
|
||||
JR NC,xpTWO
|
||||
LD C,A ;long copy
|
||||
INC HL
|
||||
LD A,(HL)
|
||||
AND #1F
|
||||
LD B,A
|
||||
LD A,C
|
||||
CALL xpSUB
|
||||
OR A
|
||||
JR xpM2
|
||||
xpTWO INC A ;¤¢ ¡ ©â
|
||||
LD C,A
|
||||
INC HL
|
||||
PUSH HL
|
||||
LD H,D
|
||||
LD L,E
|
||||
SBC HL,BC
|
||||
LD C,2
|
||||
LDIR
|
||||
POP HL
|
||||
JR xpD0
|
||||
xpDEND LD HL,DLPCB
|
||||
LD C,4
|
||||
LDIR
|
||||
RET
|
||||
xpSUB EX AF,AF
|
||||
LD A,(HL)
|
||||
RLCA
|
||||
RLCA
|
||||
RLCA
|
||||
AND 7
|
||||
EX AF,AF
|
||||
INC HL
|
||||
RET
|
||||
283
Docs/FORMATS/info_guide/alasmtxt.txt
Normal file
283
Docs/FORMATS/info_guide/alasmtxt.txt
Normal file
@ -0,0 +1,283 @@
|
||||
Ä Echo35 (2:5029/35.26) ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ZX.SPECTRUM Ä
|
||||
Msg : 100 of 107
|
||||
From : Alexey Komarov 2:5020/400 23 Apr 02 14:29:48
|
||||
To : All 26 Apr 02 01:04:11
|
||||
Subj : Fwd: SOURCE: Š®¢¥à⨫ª 审¥âë á ¯à®£à ¬¬®© ALASM ¢ ⥪áâ
|
||||
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
||||
From: "Alexey Komarov" <komarov@dubna.ru>
|
||||
|
||||
==========================================================================
|
||||
* Forwarded by Alexey Komarov <komarov@dubna.ru>
|
||||
* Newsgroup: relcom.comp.speccy
|
||||
* From: "Alexander Shabarshin" <shaos@mail.ru>
|
||||
* Date: Fri, 12 Apr 2002 16:43:34 +0600
|
||||
* Subj: SOURCE: Š®¢¥à⨫ª 审¥âë á ¯à®£à ¬¬®© ALASM ¢ ⥪áâ
|
||||
==========================================================================
|
||||
|
||||
// H2ASM.CPP - Alexander Shabarshin (shaos@mail.ru) 12.04.2002
|
||||
// Convert hobeta with ALASM source to text source
|
||||
// Š®¢¥à⨫ª 审¥âë á ¯à®£à ¬¬®© ALASM ¢ ®¡ëçë© â¥ªáâ
|
||||
// …áâì ¥¤®¤¥«ª¨ - ªâ® § ¬¥â¨«, á®®¡é ©â¥!
|
||||
// ¢à®¤¥ ã¦ ï ¢¥éì - ¬®¦¥â ª®¬ã ¨ ¯à¨£®¤¨âáï
|
||||
// ¥á«¨ ªâ® ¬®¦¥â - ª¨ì⥠¢ fido7.zx.spectrum
|
||||
// â® ¬¥ â㤠¥¤®¡à âìáï :)
|
||||
// http://www.shaos.ru/nedopc
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
char* decode(int c,int col)
|
||||
{
|
||||
static char str[256];
|
||||
char *po = str;
|
||||
*po = 0;
|
||||
switch(c)
|
||||
{
|
||||
case 0x80: strcpy(str," INCLUDE"); break;
|
||||
case 0x81: strcpy(str," INCBIN"); break;
|
||||
case 0x82: strcpy(str," MACRO"); break;
|
||||
// case 0x83:
|
||||
case 0x84: strcpy(str," RLCA"); break;
|
||||
case 0x85: strcpy(str," RRCA"); break;
|
||||
case 0x86: strcpy(str," HALT"); break;
|
||||
case 0x87: strcpy(str," CALL"); break;
|
||||
case 0x88: strcpy(str," PUSH"); break;
|
||||
// case 0x89:
|
||||
// case 0x8A:
|
||||
case 0x8B: strcpy(str," DJNZ"); break;
|
||||
// case 0x8C:
|
||||
// case 0x8D:
|
||||
case 0x8E: strcpy(str," LDIR"); break;
|
||||
case 0x8F: strcpy(str," CPIR"); break;
|
||||
// case 0x90:
|
||||
// case 0x91:
|
||||
case 0x92: strcpy(str," LDDR"); break;
|
||||
// case 0x93:
|
||||
// case 0x94:
|
||||
// case 0x95:
|
||||
// case 0x96:
|
||||
case 0x97: strcpy(str," DEFB"); break;
|
||||
case 0x98: strcpy(str," DEFW"); break;
|
||||
case 0x99: strcpy(str," DEFS"); break;
|
||||
case 0x9A: strcpy(str," DISP"); break;
|
||||
case 0x9B: strcpy(str," ENDM"); break;
|
||||
case 0x9C: strcpy(str," EDUP"); break;
|
||||
// case 0x9D:
|
||||
case 0x9E: strcpy(str," MAIN"); break;
|
||||
// case 0x9F:
|
||||
case 0x9F: strcpy(str," (BC)"); break;
|
||||
case 0xA0: strcpy(str," (DE)"); break;
|
||||
case 0xA1: strcpy(str," (HL)"); break;
|
||||
case 0xA2: strcpy(str," DB"); break;
|
||||
case 0xA3: strcpy(str," DW"); break;
|
||||
case 0xA4: strcpy(str," DS"); break;
|
||||
case 0xA5: strcpy(str," NOP"); break;
|
||||
case 0xA6: strcpy(str," INC"); break;
|
||||
case 0xA7: strcpy(str," DEC"); break;
|
||||
case 0xA8: strcpy(str," RLA"); break;
|
||||
case 0xA9: strcpy(str," RRA"); break;
|
||||
// case 0xAA:
|
||||
case 0xAB: strcpy(str," CPL"); break;
|
||||
case 0xAC: strcpy(str," SCF"); break;
|
||||
case 0xAD: strcpy(str," CCF"); break;
|
||||
case 0xAE: strcpy(str," ADD"); break;
|
||||
case 0xAF: strcpy(str," ADC"); break;
|
||||
case 0xB0: strcpy(str," SUB"); break;
|
||||
case 0xB1: strcpy(str," SBC"); break;
|
||||
case 0xB2: strcpy(str," AND"); break;
|
||||
case 0xB3: strcpy(str," XOR"); break;
|
||||
case 0xB4: strcpy(str," RET"); break;
|
||||
case 0xB5: strcpy(str," POP"); break;
|
||||
// case 0xB6:
|
||||
case 0xB7: strcpy(str," EXX"); break;
|
||||
case 0xB8: strcpy(str," RLC"); break;
|
||||
case 0xB9: strcpy(str," RRC"); break;
|
||||
case 0xBA: strcpy(str," SLA"); break;
|
||||
case 0xBB: strcpy(str," SRA"); break;
|
||||
case 0xBC: strcpy(str," SLI"); break;
|
||||
case 0xBD: strcpy(str," SRL"); break;
|
||||
case 0xBE: strcpy(str," BIT"); break;
|
||||
case 0xBF: strcpy(str," RES"); break;
|
||||
case 0xC0: strcpy(str," SET"); break;
|
||||
case 0xC1: strcpy(str," OUT"); break;
|
||||
case 0xC2: strcpy(str," NEG"); break;
|
||||
// case 0xC3:
|
||||
// case 0xC4:
|
||||
case 0xC5: strcpy(str," LDI"); break;
|
||||
// case 0xC6:
|
||||
// case 0xC7:
|
||||
// case 0xC8:
|
||||
// case 0xC9:
|
||||
// case 0xCA:
|
||||
case 0xCB: strcpy(str," ORG"); break;
|
||||
case 0xCC: strcpy(str," EQU"); break;
|
||||
case 0xCD: strcpy(str," ENT"); break;
|
||||
// case 0xCE:
|
||||
case 0xCF: strcpy(str," DUP"); break;
|
||||
case 0xD0: strcpy(str," (C)"); break;
|
||||
case 0xD1: strcpy(str," (IX"); break;
|
||||
case 0xD2: strcpy(str," (IY"); break;
|
||||
case 0xD3: strcpy(str," AF'"); break;
|
||||
case 0xD4: strcpy(str," LD"); break;
|
||||
case 0xD5: strcpy(str," JR"); break;
|
||||
case 0xD6: strcpy(str," JP"); break;
|
||||
case 0xD7: strcpy(str," OR"); break;
|
||||
case 0xD8: strcpy(str," CP"); break;
|
||||
case 0xD9: strcpy(str," EX"); break;
|
||||
case 0xDA: strcpy(str," DI"); break;
|
||||
case 0xDB: strcpy(str," EI"); break;
|
||||
case 0xDC: strcpy(str," IN"); break;
|
||||
case 0xDD: strcpy(str," RL"); break;
|
||||
case 0xDE: strcpy(str," RR"); break;
|
||||
// case 0xDF:
|
||||
case 0xE0: strcpy(str," BC"); break;
|
||||
case 0xE1: strcpy(str," DE"); break;
|
||||
case 0xE2: strcpy(str," HL"); break;
|
||||
case 0xE3: strcpy(str," AF"); break;
|
||||
case 0xE4: strcpy(str," IX"); break;
|
||||
case 0xE5: strcpy(str," IY"); break;
|
||||
case 0xE6: strcpy(str," SP"); break;
|
||||
case 0xE7: strcpy(str," NZ"); break;
|
||||
case 0xE8: strcpy(str," NC"); break;
|
||||
// case 0xE9:
|
||||
// case 0xEA:
|
||||
case 0xEB: strcpy(str," HX"); break;
|
||||
case 0xEC: strcpy(str," LX"); break;
|
||||
// case 0xED:
|
||||
// case 0xEE:
|
||||
case 0xEF: strcpy(str," B"); break;
|
||||
case 0xF0: strcpy(str," C"); break;
|
||||
case 0xF1: strcpy(str," D"); break;
|
||||
case 0xF2: strcpy(str," E"); break;
|
||||
case 0xF3: strcpy(str," H"); break;
|
||||
case 0xF4: strcpy(str," L"); break;
|
||||
case 0xF5: strcpy(str," A"); break;
|
||||
case 0xF6: strcpy(str," P"); break;
|
||||
case 0xF7: strcpy(str," M"); break;
|
||||
case 0xF8: strcpy(str," Z"); break;
|
||||
// case 0xF9:
|
||||
// case 0xFA:
|
||||
// case 0xFB:
|
||||
// case 0xFC:
|
||||
// case 0xFD:
|
||||
// case 0xFE:
|
||||
case 0xFF: strcpy(str," "); break;
|
||||
default: sprintf(str," |0x%2.2X|",c);
|
||||
printf("\n\nError %s\n",str);
|
||||
return NULL;
|
||||
}
|
||||
if(col>2) po++;
|
||||
return po;
|
||||
}
|
||||
|
||||
int main(int argc,char **argv)
|
||||
{
|
||||
int i,j,k,c;
|
||||
char hhead[17],name[12],ahead[64],str[256],*po=str;
|
||||
printf("\n\nH2ASM v1.0, Copyright (c) 2002, Alexander Shabarshin
|
||||
http://www.shaos.ru\n\n");
|
||||
if(argc<3)
|
||||
{
|
||||
printf("\n\nH2ASM file.$h file.asm\n\n");
|
||||
return 1;
|
||||
}
|
||||
FILE *fh = fopen(argv[1],"rb");
|
||||
if(fh==NULL) return 0;
|
||||
FILE *fa = fopen(argv[2],"wt");
|
||||
if(fa==NULL)
|
||||
{
|
||||
fclose(fh);
|
||||
return 0;
|
||||
}
|
||||
fread(hhead,17,1,fh);
|
||||
for(i=0;i<8;i++) name[i]=hhead[i];
|
||||
int ftyp=hhead[8];
|
||||
int fstart=(int)hhead[9]+((int)hhead[10]<<8);
|
||||
int flen=(int)hhead[11]+((int)hhead[12]<<8);
|
||||
int blk=hhead[14];
|
||||
int check=hhead[15]+(hhead[16]<<8);
|
||||
for(j=i=0; i<0x0F; ++i)
|
||||
{
|
||||
k = hhead[i]; k &= 0xFF;
|
||||
j += (k * 0x0101 + i);
|
||||
}
|
||||
j &= 0xFFFF;
|
||||
if(j!=check)
|
||||
{
|
||||
printf("Illegal checksum in header of hobeta\n");
|
||||
}
|
||||
fread(ahead,64,1,fh);
|
||||
flen-=64;
|
||||
printf("Name:%s\n",ahead);
|
||||
printf("\n");
|
||||
int comment,colon,old,quat;
|
||||
while(1)
|
||||
{
|
||||
comment = 0;
|
||||
colon = 0;
|
||||
quat = 0;
|
||||
k = fgetc(fh);
|
||||
flen--;
|
||||
j = 0;
|
||||
old = 0;
|
||||
for(i=1;i<k;i++)
|
||||
{
|
||||
c = fgetc(fh);
|
||||
flen--;
|
||||
if(c<128||comment||quat)
|
||||
{
|
||||
if(c<32)
|
||||
{
|
||||
while(--c>0) str[j++]=' ';
|
||||
}
|
||||
else {
|
||||
if(!comment && !quat && colon==1 && old>=128) str[j++]=' ';
|
||||
str[j++]=c;
|
||||
}
|
||||
if(c==';') comment=1;
|
||||
if(c=='"')
|
||||
{
|
||||
if(quat) quat=0;
|
||||
else quat=1;
|
||||
}
|
||||
}
|
||||
else {
|
||||
po = decode(c,++colon);
|
||||
if(po==NULL) break;
|
||||
str[j] = 0;
|
||||
if(colon<2)
|
||||
{
|
||||
strcat(str,"\t");
|
||||
j++;
|
||||
}
|
||||
strcat(str,po);
|
||||
j += strlen(po);
|
||||
}
|
||||
old = c;
|
||||
}
|
||||
if(po==NULL) break;
|
||||
str[j] = 0;
|
||||
printf("%s\n",str);
|
||||
fprintf(fa,"%s\n",str);
|
||||
if(flen<=0) break;
|
||||
}
|
||||
fclose(fh);
|
||||
fclose(fa);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
==========================================================================
|
||||
‘ 㢠¦¥¨¥¬, €«¥ªá¥©.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
--- ifmail v.2.15dev5
|
||||
* Origin: OOO Contact company (2:5020/400)
|
||||
|
||||
178
Docs/FORMATS/info_guide/ani.txt
Normal file
178
Docs/FORMATS/info_guide/ani.txt
Normal file
@ -0,0 +1,178 @@
|
||||
-----------------------------
|
||||
”®à¬ â ani-ä ©«®¢ ᯥª¥
|
||||
-------------- - - -
|
||||
|
||||
+00 "GIF animation" : ᨣ âãà
|
||||
+13 =0
|
||||
+14 à §¬¥à ¯® X ¢ § ª®¬¥áâ å (1-32)
|
||||
+15 à §¬¥à ¯® Y ¢ ¯¨ªá¥«ïå (1-192)
|
||||
+16... ¤ ë¥ ¨¬ 樨 (ª ¤àë)
|
||||
|
||||
¨¬ æ¨ï ¯à¥¤áâ ¢«ï¥â ᮡ®© ¯®á«¥¤®¢ ⥫ì®áâì ª ¤à®¢
|
||||
¤«ï ª ¦¤®£® ª ¤à ¢ ç «¥ á«¥¤ãîâ ¤¢ ¡ ©â :
|
||||
|
||||
+0 ¤«¨â¥«ì®áâì ª ¤à ¢ 1/50 ᥪ
|
||||
+1 ⨯ 㯠ª®¢ª¨ ª ¤à
|
||||
|
||||
¥á«¨ ¤«¨â¥«ì®áâì=255 ¨«¨ ⨯ 㯠ª®¢ª¨ ¥à ᯮ§ ¯«¥©¥à®¬, â®
|
||||
¬ã«ì⨪ ¢®§¢à é ¥âáï á ¬ë© ¯¥à¢ë© ª ¤à.
|
||||
|
||||
¨ ª®¢¥àâ¥à, ¨ ¡¥â । ªâ®à ¢ë¡¨à îâ ¨«ãç訩 ¬¥â®¤ 㯠ª®¢ª¨
|
||||
¨§ 9 ¨¬¥îé¨åáï (¯® ¬¥â®¤ã ᦠâ¨ï ¨§®¡à ¦¥¨ï)
|
||||
|
||||
---- ⨯ 0
|
||||
|
||||
íâ® ¥ã¯ ª®¢ ë© á¯à ©â ¢ «¨¥©®¬ ä®à¬ â¥. <20>ë¢ ¥â, çâ® ª ¤à ¨ ¢ ª ªãî
|
||||
¨ ®¤¨¬ ¤à㣨¬ ¬¥â®¤®¬ ¥ ¦¬¥âáï.
|
||||
|
||||
<EFBFBD>ਠ«¨ç¨¨ 梥â áâப âਡã⮢ ¨¤ñâ ¯®á«¥ ª ¦¤ëå 8 áâப ¨§®¡à ¦¥¨ï
|
||||
|
||||
---- ⨯ 1
|
||||
|
||||
¢§ïâ ¨§ áâ âì¨ "‘¦ ⨥ £à ä¨ç¥áª®© ¨ä®à¬ 樨 ¨ çâ® ¨§ í⮣® ¬®¦® ¯®«ãç¨âì"
|
||||
(C) Vitamin/CAIG/2001.
|
||||
Š ¤à à §¡¨¢ ¥âáï § ª®¬¥áâ (à §¬¥à ¯® Y 㢥«¨ç¨¢ ¥âáï ¤® ¡«¨¦ ©è¥£® ªà ⮣®
|
||||
8 ç¨á« ). <20> áᬮâਬ 㯠ª®¢ªã â ª®£® § ª®¬¥áâ :
|
||||
#55,#ff,#55,#ff,#ff,#ff,#50,#05
|
||||
ç¨ï á® ¢â®à®£® ¡ ©â ¤¥« ¥¬ XOR'¨£ á ¯à¥¤ë¤ã騬:
|
||||
#55,#aa,#aa,#aa,#00,#00,#af,#55
|
||||
á®§¤ ¤¨¬ ä« £®¢ë© ¡ ©â - ®â¬¥â¨¬ 0 ¡ ©âë, ª®â®àë¥ à ¢ë ¯à¥¤ë¤ã饬ã, 1 - ¥à ¢ë.
|
||||
¤«ï 1£® ¡ ©â ¯à¥¤ë¤ã騬 áç¨â ¥âáï 0. ’®«ìª® ¡¨âë ¢ ®¡à ⮬ ¯®à浪¥ - ¯à ¢ë© ¡¨â
|
||||
®â¢¥ç ¥â § ¯¥à¢ë© ¡ ©â. <20>®«ã稬:
|
||||
1,1,0,1,0,0,1,1 = #D3
|
||||
⥯¥àì ¢ë¢®¤¨¬ ¢ ¯®â®ª á ç « ä« £®¢ë© ¡ ©â, ¯®â®¬ - ⥠¡ ©âë XOR'¨£ , ¤«ï
|
||||
ª®â®àëå ãáâ ®¢«¥ ¡¨â ¢ ä« £®¢®¬ ¡ ©â¥:
|
||||
#D3,#55,#AA,#00,#AF,#55
|
||||
¢ ¨â®£¥ ¢¬¥áâ® 8 ¡ ©â § ª®¬¥áâ ¯®«ã稫¨ 6 ¡ ©â ¢ 㯠ª®¢ ®¬ ä®à¬ â¥.
|
||||
|
||||
à ᯠª®¢ª ¨¤¥â ¯® á«¥¤ãî饬㠫£®à¨â¬ã:
|
||||
|
||||
byte=0
|
||||
xorbyte=0
|
||||
flag=¡ ©â ä« £®¢
|
||||
横« 8
|
||||
RR flag
|
||||
if carry=1 then ¡¥à¥¬ ¨§ ¯®â®ª ®¢ë© xorbyte
|
||||
byte=byte xor xorbyte
|
||||
¢ë¢®¤ byte íªà
|
||||
ªæ
|
||||
|
||||
Š®«¨ç¥á⢮ 㯠ª®¢ ëå ¡«®ª®¢, ¥áâ¥á⢥®, à ¢® ç¨á«ã § ª®¬¥áâ ¢ ª ¤à¥.
|
||||
‡ ª®¬¥áâ ¯ ªãîâáï á«¥¢ ¯à ¢® ᢥàåã ¢¨§ (â.¥ á ç « àï¤ ¢¥àå¨å, ¯®â®¬
|
||||
á«¥¤ãî騩 àï¤, ¨ â ª ¤® ¨§ )
|
||||
|
||||
---- ⨯ 2
|
||||
|
||||
®ç¥ì ¯®å®¦ ⨯ 1, ® ¢ ¡ ©â¥ ä« £®¢ á¡à®è¥ë ⥠¡¨âë, ᮮ⢥âáâ¢ãî騥
|
||||
ã«ï¬ ¢ XOR'¨£¥. ’.¥ ¤«ï ¯à¨¬¥à ¨§ ⨯ 1 ä« £¨ ¡ã¤ãâ:
|
||||
1,1,0,0,1,1,1,1 = #CF
|
||||
¨ ¢ ¯®â®ª ¢ë¤ áâáï
|
||||
#CF,#55,#aa,#aa,#aa,#af,#55
|
||||
âãâ ¯®«ã稫®áì çâ® ¢ë¨£àëè ¬¨¨¬ «¥, ® íâ® ¥ § ç¨â çâ® ® å㦥 ⨯ 1
|
||||
|
||||
§¤¥áì à ᯠª®¢ª â ª ï:
|
||||
|
||||
byte=0
|
||||
flag=¡ ©â ä« £®¢
|
||||
横« 8
|
||||
RR flag
|
||||
if carry=1 then byte=byte xor (¡ ©â ¨§ ¯®â®ª )
|
||||
¢ë¢®¤ byte íªà
|
||||
ªæ
|
||||
|
||||
---- ⨯ 3
|
||||
|
||||
íâ® â®â ¦¥ ⨯ 1, ® ¯®«ã祮¥ § ª®¬¥áâ® ¥ ¢ë¢®¤¨âáï ¯àﬨª®¬ íªà ,
|
||||
ª« ¤ë¢ ¥âáï ¯® XOR ᮮ⢥âáâ¢ãî饥 § ª®¬¥áâ® ¯à¥¤ë¤ã饣® ª ¤à .
|
||||
|
||||
---- ⨯ 4
|
||||
|
||||
«®£¨ç®: ª ¤à 㯠ª®¢ ⨯®¬ 2 ¨ ¯® XOR ª« ¤ë¢ ¥âáï ¯à¥¤ë¤ã騩.
|
||||
|
||||
…᫨ ª ¤à ¬¥ï¥âáï ¥ ᨫì®, â® ¢ १ã«ìâ ⥠¥£® XOR¨£ á ¯à¥¤ë¤ã騬
|
||||
ª ¤à®¬ ¯®«ãç ¥âáï ¬®£® ¯ãáâëå § ª®¬¥áâ, ª®â®àë¥ ¯ ªãîâáï «ãçè¥ ¢á¥£®,
|
||||
¨ ¢ í⮬ á«ãç ¥ ⨯ 3 ¨ ⨯ 4 £®«®¢ã ¢ëè¥ ®áâ «ìëå ⨯®¢ 㯠ª®¢ª¨.
|
||||
|
||||
’¥¯¥àì ® ®¢ëå ⨯ å:
|
||||
|
||||
---- ⨯ë 5-9
|
||||
|
||||
íâ® á¯à¥áᮢ ë¥ â¨¯ë 1-4. ‚¢®¤¨âáï â ª®¥ ¯®ï⨥ ª ª ä« £ 2£® ã஢ï.
|
||||
¡¨âë í⮣® ä« £ ®¯à¥¤¥«ïîâ á®áâ®ï¨¥ ¡ ©â®¢ ä« £®¢ ¤«ï 8 á«¥¤ãîé¨å
|
||||
§ ¨¬ § ª®¬¥áâ. …᫨ ¡¨â=0, â® ä« £=0 (¢ í⮬ á«ãç ¥ ¢ ¯®â®ª ¯¨è¥âáï
|
||||
⮫쪮 梥â, ¤ ¨ â® ¥á«¨ ® ¥áâì), ¥á«¨=1, â® ä« £ ¥ ã«¥¢®©, ¨ ¡«®ª
|
||||
¨¤ñâ ¢ ¯®â®ª ¯® ¯®«®© ¯à®£à ¬¬¥ (ä« £,¤ ë¥ ¨ ¬®¦¥â 梥â)
|
||||
|
||||
<EFBFBD> ¯à¨¬¥à¥:
|
||||
¤®¯ãá⨬, 㯠ª®¢ ë© ª ¤à (¤«ï è¨à®âë ªà㣮§®à ¡ã¤¥â á ¥ã¯ ª®¢ ë¬ æ¢¥â®¬) ç¨ ¥âáï â ª...
|
||||
|
||||
DB %10010000
|
||||
DB 1
|
||||
DB 2
|
||||
DB 3
|
||||
DB 4
|
||||
DB %00100001,#FF,#55,5
|
||||
DB 6
|
||||
DB 7
|
||||
DB %10000000,#77,1
|
||||
|
||||
<EFBFBD>¥à¢ë© ¡ ©â - ä« £ 2£® ã஢ï. ‘¬®âਬ § á®áâ®ï¨¥¬ ¡¨â®¢ ç¨ ï á ã«¥¢®£® (¯à ¢®£®)
|
||||
0 - ¡«®ª ¯ãá⮩ (⨯ë 5,6) ¨«¨ ¥ ¬¥ï¥âáï (⨯ë 7,8)
|
||||
¨§ ¤ ëå ¡«®ª ¢ ¯®â®ª¥ ⮫쪮 梥â (1)
|
||||
0 - â® ¦¥ (梥â 2)
|
||||
0 - â® ¦¥ (梥â 3)
|
||||
0 - â® ¦¥ (梥â 4)
|
||||
1 - €ƒ€! ¡«®ª ¢ ¯®â®ª ¢ë«®¦¥ ¯®«®áâìî
|
||||
¡¥à¥¬ ä« £ ¡«®ª (%00100001) ¨ ᮮ⢥âá⢥® ⨯ã à ᯠª®¢ë¢ ¥¬ ¡«®ª. 梥â 5
|
||||
0 - ¡«®ª ¯ãá⮩. 梥â 6
|
||||
0 - ¡«®ª ¯ãá⮩. 梥â 7
|
||||
1 - ¯®«ë© ¡«®ª. (ä« £ %10000000, ¤ ë¥ #77, 梥â 1)
|
||||
|
||||
‚áñ, à §®¡à «¨áì á 8 ¡«®ª ¬¨...
|
||||
„ «ìè¥ á«¥¤ã¥â â® ¦¥ á ¬®¥ - ä« £ 2£® ãà®¢ï ¨ ¢áñ çâ® ª ¥¬ã ¯à¨« £ ¥âáï
|
||||
Š®¥ç®, ®¡é¥¥ ç¨á«® ¡«®ª®¢ ¢ ª ¤à¥, ¥ ®¡ï§ â¥«ì® ªà â® 8. ‚ â ª¨å á«ãç ïå
|
||||
¥ã¦ë¥ ¡¨âë ¯®á«¥¤¥£® ä« £ 2£® ãà®¢ï ¥ ãç¨âë¢ îâáï.
|
||||
|
||||
—â® ¬ë á í⮣® ¯®«ãç ¥¬? Š ¦¤ë© ã«¥¢®© ¡ ©â ä« £®¢ áâ¢ ¥âáï ¢ 1 ¡¨â ä« £ 2£® ã஢ï,
|
||||
® ¯à¨ í⮬ ª ¦¤ë© ¥ã«¥¢®© à á¯ãå ¥â ¤® 9 ¡¨â. <20> ¯à¨¬¥à, ¯®«®áâìî ¯ãá⮩ ª ¤à ¡¥§ 梥â
|
||||
㦬¥âáï ¢ áâà èë¥ 64 à § (¢®-¯¥à¢ëå ¯ãáâë¥ § ª®¬¥áâ ¦¬ãâáï ¢ ã«¥¢®© ä« £®¢ë© ¡ ©â,
|
||||
¢® ¢â®àëå ª ¦¤ë© ã«¥¢®© ä« £®¢ë© ¡ ©â ¦¬¥âáï ¢ 1 ¡¨â ä« £ 2£® ã஢ï)
|
||||
|
||||
---- ⥯¥àì ¯à® æ¢¥â
|
||||
|
||||
<EFBFBD>®¤ ¨ä®à¬ æ¨î ® «¨ç¨¨ 梥⠨ ¥£® 㯠ª®¢ª¥ (¤ , ¨ í⮠⮦¥ ¥áâì!) ¯¥à¥¤ îâ áâ à訥 ¡¨âë
|
||||
⨯ ª ¤à .
|
||||
|
||||
b7 = 0 ¥á«¨ 梥⮢®£® ¯®â®ª ¥â (â.¥ ® ¯®«®áâìî ¨¤¥â¨ç¥ ¯®â®ªã ¯à¥¤ë¤ã饣® ª ¤à )
|
||||
= 1 ¥á«¨ ® ¥áâì
|
||||
b6 = 0 ¥á«¨ 梥⠥ ª®¤¨àã¥âáï (â.¥ § ª ¦¤ë¬ 㯠ª®¢ ë¬ § ª®¬¥á⮬ ¨¤ñâ 1 ¡ ©â 梥â )
|
||||
= 1 ¥á«¨ ª®¤¨àã¥âáï (¯à®¯ã᪠îâáï § ª®¬¥áâ á ¥¨§¬¥ïî騬áï æ¢¥â®¬)
|
||||
|
||||
⥯¥àì ï ᪠§ âì ¯® ¡ã¬ ¦ª ...
|
||||
¯à¨ 㯠ª®¢ª¥ 梥⠢¢¥¤¥ ¥é¥ ¨ ª®â஫ìë© ¡ ©â ¤«ï 梥â . ¢¥áì¬ ¨ ®ç¥ì ¯®å®¦
|
||||
ä« £ 2£® ã஢ï - ¥á«¨ ¢ ¥¬ ¡¨â = 0, ⮠梥⠧ ª®¬¥áâ ¥ ¯®¬¥ï«áï ¯® ®â®è¥¨î
|
||||
ª ¯à¥¤ë¤ã饬㠪 ¤àã ¨ ¢ ¯®â®ª¥ ®âáãâáâ¢ã¥â. € ¥á«¨ ¡¨â = 1, â® ¢á«¥¤ § § ª®¬¥á⮬
|
||||
¨¤¥â ¥£® 梥â. Š ª ¨ ä« £ 2£® ã஢ï, ä« £ 梥⠢áâà¥ç ¥âáï ª ¦¤ë¥ 8 § ª®¬¥áâ.
|
||||
…᫨ ®¡ íâ¨ ä« £ «¨ç¨áâ¢ãîâ ( ¯à, ⨯ 5 á 㯠ª®¢ ë¬ æ¢¥â®¬: #‘5), â®
|
||||
¯¥à¢ë¬ ¢á¥£¤ ¨¤¥â ä« £ 2£® ã஢ï, § ¨¬ - ä« £ 梥â .
|
||||
|
||||
<EFBFBD>®« ï á奬 ¯®â®ª ª ¤à ¢à®¤¥ ª ª ¢ë£«ï¤¨â â ª:
|
||||
|
||||
[¤«¨â¥«ì®áâì]
|
||||
[⨯] b0..5-⨯ 㯠ªà¢ª¨ b6-梥â á¯à¥áᮢ b7-梥⠯à¨áãâáâ¢ã¥â
|
||||
[ä« £ 2 ã஢ï] ⮫쪮 ¤«ï ⨯®¢ 5-9 (®¯à¥¤¥«ï¥â «¨ç¨¥ ¯ à [ä« £][¡«®ª])
|
||||
[ä« £ 梥â ] ⮫쪮 ¤«ï á¯à¥áᮢ ®£® 梥â (®¯à¥¤¥«ï¥â «¨ç¨¥ ª®¬¯®¥â [梥â])
|
||||
[ä« £ 1][¡«®ª 1][梥â 1]
|
||||
[ä« £ 2][¡«®ª 2][梥â 2]
|
||||
[ä« £ 3][¡«®ª 3][梥â 3]
|
||||
[ä« £ 4][¡«®ª 4][梥â 4]
|
||||
[ä« £ 5][¡«®ª 5][梥â 5]
|
||||
[ä« £ 6][¡«®ª 6][梥â 6]
|
||||
[ä« £ 7][¡«®ª 7][梥â 7]
|
||||
[ä« £ 8][¡«®ª 8][梥â 8]
|
||||
[ä« £ 2 ã஢ï]
|
||||
...
|
||||
|
||||
<EFBFBD>ã ¨ ª ª ¢á¥£¤ ¯à¨®à¨â¥â ¢ ¢ë¡®à¥ ⨯ 㯠ª®¢ª¨ (¨ ¨§®¡à ¦¥¨ï, ¨ 梥â ) - à §¬¥à...
|
||||
|
||||
Sam Style
|
||||
1
Docs/FORMATS/info_guide/asc&.W
Normal file
1
Docs/FORMATS/info_guide/asc&.W
Normal file
File diff suppressed because one or more lines are too long
68
Docs/FORMATS/info_guide/chip
Normal file
68
Docs/FORMATS/info_guide/chip
Normal file
@ -0,0 +1,68 @@
|
||||
|
||||
Формат модуля Chip Tracker 1.x
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Расширение .CHI
|
||||
|
||||
Модуль состоит из четырёх частей - заголовок, ордер (список по-
|
||||
зиций), паттерны, сэмплы. Каждая часть выравнена по границе сек-
|
||||
торов.
|
||||
|
||||
Заголовок имеет размер 1 сектор:
|
||||
+0 (8) "CHIPv1.0"
|
||||
+8 (32) имя трека (русских букв в шрифте нет)
|
||||
+40 (1) tempo
|
||||
Внимание! ДОЛЖНО СЧИТАТЬСЯ, что tempo измеряется в 50-х долях
|
||||
секунды, хотя версии редактора до 1.3 включительно и плейер
|
||||
0.01 версии играют сонг из-за допущенной ошибки несколько мед-
|
||||
леннее!
|
||||
+41 (1) длина сонга-1 (последняя используемая позиция) 0..255
|
||||
+42 (1) позиция зацикливания (0..255)
|
||||
+43 (16*4) параметры сэмплов (в порядке 0..F):
|
||||
++0 (2) позиция зацикливания (равна длине для незацикленных)
|
||||
++1 (2) длина. Сначала младшие байты, потом старшие.
|
||||
Для неиспользованных сэмплов здесь нули.
|
||||
+107 (31) зарезервировано (нулевые байты).
|
||||
+138 (16*8) имена сэмплов (в том же порядке). По 8 байт на имя.
|
||||
Для неиспользованных сэмплов здесь пробелы.
|
||||
|
||||
Список позиций имеет размер 1 сектор и содержит номера паттернов
|
||||
в порядке проигрывания. Номера паттернов хранятся как 0..30,
|
||||
т.е. на единицу меньше, чем показывается в редакторе. Неисполь-
|
||||
зованные позиции содержат 0.
|
||||
|
||||
Паттерны хранятся до последнего использованного в списке пози-
|
||||
ций. Каждый паттерн занимает 512 байт, которые рассматриваются
|
||||
как два запареллеленных блока по 256 байт. В паттерне 64 строч-
|
||||
ки, каждая из которых занимает 4 последовательных байта в первом
|
||||
256-байтовом куске паттерна и ещё 4 последовательных байта во
|
||||
втором. Каналы A,B,C,D хранятся именно в таком порядке. Причём
|
||||
каналы A,D должны играться как правые, а B,C - как левые.
|
||||
|
||||
Для каждой ноты каждого канала:
|
||||
в первом куске: во втором куске:
|
||||
%nnnnnnCC %ssssPPPP
|
||||
|
||||
nnnnnn - нота (0=пусто, 1=C-1, ... 60=B-5, 63=пауза);
|
||||
ssss - её сэмпл (обязательно указан!);
|
||||
CC - код команды, а PPPP - её параметр:
|
||||
00=sample offset. Сэмпл играется с PPPP*512-го байта, но в
|
||||
поле ноты должна стоять нота;
|
||||
01=slide down(-) на PPPP микросапогов каждую 1/50 секунды;
|
||||
10=slide up(+) на PPPP микросапогов каждую 1/50 секунды;
|
||||
Микросапог - условная единица частоты (не периода!);
|
||||
Слайды действуют только в пределах текущей строчки.
|
||||
11=в канале A - темп PPPP (1..15);
|
||||
в канале D - конец паттерна (текущая строчка - последняя);
|
||||
в каналах B,C - запрещено.
|
||||
|
||||
Сэмплы хранятся в 8-битном беззнаковом виде, причём каждый сэмпл
|
||||
выравнивается по границе сектора (256 байт). В неиспользованной
|
||||
таким образом части последнего сектора находится то же, что и в
|
||||
начале цикла этого сэмпла. Если он не зациклен, то там значения
|
||||
128. Сохраняются все сэмплы, кроме пустых. Максимум #BB=187 сек-
|
||||
торов сэмплов.
|
||||
|
||||
Ещё раз внимание! поскольку из-за второй ошибки в программе Chip
|
||||
Tracker Compiler v0.01 не грузит до конца модули, имеющие пустые
|
||||
сэмплы, прилагаю исходник этого плейера, в котором имеются нуж-
|
||||
ные исправления (скорость в том числе).
|
||||
1
Docs/FORMATS/info_guide/dos0.W
Normal file
1
Docs/FORMATS/info_guide/dos0.W
Normal file
File diff suppressed because one or more lines are too long
1
Docs/FORMATS/info_guide/dos1.W
Normal file
1
Docs/FORMATS/info_guide/dos1.W
Normal file
File diff suppressed because one or more lines are too long
1
Docs/FORMATS/info_guide/dos2.W
Normal file
1
Docs/FORMATS/info_guide/dos2.W
Normal file
File diff suppressed because one or more lines are too long
1
Docs/FORMATS/info_guide/dos3.W
Normal file
1
Docs/FORMATS/info_guide/dos3.W
Normal file
File diff suppressed because one or more lines are too long
1
Docs/FORMATS/info_guide/formaty.W
Normal file
1
Docs/FORMATS/info_guide/formaty.W
Normal file
File diff suppressed because one or more lines are too long
46
Docs/FORMATS/info_guide/grf_eng.txt
Normal file
46
Docs/FORMATS/info_guide/grf_eng.txt
Normal file
@ -0,0 +1,46 @@
|
||||
|
||||
Beginning Quantity Meaning
|
||||
============ ======== ============
|
||||
#0000 #30(16x3) Palette. 16 triads of G,R,B colors
|
||||
encoded as ASCII digits:
|
||||
"0"(#30) - color is off
|
||||
"1"(#31) - dark color
|
||||
"2"(#32) - normal color
|
||||
"3"(#33) - bright color
|
||||
Ëþáîå äðóãîå çíà÷åíèå ïðèðàâíèâàåòñÿ
|
||||
óòèëèòîé GRFVIEW ê "3".
|
||||
|
||||
#0030(*) #03 "GRF"
|
||||
|
||||
#0033(*) #01 Recommended attribute for background
|
||||
(for small pictures)
|
||||
|
||||
#0034(*) #01 Recommended border (#00-#0F)
|
||||
|
||||
#0035 #4B Not used
|
||||
|
||||
#0080(**) #01 X-coord (0-79) of top left corner of
|
||||
the picture in bytes (=8 pixels)
|
||||
|
||||
#0081(**) #01 Y-coord (0-199) of top left corner of
|
||||
the picture in pixels
|
||||
|
||||
#0082 #01 WIDTH (1..80) in bytes (=8 pixels)
|
||||
|
||||
#0083 #01 HEIGHT (1..200) in pixels
|
||||
|
||||
#0084 WIDTH*HEIGHT Pixels. Column #0 (HEIGHT pixels) then
|
||||
column #1 ... column #(WIDTH-1).
|
||||
|
||||
#84+WIDTH*HEIGHT #nnnn Attributes. The same but RLE encoded:
|
||||
consists of pairs of bytes, in which the first byte in pair encodes number of repetitions of
|
||||
second byte.
|
||||
|
||||
|
||||
There are viewers of this format for CP/M (GRAF.COM), TASiS (grfview)
|
||||
and TR-DOS (MCX viewer).
|
||||
|
||||
By now I should save the screenshot from RetroX when the picture is ready then cut
|
||||
it in Photoshop, make 16 color palette and save the
|
||||
picture in 8bpp format. Then I run my utility RetroXtoGRF
|
||||
http://alonecoder.nedopc.com/zx/retroxtogrf.rar
|
||||
106
Docs/FORMATS/info_guide/grfview.txt
Normal file
106
Docs/FORMATS/info_guide/grfview.txt
Normal file
@ -0,0 +1,106 @@
|
||||
|
||||
Утилита GRFVIEW предназначена для просмотра монохромных или
|
||||
цветных (мультиколорных) картинок в формате CP/M-редактора GRAF
|
||||
в режиме 640x200. В самой среде CP/M данные картинки имеют рас-
|
||||
ширение BLK, однако в OS TASiS оно зарезервировано за драйверами
|
||||
дисковых устройств и, чтобы избежать путаницы, здесь им было
|
||||
присвоено "свободное" расширение GRF - производная от названия
|
||||
редактора. Поэтому, при переносе картинок из CP/M в TASiS не за-
|
||||
будьте сменить расширение!
|
||||
|
||||
Откуда можно раздобыть GRF/BLK-файлы?
|
||||
|
||||
1) Нарисовать самостоятельно в графическом редакторе GRAF.
|
||||
|
||||
2) Сконвертировать в CP/M из исходных МОНОХРОМНЫХ(!) PCX-файлов
|
||||
при помощи специальной, прилагающейся к редактору утилиты
|
||||
PCXBLK.COM. Само-собой, таким способом можно получить только мо-
|
||||
нохромные картинки. Но их можно вручную раскрасить все в том же
|
||||
редакторе.
|
||||
|
||||
3) Сконвертировать в RetroX (редактор -> Import Picture -> Settings ->
|
||||
ZX Clones Special -> TurboATM Multicolor Polychrome)... а поскольку сохранять
|
||||
он не умеет, то сделать скриншот, обрезать картинку (ширина должна делиться
|
||||
на 8, а высота на 2), сохранить в фотошопе в формате bmp 8bpp (0-й цвет
|
||||
желательно принудительно задать чёрным), потом сконвертировать утилитой
|
||||
RetroX to GRF.
|
||||
|
||||
ФОРМАТ BLK(GRF)-ФАЙЛА
|
||||
=====================
|
||||
|
||||
Смещение Кол-во Значение
|
||||
============ ======== ============
|
||||
#0000 #30(16x3) Палитра. Представляет собой 16 троек
|
||||
значений GRB-цветов (именно в таком
|
||||
порядке), представленных в виде сим-
|
||||
волов ASCII:
|
||||
|
||||
"0"(#30) - цвет (G,R или B) выключен
|
||||
"1"(#31) - цвет низкой интенсивности
|
||||
"2"(#32) - цвет в режиме BRIGHT 0
|
||||
"3"(#33) - цвет в режиме BRIGHT 1
|
||||
Любое другое значение приравнивается
|
||||
утилитой GRFVIEW к "3".
|
||||
|
||||
#0030(*) #03 Метка "GRF" - означает, что за ней
|
||||
следуют два значащих байта
|
||||
|
||||
#0033(*) #01 Рекомендуемые атрибуты (INK & PAPER)
|
||||
заднего фона, на который налагается
|
||||
изображение. Актуально для картинок,
|
||||
по размеру меньших 640x200.
|
||||
|
||||
#0034(*) #01 Рекомендуемый цвет бордюра (#00-#0F)
|
||||
Может быть актуально при использова-
|
||||
нии нестандартной палитры.
|
||||
|
||||
#0035 #4B Не используется. Может быть забито
|
||||
любым мусором.
|
||||
|
||||
#0080(**) #01 X-координата (0-79) левого верхнего
|
||||
угла выводимой картинки, измеряемая
|
||||
в столбцах (1 стлб= 8 пикс= 1 байт)
|
||||
|
||||
#0081(**) #01 Y-координата (0-199) левого верхнего
|
||||
угла выводимой картинки, измеряемая
|
||||
в строчках (1 стр = 1 пиксель)
|
||||
|
||||
#0082 #01 WIDTH - ширина картинки в столбцах
|
||||
(от 1 до 80)
|
||||
|
||||
#0083 #01 HIGH - высота картинки в строчках
|
||||
(от 1 до 200)
|
||||
|
||||
#0084 WIDTH*HIGH Растр монохромного изображения.
|
||||
Представляет собой последователь-
|
||||
ность слева направо столбцов от
|
||||
1 до x (x = WIDTH), состоящих из
|
||||
y байтов каждый (y = HIGH), считая
|
||||
сверху вниз.
|
||||
|
||||
#84+WIDTH*HIGH #nnnn Растр атрибутов. Полная аналогия
|
||||
растра монохромного изображения по
|
||||
структуре, с той лишь разницей, что
|
||||
он прилагается в упакованном по ме-
|
||||
тоду RLE виде. То есть, представляет
|
||||
из себя последовательность двухбайт-
|
||||
ных слов, первый байт в каждом из
|
||||
которых означает количество (1-255)
|
||||
последовательно идущих одинаковых
|
||||
байтов атрибутов, а второй байт -
|
||||
собственно, само значение атрибута.
|
||||
|
||||
----------------------------------
|
||||
Примечания:
|
||||
|
||||
*) НОВОВВЕДЕНИЕ специально для утилиты GRFVIEW. В оригинале -
|
||||
неиспользуемый участок. Может быть забит любым мусором.
|
||||
|
||||
**) Необязательные параметры X и Y картинки, особенно для утили-
|
||||
ты GRFVIEW, где изображение автоматически центрируется, в соот-
|
||||
ветствии со своими габаритами.
|
||||
|
||||
****************************************************************
|
||||
2006, февраль. Тимонин Максим/NedoPC group
|
||||
****************************************************************
|
||||
P.S. Стартовый адрес COM-файла в TASiS - 24000DEC
|
||||
1
Docs/FORMATS/info_guide/howpack.W
Normal file
1
Docs/FORMATS/info_guide/howpack.W
Normal file
File diff suppressed because one or more lines are too long
1
Docs/FORMATS/info_guide/hrumhrst.W
Normal file
1
Docs/FORMATS/info_guide/hrumhrst.W
Normal file
File diff suppressed because one or more lines are too long
1
Docs/FORMATS/info_guide/lc45.W
Normal file
1
Docs/FORMATS/info_guide/lc45.W
Normal file
File diff suppressed because one or more lines are too long
52
Docs/FORMATS/info_guide/megalz
Normal file
52
Docs/FORMATS/info_guide/megalz
Normal file
@ -0,0 +1,52 @@
|
||||
MegaLZ
|
||||
|
||||
”®à¬ â ¯ ª®¢ ®£® ä ©« :
|
||||
|
||||
¯¥à¢ë© ¡ ©â ª®¯¨àã¥âáï ¢ ¢ë室
|
||||
¢â®à®© - ¨¤ñâ ¢ ¡¨âë
|
||||
|
||||
¡¨âë ¢ ¡ ©â¥ ¡¨â®¢ - á® áâ à襣®.
|
||||
…᫨ 㦥 ¡¨â, ¥£® 㦥 ¥â (¢á¥ 8 ª®ç¨«¨áì) - â® ®¢ë© ¡ ©â ¢ë¡¨à ¥âáï
|
||||
¨§ ¯®â®ª . Žââ㤠¦¥ ¢ë¡¨à îâáï ¨ ¡ ©âë, ®¡®§ ç¥ë¥ <byte> - ® ⮫쪮
|
||||
¯®á«¥ ¢ë¡®àª¨ ¢á¥å ¡¨â®¢ áá뫪¨.
|
||||
|
||||
‚ ä®à¬ ⥠ááë«®ª: <byte> - ¡ ©â, ª®â®àë© ¢ë¡¨à ¥âáï ¨§ ¯®â®ª
|
||||
|
||||
1<byte> - ª®¯¨à®¢ âì <byte> ¢ ¢ë室.
|
||||
000abc - ª®¯¨à®¢ âì 1 áâ àë© ¡ ©â ¯® ᬥ饨î FFF8+[abc] ®â ⥪ã饩 ¯®§¨æ¨¨ ¢ ¢ë室¥
|
||||
(abc==000 - ᬥ饨¥ FFF8, abc==111 - FFFF)
|
||||
001<byte> - ª®¯¨à®¢ âì 2 ¡ ©â ¯® ᬥ饨î FF00+<byte> (-1..-256)
|
||||
0100<byte> - ª®¯¨à®¢ âì 3 ¡ ©â ¯® ᬥ饨î FF00+<byte>
|
||||
0101abcd<byte> - ª®¯¨à®¢ âì 3 ¡ ©â ¯® ᬥ饨î (F[abcd]-1)*256+<byte> (-257..-4352)
|
||||
|
||||
¡®«¥¥ ¤«¨ë¥ áá뫪¨ 㤮¡® ¯à¥¤áâ ¢¨âì ¢ ¢¨¤¥ 3 ç á⥩:
|
||||
|
||||
¯à¥ä¨ªá: 011
|
||||
|
||||
¤«¨ áá뫪¨:
|
||||
1a -> 4+[a]
|
||||
01ab -> 6+[ab]
|
||||
001abc -> 10+[abc]
|
||||
0001abcd -> 18+[abcd]
|
||||
00001abcde -> 34+[abcde]
|
||||
000001abcdef -> 66+[abcdef]
|
||||
0000001abcdefg -> 130+[abcdefg] (âãâ ¤«¨ ¥ ¡®«¥¥ 255!)
|
||||
|
||||
ᬥ饨¥:
|
||||
0<byte> - FF00+<byte> § ¤ (-1..-256)
|
||||
1abcd<byte> - (F[abcd]-1)*256+<byte> (-257..-4352)
|
||||
|
||||
|
||||
Œ¥âª ª®æ ¯®â®ª :
|
||||
|
||||
011000000001
|
||||
|
||||
|
||||
¯à¨¬¥àë:
|
||||
|
||||
000111 - ¯®¢â®à¨âì ¯®á«¥¤¨© ¡ ©â
|
||||
001<byte=FF> - ¯®¢â®à¨âì ¯®á«¥¤¨© ¡ ©â ¤¢ ¦¤ë (ᬥ饨¥=-1, ¤«¨ 2)
|
||||
|
||||
011 001101 10000<byte=0> - áá뫪 ¤«¨®© %101+10 = 15 ¡ ©â ᮠᬥ饨¥¬ -4352
|
||||
|
||||
Lord Vader
|
||||
1
Docs/FORMATS/info_guide/mspack.W
Normal file
1
Docs/FORMATS/info_guide/mspack.W
Normal file
@ -0,0 +1 @@
|
||||
MS Pack 01.96
MS Pack 01.96
<20>® ¬¥¨îHrumer' , ¢â®à 㯠ª®¢é¨ª®¢
Hrust,«ãç訬 ª®¬¯à¥áá®à®¬ ⥪á⮢ ZX
¤®2000£®¤ ¡ë«MS Pack.† «ì,ª®¥ç®,çâ®
Hrumer¨ª®£¤ ¥ ¯¨á « áâ ⥩ ¯® ¢®¯à®á ¬
ª®¬¯à¥áᨨ ¨ ¥ áâ « ®â¢¥ç âì ¬®¨ ¢®¯-
à®áë «¨ç®, ¢¥¤ì ¥£® ¨¬ï ¨ ¯à®£à ¬¬ë
¢á¯«ë¢ îâ ¢ í⮬ à §¤¥«¥ 㦥 ¥ ¯¥à¢ë©
à §. ޤ ª®,çâ® ¦¥ ¯à¥¤áâ ¢«ï¥â ᮡ®© ä®à-
¬ â ª®¬¯à¥áá®à Microspace?
<20> ᯠª®¢é¨ª, ª ᮦ «¥¨î,¥®¯â¨¬ «¥ ¯®
¤«¨¥. ‘âàãªâãà ¯¥à¥å®¤®¢ ¯®¤¤ ñâáï ®¯â¨-
¬¨§ 樨, «¨è¨©XOR A,¬ «®¯®«¥§®¥ á®åà -
¥¨¥HL'...<08>® ᪮à®áâì ¤¥ª®¬¯à¥áᨨ ¯à¨-
«¨ç ï - ¯à¨¬¥à,¤«ï 㯠ª®¢ª¨ <20>‡“MS Pack
¨ ᥣ®¤ï ¯®ç⨠¥§ ¬¥¨¬. ‚¥¤ì ¢ ñ¬ á«®-
¢ àì, ¢ ®â«¨ç¨¥ ®â Hrum,á®áâ ¢«ï¥â ¢áî
¤«¨ã ä ©« . Š®¥ç®,í⮠᪠§ «®áì ᪮-
à®áâ¨ á ¬®£® 㯠ª®¢é¨ª . •íè¨à®¢ ¨ï ¤«ï
ãáª®à¥¨ï ¯®¨áª ¯®¢â®à®¢ ¥â ¨ ¢Hrum,
¨ ¢MS Pack.
ˆ¬¥îâáï ¡¨â®¢ë© ¨ ¡ ©â®¢ë© ¯®â®ª¨,¡¨â®-
¢ë© ¯®â®ª ¢ë¡¨à ¥âáï ¯® 2 ¡ ©â . „«ï à ¡®-
âë ¨á¯®«ì§ã¥âáï á⥪ (¯à¨æ¨¯ ADD HL,HL:
DJNZ:POP HL:LD B,C).
“¯ ª®¢ ë© ¡«®ª ¤®«¦¥ «¥¦ âì ¯®á«¥
à ᯠª®¢é¨ª (Hrum-¯®¤®¡ë© ¯à¨æ¨¯). <20>ã-
¤¥¬ ®âáç¨âë¢ âì ¡ ©âë ®â ç « à ᯠª®¢-
騪 :
+#e9- ¤à¥á,¯® ª®â®à®¬ã «¥¦ â5¡ ©â ª®-
æ ä ©« . ’®ç¥¥, ¤à¥á+4, â.ª.¡ ©âë ª®¯¨-
àãîâáï ç¥à¥§LDDR.<04>®ç¥¬ã5¡ ©â ¥ «¥¦ â
¥¯®á।á⢥® ¡¥§ 㪠§ ⥫ï? ’¥¬ ¡®«¥¥
çâ®4¡ ©â (¨«¨ ¤ ¦¥6,¥á«¨ ¢ ª®æ¥ ¤¥-
ª®¬¯à¥áá®à ¥JP, RET)¤® 㯠ª®¢ ®£®
¡«®ª ¥ ¨á¯®«ì§ãîâáï? …᫨ ¡ë5¡ ©â ª®-
æ ä ©« «¥¦ «¨ ¢¯à¨âëª § ¤¥¯ ª¥à®¬, ¨å
¥ ¯à¨è«®áì ¡ë ¨ ¯¥à¥¡à áë¢ âì! ’ ª çâ®
íâ® à¥è¥¨¥ ¢â®à®¢ ¤®¢®«ì® áâà ®.
+#eb-2¡ ©â HL¤«ï ¯¥à¥¬¥é¥¨ï 㯠ª®-
¢ ®£® ¡«®ª (á ¯®¬®éìîLDDR);
+#ed-2¡ ©â DE, «®£¨ç®;
+#ef-2¡ ©â BC, «®£¨ç®;
+#f1- ¤à¥á, ªã¤ à ᯠª®¢ë¢ âì(DE');
+#f3- ¯¥à¢ë¥2¡ ©â ¡¨â®¢®£® ¯®â®ª .
„ «¥¥ ᮣ« á® ¡¨â®¢®¬ã ¯®â®ªã:
%0- ¯à®áâ® ¡ ©â (¨§ ¡ ©â®¢®£® ¯®â®ª );
%100-puts=2.Š®à®âª ï áá뫪 : disp8 ¢
¡ ©â®¢®¬ ¯®â®ª¥(1..256,¯à¨çñ¬0ᮮ⢥-
âáâ¢ã¥â1¨ â.¤.!);
%101-puts=3;
%110-puts=4;
%11101-puts=5;
%11110-puts=6;
%1111100-puts=7;
%1111101-puts=8;
%1111110-puts=9;
%111111100-puts=10;
%111111101-puts=11;
%111111110-puts=12;
%11111111100-puts=13;
%11111111101-puts=14;
%11111111110-puts=15;
%11111111111-puts=16;
%11100- ¢§ïâì ¥ª¨©byte¨§ ¡ ©â®¢®£® ¯®-
⮪ . …᫨-1,â® ¯à¥à¢ âì à ᯠª®¢ªã.
…᫨-2,â® á«¥¤ãî騥 2¡ ©â ¢ ¡ ©â®¢®¬
¯®â®ª¥ - íâ® puts, ¨ ç¥ puts=byte+17=
=17..270.
<20>®â®¬ ¤«ï ¢á¥å ááë«®ª,ªà®¬¥puts=2(¤«ï
¥ñ ¢ëè¥ ¡ë«® ¯¨á ® ®á®¡®), á«¥¤ãî騬
®¡à §®¬ ¢ëç¨á«ï¥âáïdisp(ãçâ¨â¥, çâ® ¢MS
Packdisp¥áâ ¤ àâë© - ® ¢ëç¨â ¥âáï ¨§
¤à¥á -1! ˆ¬¥® ¯®í⮬㠢puts=2ãâ®ç¥-
®, ç⮠祬ã ᮮ⢥âáâ¢ã¥â!):
%1- «®£¨ç®puts=2;
%0000-dispH=1,§¤¥áì ¨ ¤ «¥¥dispL¡¥àñ-
âáï ¨§ ¡ ©â®¢®£® ¯®â®ª ¯®á«¥dispH;
%0001-dispH=2;
%00100-dispH=3;
%00101-dispH=4;
%00110-dispH=5;
%00111-dispH=6;
%010000-dispH=7;
%010001-dispH=8;
%010010-dispH=9;
%010011-dispH=10;
%010100-dispH=11;
%010101-dispH=12;
%010110-dispH=13;
%0101110-dispH=14;
%0101111-dispH=15;
%0110000-dispH=16;
...
%0111110-dispH=30;
%0111111-dispH¨§ ¡ ©â®¢®£® ¯®â®ª .
¯®¤£®â®¢¨« €. Š®¤¥à
|
||||
1
Docs/FORMATS/info_guide/partitii.W
Normal file
1
Docs/FORMATS/info_guide/partitii.W
Normal file
File diff suppressed because one or more lines are too long
1
Docs/FORMATS/info_guide/pcd6_2.W
Normal file
1
Docs/FORMATS/info_guide/pcd6_2.W
Normal file
@ -0,0 +1 @@
|
||||
PCD v6.2
Powerful Code Decreaser v6.2
“¯ ª®¢é¨ª ¢ ᢮ñ ¢à¥¬ï ¨á¯®«ì§®¢ «áï
¤«ï ᦠâ¨ï RGB ª à⨮ª(.Y).‚®§¬®¦®, ¨¬
㯠ª®¢ ë ¬®£¨¥ ¦ãà «ë. ‚®§¬®¦®, ¨¬¥®
§¤¥áì ¯®ï¢¨«®áì áâ ¤ à⮥ ¤¥à¥¢® ¨§16
¢ ਠ⮢,ª®â®à®¥ ¢¯®á«¥¤á⢨¨ ¯®¯ «® ¢MS
Pack, Hrum, Hrust...<05>¥ ¡¥àãáì ã⢥ত âì
¨ç¥£®...
‚ ª®¬¯«¥ªâ¥ á ª®¬¯à¥áá®à®¬ ¯à¨« £ îâáï
à ᯠª®¢é¨ª¨ ¢ ¨á室¨ª å. <20>â® à¥è ¥â ¬®-
£¨¥ ¯à®¡«¥¬ë,¤ ¢ ï ¢®§¬®¦®áâì ¢ë¡à âì,ª ª
¨á¯®«ì§®¢ âì à ᯠª®¢é¨ª. <20> ᯠª®¢é¨ª¨ ¥-
¤®áâ â®ç® ®¯â¨¬¨§¨à®¢ ë,® «¨ç¨¥ ¨áå®-
¤¨ª®¢ ¯®§¢®«ï¥â à¥è¨âì ¨ íâ®â ¢®¯à®á.
ˆ¬¥îâáï ¡¨â®¢ë© ¨ ¡ ©â®¢ë© ¯®â®ª¨,¡¨â®-
¢ë© ¯®â®ª ¢ë¡¨à ¥âáï ¯® 2 ¡ ©â . „«ï à ¡®-
âë ¨á¯®«ì§ã¥âáï á⥪ (¯à¨æ¨¯DJNZ:POP HL:
LD B,C:ADD HL,HL).
“¯ ª®¢ ë© ¡«®ª ç¨ ¥âáï á5¡ ©â,
®â®áïé¨åáï ª ª®æã ä ©« , ¯®â®¬ «¥¦ â2
¯¥à¢ëå ¡ ©â ¡¨â®¢®£® ¯®â®ª .
„ «¥¥ ᮣ« á® ¡¨â®¢®¬ã ¯®â®ªã:
%1- ¯à®áâ® ¡ ©â (¨§ ¡ ©â®¢®£® ¯®â®ª );
%000,xxxx-puts=1.‘¢¥à媮à®âª ï áá뫪 á
disp=xxxx+1=1..16;
%001-puts=2.Š®à®âª ï áá뫪 ,dispL¨§¢-
«¥ª ¥âáï ¨§ ¡ ©â®¢®£® ¯®â®ª . …᫨-1,â®
¢ë室 ¨§ à ᯠª®¢é¨ª ,¨ ç¥dispL ¥¤¨-
¨æã ¡®«ìè¥ ¯à®ç¨â ®£®;
%010-puts=3.‡¤¥áì ¨ ¤ «¥¥ á«¥¤ãî騬 ®¡-
à §®¬ ®¯à¥¤¥«ï¥âáïdisp:¨§ ¡ ©â®¢®£® ¯®-
⮪ áç¨âë¢ ¥âáïdispL, dispH¨§ ¡¨â®-
¢®£® ¯®â®ª ¯® ¤¥à¥¢ã:
%0-dispH=0,
%1000-dispH=1,
%1010-dispH=2,
%1100-dispH=3,
%1110-dispH=4,
%1011000-dispH=5,
¨ â.¤. Š®¤ë ç¨ îâáï á ¥¤¨¨æë ¨ ¨¬¥îâ
áâàãªâãàã:2 ¨ä®à¬ 樮ëå ¡¨â ,1¡¨â
¯à¨§ ª ®ª®ç ¨ï(0=®ª®ç ¨¥)¨ â.¤.„®
8¡¨âdispH. Šàã¯ë© ¥¤®áâ ⮪ - ᮢ¥à-
襮 ¥ ¨á¯®«ì§ãîâáï ª®¤ë, ç¨ î騥áï á
%1001...
%01101-puts=4;
%01110-puts=5;
%0111100-puts=6;
%0111101-puts=7;
%0111110-puts=8;
%011111100-puts=9;
%011111101-puts=10;
%011111110-puts=11;
%01111111100-puts=12;
%01111111101-puts=13;
%01111111110-puts=14;
%01111111111-puts=15;
%01100- ¢§ïâì ¥ª¨©byte¨§ ¡ ©â®¢®£® ¯®-
⮪ . …᫨0,â® áç¨â âì 2¡ ©â puts¨§
¡ ©â®¢®£® ¯®â®ª , ¨ ç¥puts=byte+15.
¯®¤£®â®¢¨« €. Š®¤¥à
|
||||
1
Docs/FORMATS/info_guide/rip0.W
Normal file
1
Docs/FORMATS/info_guide/rip0.W
Normal file
File diff suppressed because one or more lines are too long
5
Docs/FORMATS/info_guide/trf.TXT
Normal file
5
Docs/FORMATS/info_guide/trf.TXT
Normal file
@ -0,0 +1,5 @@
|
||||
запускаемый файл для DNA OS и iS-DOS.
|
||||
|
||||
первые три байта - t,r,f
|
||||
далее два байта - стартовый адрес,далее - сам кодовой блок.
|
||||
|
||||
1
Docs/FORMATS/info_guide/v384.W
Normal file
1
Docs/FORMATS/info_guide/v384.W
Normal file
@ -0,0 +1 @@
|
||||
384x304 viewer
„ ï ¯à®£à ¬¬ ¯®§¢®«ï¥â ¯à®á¬ âà¨Ä
¢ âì æ¢¥âë¥ ª à⨪¨,¯® à §¬¥à ¬ ¯à¥¢ëè Ä
î騥 íªà (¨¬¥¥âáï ¤¢ ०¨¬ -256x192¨
384x304,®¨ ¯¥à¥ª«îç îâáï ª®¯ª®©"0").
<0A>à®£à ¬¬ ®ä®à¬«¥ ¢ ¢¨¤¥ ¨á室¨ª (â.¥.
ç¥à®¢®© ¢ ਠâ, á ª®â®àë¬ ¬®¦¥â¥ ¯®íªáÄ
¯¥à¨¬¥â¨à®¢ âì ¨ ¢ë - ® ¯à¥ªà á® ¯à®Ä
ª®¬¬¥â¨à®¢ ), §¢ ¨ï ä ©«®¢ ª à⨪¨
㪠§ë¢ îâáï ¢INCBIN' å¢ ª®æ¥. Š à⨪
¤®«¦ ¨¬¥âì ä®à¬ âch$,áâàãªâãàã ª®â®à®Ä
£® ï ᥩç á à á᪠¦ã.
+0"chr$"
+4è¨à¨ ¢ § ª®¬¥áâ å
+5¢ëá®â ¢ § ª®¬¥áâ å
+6à §¬¥à § ª®¬¥áâ ¢ ¡ ©â å:
8=ç/¡,
9=梥⮥,
18=2-íªà ®¥ 梥⮥.
+7¢á¥ § ª®¬¥áâ , á«¥¢ ¯à ¢®, ᢥàåã
¢¨§.
<20>à®£à ¬¬ á ¯à¨¬¥à®¬ ª à⨪¨ «¥¦¨â ¢
¯à¨«®¦¥¨¨, ¢ à娢¥ .rar.
ˆá室¨ª ª®¢¥àâ®à ¨§ ç¥âëàñåimg¢
®¤¨ ch$ ¯à¨« £ ¥âáï.ch$â ª®£® à §¬¥à
ª ª à § § ¨¬ ¥â ¯®ç⨠¢áî ᢮¡®¤ãî 128k
¯ ¬ïâì, ¥ § ïâãî ०¨¬®¬384x304.
Šà®¬¥ ⮣®, ª®¢¥àâ¨à®¢ âì ®¡ëçë© íªÄ
à ¢ch$㬥¥â ®¢ ï ¢¥àá¨ï ¬®¥£® íªà Ä
®£® ª®¢¥àâ®à to8c.
Alone Coder
|
||||
1
Docs/FORMATS/info_guide/videos.W
Normal file
1
Docs/FORMATS/info_guide/videos.W
Normal file
File diff suppressed because one or more lines are too long
114
Docs/FORMATS/info_guide/xlpz
Normal file
114
Docs/FORMATS/info_guide/xlpz
Normal file
@ -0,0 +1,114 @@
|
||||
Äåêîìïðåññîð Ìåäíîíîãîâà, èñïîëüçîâàâøèéñÿ, ïî-âèäèìîìó, â "׸ð-
|
||||
íîì Âîðîíå", ëþáîïûòåí òåì,÷òî áèòîâûé ïîòîê â åãî ôîðìàòå îòñó-
|
||||
òñòâóåò - íåñìîòðÿ íà îñíîâàííîå íà LZ ñæàòèå. Çà ñ÷¸ò ýòîãî ïî-
|
||||
ëó÷åí íåêîòîðûé âûèãðûø â ñêîðîñòè è ïðîèãðûø â ïëîòíîñòè.
|
||||
|
||||
 òåêñòå êîììåíòàðèè: æ¸ëòûå - àâòîðñêèå, çåë¸íûå - ìîè.
|
||||
|
||||
;Äåêîìïðåññîð äëÿ v 3.01
|
||||
;HL-îòêóäà DE-êóäà
|
||||
;DLPCB DEFM "v301"
|
||||
|
||||
DELPZ PUSH DE
|
||||
LD DE,DLPCB
|
||||
LD BC,4
|
||||
LDIR
|
||||
POP DE
|
||||
xpD0 LD A,(HL)
|
||||
SRL A
|
||||
JR NC,xpD1
|
||||
CALL xpSUB ;short copy
|
||||
RRA ;%AAAlenB1
|
||||
RL B ; ^^^nopacked
|
||||
AND 7
|
||||
xpM2 JR NZ,xpNex ;len<=9
|
||||
LD A,(HL) ;len>9
|
||||
INC HL
|
||||
xpNex LD C,(HL) ;disp (ñ ó÷¸òîì B)
|
||||
INC HL
|
||||
PUSH HL
|
||||
LD H,D
|
||||
LD L,E
|
||||
SBC HL,BC
|
||||
LD B,0
|
||||
LD C,A
|
||||
xpM1 INC BC
|
||||
INC BC ;>=3
|
||||
LDIR
|
||||
POP HL
|
||||
EX AF,AF'
|
||||
JR Z,xpD0
|
||||
JR NZ,xpDRR ;nocompr 1..7
|
||||
|
||||
xpD1 RRA
|
||||
JR C,xpZ1
|
||||
RRA
|
||||
JR C,xpZ2
|
||||
JR Z,xpDEND ;%xxxxx000
|
||||
INC HL
|
||||
xpDRR LD B,A ;nocompr 1..31
|
||||
xpDL0 LD A,(HL)
|
||||
INC HL
|
||||
XOR (HL)
|
||||
LD (DE),A
|
||||
INC DE
|
||||
DJNZ xpDL0
|
||||
JR xpD0
|
||||
|
||||
xpZ2 SRL A ;%xxxxx100 ;repeat
|
||||
JR C,xpZ2L
|
||||
LD C,A
|
||||
XOR A
|
||||
EX AF,AF'
|
||||
xpZ22 INC HL
|
||||
PUSH HL
|
||||
LD H,D
|
||||
LD L,E
|
||||
DEC HL
|
||||
JR xpM1
|
||||
|
||||
xpZ2L CALL xpSUB ;%xxxX1100
|
||||
RRA ; ^
|
||||
RL B ;0/1
|
||||
LD C,(HL)
|
||||
JR xpZ22
|
||||
|
||||
xpZ1 SRL A ;%xxxxxx10
|
||||
JR NC,xpTWO
|
||||
LD C,A ;%xxxxx110 ;long copy
|
||||
INC HL
|
||||
LD A,(HL)
|
||||
AND #1F
|
||||
LD B,A
|
||||
LD A,C
|
||||
CALL xpSUB
|
||||
OR A
|
||||
JR xpM2
|
||||
|
||||
xpTWO INC A ;äâà áàéòà %xxxxx010
|
||||
LD C,A ;=1..32
|
||||
INC HL
|
||||
PUSH HL
|
||||
LD H,D
|
||||
LD L,E
|
||||
SBC HL,BC
|
||||
LD C,2
|
||||
LDIR
|
||||
POP HL
|
||||
JR xpD0
|
||||
|
||||
xpDEND LD HL,DLPCB ;%xxxxx000
|
||||
LD C,4
|
||||
LDIR
|
||||
RET
|
||||
|
||||
xpSUB EX AF,AF' ;ïîìåñòèòü 3 ñò.áèòà òåêóùåãî áàéòà â A'
|
||||
LD A,(HL)
|
||||
RLCA
|
||||
RLCA
|
||||
RLCA
|
||||
AND 7
|
||||
EX AF,AF'
|
||||
INC HL
|
||||
RET
|
||||
|
||||
BIN
Docs/FORMATS/mod.rar
Normal file
BIN
Docs/FORMATS/mod.rar
Normal file
Binary file not shown.
23
Docs/FORMATS/scl.hdr
Normal file
23
Docs/FORMATS/scl.hdr
Normal file
@ -0,0 +1,23 @@
|
||||
|
||||
.SCL δ ©«λ
|
||||
----------
|
||||
|
||||
”®p¬ β scl ―p¨¤y¬ « Pavel Nedelin (Paul Pavlov) ¨ ―®<E28095> ¬¥οβμ ¥£®
|
||||
¥ α®΅¨p ¥βαο :) (Ά¥«¨<C2AB> <20>®««¥<C2AB>ζ¨ο α<>®Ά¥pη¥λε δ ©«®Ά)
|
||||
|
||||
‘βpy<EFBFBD>βyp α«¥¤yξι ο:
|
||||
- ―¥pΆλ¥ 8 ΅ ©β - SINCLAIR (®βαξ¤ ¨ p αθ¨p¥¨¥ - scl :)
|
||||
- ΅ ©β 9 - η¨α«® ΅«®<C2AB>®Ά
|
||||
―®α«¥ η¥£®:
|
||||
- § £®«®Ά®<CE86> 1-£® δ ©« (14 ΅ ©β ¨§ <20> β «®£ ΅¥§ track/sec)
|
||||
[§ £®«®Ά®<CE86> 2-£® δ ©« , ...]
|
||||
§ ⥬:
|
||||
- <20>®¤®Άλ© ΅«®<C2AB> 1
|
||||
[<5B>®¤®Άλ© ΅«®<C2AB> 2, ...]
|
||||
¨ <C2AD>®¥ζ:
|
||||
- ―®α«¥¤¨¥ 4 ΅ ©β - <20>®βp®«μ ο αy¬¬ ( p¨δ¬¥β¨η¥α<C2A5> ο)
|
||||
|
||||
‚ ®β«¨η¨¥ ®β β ―®Άα<CE86>®£® δ®p¬ β § £®«®Ά<C2AE>¨ ¥ ―¥p¥¬¥θ¨Ά ξβαο
|
||||
α <20>®¤®Άλ¬¨ ΅«®<C2AB> ¬¨ - ¤«ο y¤®΅αβΆ ―®α¥<CEB1>β®p®£® <20>®―¨p®Ά ¨ο
|
||||
Ά tr-dos ¨«¨ trd.
|
||||
|
||||
25
Docs/FORMATS/scr.hdr
Normal file
25
Docs/FORMATS/scr.hdr
Normal file
@ -0,0 +1,25 @@
|
||||
|
||||
.SCR-ä ©«ë
|
||||
-----------
|
||||
|
||||
.SCR-ä ©«ë - íâ® ¤ ¬¯ë ¯ ¬ï⨠¯¥à¢ëå 6912 ¡ ©â®¢ ‘¯¥ªâà㬮¢áª®£® އ“.
|
||||
‘¢ï§ì ¬¥¦¤ã ª®®à¤¨ â ¬¨ x ¨ y ¨ ¤à¥á ¬¨ ¢ ¤¨á¯«¥©®¬ ä ©«¥ á«¥¤ãîé ï:
|
||||
|
||||
16384+INT (x/8)+1792*INT (y/64)-2016*INT (y/8)+256*y
|
||||
|
||||
Ÿ ¯®¨¬ î, çâ® íâ® ¥ «ãç訩 ᯮᮡ à á᪠§ë¢ âì ®¡ ®à£ ¨§ 樨 íªà
|
||||
‘¯¥ªâà㬠, ® ¥á«¨ ®ç¥ì ¯à殮® ¯®¬®§£®¢ âì ¤ í⮩ ä®à¬ã«®©, â®
|
||||
¨§ ¥¥ ¬®¦® "¢ëâïãâì" ¢áî ¥®¡å®¤¨¬ãî ¨ä®à¬ æ¨î. Œ« ¤è¨¥ âਠ¡¨â
|
||||
ª®®à¤¨ âë x ®¯à¥¤¥«ïîâ ª ª®© ¡¨â ¢ ¤à¥á¥ ᮮ⢥âáâ¢ã¥â ¤ ®¬ã
|
||||
¯¨ªá¥«ã. ’ ª ï ¯®¡¨â ï à ᪫ ¤ª ®â¢¥ç ¥â ¡®«ì襩 ç á⨠íªà ®©
|
||||
¯ ¬ïâ¨: 256*192/8=6144 ¡ ©â®¢. Žáâ «ìë¥ 768 ¡ ©â®¢ åà ïâ ¨ä®à¬ æ¨î ®
|
||||
梥⮢ëå âਡãâ å íªà . €¤à¥á ¢ ä ©«¥ âਡã⮢, ᮮ⢥âáâ¢ãî騩
|
||||
ª®®à¤¨ ⥠x,y ¬®¦¥â ¡ëâì ©¤¥ ¯® ä®à¬ã«¥:
|
||||
|
||||
22528+INT (x/8)+32*INT (y/8)
|
||||
|
||||
Œ« ¤è¨¥ âਠ¡¨â ¢ ¡ ©â¥ âਡã⮢ ®¯à¥¤¥«ïîâ æ¢¥â ¯¥à¥¤¥£® ¯«
|
||||
(梥⠢ª«îç¥ëå ¯¨ªá¥«®¢). <20>¨âë 3-5 ᮮ⢥âáâ¢ãîâ æ¢¥âã ä® . <20>¨â 6 -
|
||||
¡¨â ïમáâ¨, ¡¨â 7 - ¯à¨§ ª ¬¨£ ¨ï. …᫨ ® ¢ª«îç¥, â® ç¥à¥§
|
||||
ª ¦¤ë¥ 16/50 ¤®«¥© ᥪã¤ë ULA ¯¥à¥ª«îç ¥â æ¢¥â ¯¥à¥¤¥£® ¨ § ¤¥£®
|
||||
¯« .
|
||||
79
Docs/FORMATS/sna
Normal file
79
Docs/FORMATS/sna
Normal file
@ -0,0 +1,79 @@
|
||||
=======================================================================
|
||||
| Forwarded by Vyacheslav Mednonogov (2:5030/675.30)
|
||||
| Area : ZX.SPECTRUM.ARCHIVE (ZX.SPECTRUM.ARCHIVE)
|
||||
| From : Michael Markowsky, 2:5020/378 (10 Oct 96 18:12)
|
||||
| To : All
|
||||
Subj : .SNA
|
||||
=========================================================================
|
||||
Hello, All!
|
||||
|
||||
<EFBFBD> § 㦠ãâ ¯®è¥« p §£®¢-ä ©« å, â® ¢®â ¥£® ä®p¬ â (¨§ ¨â¥p¥â®¢áª®£®
|
||||
SPECTRUM.FAQ, ¢ ª®â®p®¬, áp¥¤¨ ¯p®ç¥£®, ®¯¨á ë ä®p¬ âë p §«¨çëå á ¯è®â®¢):
|
||||
|
||||
=====================================================================
|
||||
2. Mirage Microdrive .SNA format used by Spectrum 1.7 and JPP
|
||||
Notice, that in Intel CPUs the least significant byte goes first.
|
||||
When the registers have been loaded, a RETN command is required to
|
||||
start the program. IFF2 is short for interrupt flip-flop 2, and for
|
||||
all practical purposes is the interrupt-enabled flag. Set means
|
||||
enabled.
|
||||
|
||||
ffset Size
|
||||
------------------------------------------------------------------------------
|
||||
0 1 db I
|
||||
1 8 dw HL',DE',BC',AF'
|
||||
9 10 dw HL,DE,BC,IY,IX
|
||||
19 1 db Interrupt (bit 2 contains IFF2, 1=EI/0=DI)
|
||||
20 1 db R
|
||||
21 4 dw AF,SP
|
||||
25 1 db IntMode (0=IM0/1=IM1/2=IM2)
|
||||
26 1 db BorderColor (0..7, not used by Spectrum 1.7)
|
||||
27 49152 RAM dump 16384..65535
|
||||
------------------------------------------------------------------------------
|
||||
Total: 49179 bytes
|
||||
==============================================================================
|
||||
|
||||
Šáâ â, ¦¥« î騥 ¬®£ã íâ®â FAQ:
|
||||
|
||||
SPE_FAQ.LZH 249696 [004] comp.sys.sinclair
|
||||
Sinclair ZX Spectrum FAQ
|
||||
v.2.7 (February 13 1995)
|
||||
|
||||
€ ¥á« ã ª®£®-â® ¥áâ좥¦¨© FAQ, â® å®p®è® ¡ë ¥£® áî¤ § ª¨ãâì ¨«¨ ¢
|
||||
ä ©«íåã.
|
||||
|
||||
est wishes! Mi-+-
|
||||
+ Origin: KLUG's BBS _ 0:00-7:30 _ USR Courier V.Evr HST DS (2:5020/378)
|
||||
|
||||
==========ReadMeAgai==============================================
|
||||
|
||||
t Msg, All!
|
||||
|
||||
|
||||
|
||||
[I---------------ï稬 ¯à¨¢¥â®¬, ‘« ¢ !
|
||||
‚¨àâã «ì ï <20>¥ «ì ï …¤¨¨æ <-------- H¥ïન© †¥¬çã£
|
||||
mailme: copper_feet@mail.ru icq#me: 81191986
|
||||
|
||||
--- GNS-2000 v.3.00. * Origin: -= MADE BY COPPER FEET =- (2:5030/675.30)
|
||||
|
||||
|
||||
|
||||
struct hdrSNA128 {
|
||||
unsigned char i;
|
||||
unsigned short althl, altde, altbc, altaf;
|
||||
unsigned short hl, de, bc, iy, ix;
|
||||
unsigned char iff1; /* 00 - reset, FF - set */
|
||||
unsigned char r;
|
||||
unsigned short af, sp;
|
||||
unsigned char im,pFE;
|
||||
unsigned char page5[PAGE]; // 4000-7FFF
|
||||
unsigned char page2[PAGE]; // 8000-BFFF
|
||||
unsigned char active_page[PAGE]; // C000-FFFF
|
||||
/* 128k extension */
|
||||
unsigned short pc;
|
||||
unsigned char p7FFD;
|
||||
unsigned char trdos;
|
||||
// unsigned char pages[PAGE]; // all pages, except already saved
|
||||
// (m.b. 5 or 6 pages)
|
||||
};
|
||||
66
Docs/FORMATS/tap.hdr
Normal file
66
Docs/FORMATS/tap.hdr
Normal file
@ -0,0 +1,66 @@
|
||||
|
||||
.TAP-ä ©«ë:
|
||||
-----------
|
||||
|
||||
<20>â¨ ä ©«ë ᮤ¥à¦ â ¡«®ª¨ ¤ ëå, á®åà ¥ëå ª ª ¡ë «¥âã. ‚á¥
|
||||
¡«®ª¨ ç¨ îâáï á ¤¢ãå ¡ ©â®¢, ¢ ª®â®àëå 㪠§ ® ᪮«ìª® ¡ ©â®¢ §
|
||||
¨¬¨ á«¥¤ã¥â (¥ áç¨â ï íâ¨å ¤¢ãå ¡ ©â®¢). ‡ ⥬ ¨¤ãâ á ¬¨ ¤ ë¥,
|
||||
¢ª«îç î騥 ä« £®¢ë© ¡ ©â ¨ ¡ ©â ª®â஫쮩 á㬬ë. <20> ©â ª®â஫쮩
|
||||
áã¬¬ë ¯®«ãç ¥âáï ¢ १ã«ìâ ⥠¯®á«¥¤®¢ ⥫쮩 ®¯¥à 樨 XOR ¤«ï ¢á¥å
|
||||
¡ ©â®¢, ¢ª«îç ï ä« £®¢ë© ¡ ©â. <20> ¯à¨¬¥à, ¥á«¨ ¢ë § å®â¨â¥ ¢ë£à㧨âì
|
||||
¯ àã ¡ ©â®¢ ¨§ <20>‡“ ª®¬ ¤®©: SAVE "ROM" CODE 0,2, â® ¯®«ãç¨â¥ ¢
|
||||
१ã«ìâ â¥:
|
||||
|
||||
|-----„ ë¥, £¥¥à¨àã¥¬ë¥ ‘¯¥ªâà㬮¬--| |---------|
|
||||
|
||||
13 00 00 03 52 4f 4d 7x20 02 00 00 00 00 80 f1 04 00 ff f3 af a3
|
||||
|
||||
^^^^^...... ¤«¨ ¯¥à¢®£® ¡«®ª (19¡.=17¡.åí¤¥à+ä« £+ª®âà.á㬬 )
|
||||
^^... ä« £®¢ë© ¡ ©â (00 ¤«ï åí¤¥à , ff ¤«ï ¡«®ª ¤ ëå)
|
||||
^^ ¯¥à¢ë© ¡ ©â åí¤¥à , 㪠§ë¢ î騩 ⨯ ¤ ëå
|
||||
|
||||
¨¬ï ä ©« ..^^^^^^^^^^^^^
|
||||
¨ä®à¬ æ¨ï ¢ åí¤¥à¥.......^^^^^^^^^^^^^^^^^
|
||||
ª.á. åí¤¥à .................................^^
|
||||
¤«¨ ¢â®à®£® ¡«®ª ............................^^^^^
|
||||
ä« £®¢ë© ¡ ©â 2-£® ¡«®ª ..............................^^
|
||||
¯¥à¢ë¥ ¤¢ ¡ ©â <20>‡“....................................^^^^^
|
||||
ª®â஫ì ï á㬬 ¯¥à¢ëå ¤¢ãå ¡ ©â®¢ ¨ ä« £®¢®£® ¡ ©â ........^^
|
||||
|
||||
|
||||
<20>¬ã«ïâ®à ¢á¥£¤ áç¨âë¢ ¥â ¡ ©âë á ç « ¡«®ª . …᫨ § £à㦠¥âáï
|
||||
¬¥ìè¥ ¡ ©â®¢, 祬 ¥áâì ¢ «¨ç¨¨, â® «¨è¨¥ ¡ ©âë ¯à®¯ã᪠îâáï ¨
|
||||
¯®á«¥¤¨© § £àã¦¥ë© ¡ ©â à áᬠâਢ ¥âáï ª ª ª®â஫ì ï á㬬 . …᫨
|
||||
§ ¯à 訢 ¥âáï § £à㧪㠡®«ìè¥ ¡ ©â®¢, 祬 ¥áâì ¢ «¨ç¨¨, â®
|
||||
§ £à㦠îé ï ¯à®æ¥¤ãà ¯à¥àë¢ ¥âáï á ¢ª«î票¥¬ ä« £ ,
|
||||
ᢨ¤¥â¥«ìáâ¢ãî饣® ®¡ ®è¨¡ª¥ ¢¢®¤ á «¥âë. Ž¡à ¡®âªã ®è¨¡ª¨
|
||||
¯à®¨§¢®¤¨â ¢ë§ë¢ ¥¬ ï Z80 ¯à®æ¥¤ãà .
|
||||
|
||||
Ž¡à â¨â¥ ¢¨¬ ¨¥ â®, çâ® ¬®¦® ®¡ê¥¤¨ïâì .’€<E28099>-ä ©«ë ¯à®áâë¬
|
||||
"¯à¨á⥣¨¢ ¨¥¬" ¨å ¤à㣠ª ¤àã£ã, ¯à¨¬¥à â ª:
|
||||
|
||||
COPY /B FILE1.TAP + FILE2.TAP ALL.TAP
|
||||
|
||||
„«ï ¯®«®âë ª àâ¨ë ï ¢ª«îçã áî¤ ¦¥ ¨ áâàãªâãàã åí¤¥à . Ž ¢á¥£¤
|
||||
á®á⮨⠨§ 17 ¡ ©â®¢:
|
||||
|
||||
<20> ©â „«¨ ޝ¨á ¨¥
|
||||
0 1 ’¨¯ ä ©« (0,1,2 ¨«¨ 3)
|
||||
1 10 ˆ¬ï ä ©« (¥á«¨ ¬¥ìè¥ 10 ᨬ¢®«®¢, ¢áâ ¢«ïîâáï
|
||||
¯à®¡¥«ë )
|
||||
11 2 „«¨ ¡«®ª ¤ ëå
|
||||
13 2 <20> à ¬¥âà 1
|
||||
15 2 <20> à ¬¥âà 2
|
||||
|
||||
’¨¯ ä ©« 0,1,2,3 ᮮ⢥âáâ¢ã¥â: ¯à®£à ¬¬¥, ç¨á«®¢®¬ã ¬ áᨢã,
|
||||
ᨬ¢®«ì®¬ã ¬ áᨢã, ¡«®ªã ª®¤®¢. <20>ªà ë¥ ä ©«ë SCREEN$
|
||||
à áᬠâਢ îâáï ª ª ä ©«ë ª®¤®¢, ç¨ î騥áï ¢ 16384 ¨ ¨¬¥î騥 ¤«¨ã
|
||||
6912 ¡ ©â®¢. …᫨ ä ©« ï¥âáï ¯à®£à ¬¬®©, â® ¯ à ¬¥âà-1 ᮤ¥à¦¨â
|
||||
®¬¥à áâப¨ ¢â®áâ àâ ¨«¨ ç¨á«®, ¡®«ì襥, 祬 32768, ¥á«¨ ®¬¥à
|
||||
áâப¨ ¢â®áâ àâ ¥ 㪠§ . ¯ à ¬¥âà-2 ᮤ¥à¦¨â ᬥ饨¥ ¤à¥á
|
||||
¯à®£à ¬¬ëå ¯¥à¥¬¥ëå ®â®á¨â¥«ì® ¤à¥á ç « ¯à®£à ¬¬ë. „«ï ¡«®ª
|
||||
ª®¤®¢ ¯ à ¬¥âà-1 ᮤ¥à¦¨â ¤à¥á, ¨§ ª®â®à®£® íâ®â ¡«®ª ¢ë£à㦠«áï,
|
||||
¯ à ¬¥âà 2 ᮤ¥à¦¨â ç¨á«® 32768. „«ï ä ©«®¢ ¤ ëå (¬ áᨢ®¢) ¡ ©â,
|
||||
à ᯮ«®¦¥ë© ¢ ¯®§¨æ¨¨ 14 ᮤ¥à¦¨â ¨¬ï ¯¥à¥¬¥®©.
|
||||
|
||||
|
||||
102
Docs/FORMATS/trd.hdr
Normal file
102
Docs/FORMATS/trd.hdr
Normal file
@ -0,0 +1,102 @@
|
||||
|
||||
.TRD д ©«л
|
||||
----------
|
||||
|
||||
ќ«Ґ¬Ґв Є в «®Ј .
|
||||
ДДДДДДДДДДДДДДДДД
|
||||
Љ ¦¤®¬г д ©«г ў ®Ў« cвЁ Є в «®Ј cв ўЁвcп ў c®®вўҐвcвўЁҐ в Є
|
||||
§лў Ґ¬л© н«Ґ¬Ґв Є в «®Ј , p ўл© 16 Ў ©в ¬. ’ ЄЁ¬ ®Ўp §®¬ ®¤®©
|
||||
¤ЁcЄҐвҐ, Ґ§ ўЁcЁ¬® ®в ®ЎкҐ¬ , ¬®¦Ґв Ўлвм § ЇЁc ® ¤® 128 д ©«®ў. ‚
|
||||
в Ў«ЁжҐ ЇpЁўҐ¤Ґ д®p¬ в н«Ґ¬Ґв Є в «®Ј . ќвЁе ¤ ле ўЇ®«Ґ ¤®cв в®з®
|
||||
¤«п ®ЇЁc Ёп «оЎ®Ј® ў®§¬®¦®Ј® д ©« .
|
||||
ЙНННННННННСНННННСННННННННННННННННННННН»
|
||||
єC¬ҐйҐЁҐ і„«Ё і H § 票Ґ є
|
||||
є®в з « і і є
|
||||
ЗДДДДДДДДДЕДДДДДЕДДДДДДДДДДДДДДДДДДДДД¶
|
||||
є #00 і 8 і €¬п д ©« є
|
||||
є #08 і 1 і ’ЁЇ д ©« є
|
||||
є #09 і 2 і Џ p ¬Ґвp START є
|
||||
є #0B і 2 і Џ p ¬Ґвp LENGTH є
|
||||
є #0D і 1 і Љ®«ЁзҐcвў® cҐЄв®p®ў є
|
||||
є #0E і 1 і H®¬Ґp 1Ј® cҐЄв®p є
|
||||
є #0F і 1 і H®¬Ґp ¤®p®¦ЄЁ є
|
||||
ИНННННННННПНННННПНННННННННННННННННННННј
|
||||
ќ«Ґ¬Ґвл Є в «®Ј p cЇ®«®¦Ґл ў ⮬ Ї®pп¤ЄҐ, ў Є Є®¬ еp пвcп
|
||||
д ©«л. …c«Ё нв®в Ї®p冷Є pгиЁвм, в® TR-DOS Ўг¤Ґв Їp ўЁ«м® cзЁвлў вм
|
||||
Ёд®p¬ жЁо, ® ў ҐЄ®в®pле c«гз пе ў®§¬®¦л cЎ®Ё. Ѓ ©в c® c¬ҐйҐЁҐ¬ #00
|
||||
ЁcЇ®«м§гҐвcп ЋC ¤«п § ¤ Ёп cЇҐжЁ «мле вpЁЎгв®ў д ©«г. „«п pҐ «м®
|
||||
cгйҐcвўго饣® д ©« нв®в Ў ©в c®¤Ґp¦Ёв ЇҐpўл© cЁ¬ў®« ҐЈ® Ё¬ҐЁ. ЏpЁ
|
||||
г¤ «ҐЁЁ д ©« ў нв®в д ©« § ЇЁcлў Ґвcп 1. HҐЇ®cpҐ¤c⢥® § Ї®c«Ґ¤Ё¬
|
||||
д ©«®¬ ¤®«¦Ґ cв®пвм г«Ґў®© Ў ©в. Џ® § 票о нв®Ј® д ©« ҐЄ®в®pлҐ
|
||||
Є®¬ ¤л TR-DOS ®ЇpҐ¤Ґ«пов p §¬Ґp Є в «®Ј (CAT, LIST). Ћ¤ Є® Є®¬ ¤л,
|
||||
ўлЇ®«пойЁҐ § Јpг§Єг д ©«®ў Їp®c¬ вpЁў ов ўcҐ н«Ґ¬Ґвл Є в «®Ј , ўҐ
|
||||
§ ўЁcЁ¬®cвЁ § зҐЁп Ў ©в #00.
|
||||
C«г¦ҐЎл© cҐЄв®p.
|
||||
ДДДДДДДДДДДДДДДДД
|
||||
C«г¦ҐЎл© (¤Ґўпвл© cҐЄв®p ў ®Ў« cвЁ Є в «®Ј ) ЁcЇ®«м§гҐвcп cЁc⥬®©
|
||||
¤«п еp ҐЁп Ёд®p¬ жЁЁ ® c ¬®© ¤ЁcЄҐвҐ. ‚ в Ў«ЁжҐ ЇpЁўҐ¤Ґ ҐЈ® д®p¬ в:
|
||||
ЙНННННННННННННННСНННННННСННННННННННННННННННННННННННННННННННННННННННН»
|
||||
єC¬ҐйҐЁҐ ®в і „«Ё і ‡ 票Ґ є
|
||||
є з « cҐЄв®p і і є
|
||||
ЗДДДДДДДДДДДДДДДЕДДДДДДДЕДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДє
|
||||
є #00 і 1 і Ѓ ©в 0 є
|
||||
є #01 і 224 і HҐ ЁcЇ®«м§гҐвcп (§ Ї®«Ґ® Ў ©в®¬ 0) є
|
||||
є #E1 і 1 і H®¬Ґp ЇҐpў®Ј® Ґ§ пв®Ј® cҐЄв®p ¤ЁcЄҐ є
|
||||
є #E2 і 1 і H®¬Ґp ¤®p®¦ЄЁ ЇҐpў®Ј® Ґ§ пв®Ј® cҐЄв®p є
|
||||
є #E3 і 1 і ’ЁЇ ¤ЁcЄҐвл є
|
||||
є #E4 і 1 і Љ®«ЁзҐcвў® д ©«®ў є
|
||||
є #E5 і 2 і Љ®«ЁзҐcвў® cў®Ў®¤ле cҐЄв®p®ў є
|
||||
є #E7 і 1 і €¤ҐвЁдЁЄ жЁ®л© Є®¤ TR-DOS (#10) є
|
||||
є #E8 і 2 і HҐ ЁcЇ®«м§гҐвcп (§ Ї®«Ґ® Ў ©в®¬ 0) є
|
||||
є #EA і 9 і HҐ ЁcЇ®«м§гҐвcп (§ Ї®«Ґ® Ў ©в®¬ 32) є
|
||||
є #F3 і 1 і HҐ ЁcЇ®«м§гҐвcп (§ Ї®«Ґ® Ў ©в®¬ 0) є
|
||||
є #F4 і 1 і Љ®«ЁзҐcвў® г¤ «Ґле д ©«®ў є
|
||||
є #F5 і 8 і H §ў ЁҐ ¤ЁcЄҐвл є
|
||||
є #FD і 3 і HҐ ЁcЇ®«м§гҐвcп (§ Ї®«Ґ® Ў ©в®¬ 0) є
|
||||
ИНННННННННННННННПНННННННПНННННННННННННННННННННННННННННННННННННННННННј
|
||||
Љ Є ўЁ¤® Ё§ в Ў«Ёжл, ў c«г¦ҐЎ®¬ cҐЄв®pҐ cЁc⥬®© ЁcЇ®«м§говcп
|
||||
«Ёим ҐcЄ®«мЄ® Ў ©в, § зҐЁп ®cв «мле Ґ ў ¦®. €cЄ«о票Ґ c®cв ў«пҐв
|
||||
Ў ©в c® c¬ҐйҐЁҐ¬ #00. …Ј® § 票Ґ ўcҐЈ¤ ¤®«¦® Ўлвм г«Ґўл¬.
|
||||
„ў Ў ©в #E1 Ё #E2 гЄ §лў ов з «® cў®Ў®¤®© ®Ў« cвЁ ¤ЁcЄҐ.
|
||||
ЏpЁ c®§¤ ЁЁ д ©« Ёе c®¤Ґp¦Ё¬®Ґ ЇҐpҐЇЁcлў Ґвcп ў Ў ©вЁ #0E Ё #0F
|
||||
н«Ґ¬Ґв Є в «®Ј . ЋЎкҐ¬ cў®Ў®¤®© ®Ў« cвЁ еp Ёвcп ў ¤ўге Ў ©в е c®
|
||||
c¬ҐйҐЁҐ¬ #E5.
|
||||
Ѓ ©в #E3 c®¤Ґp¦Ёв вЁЇ ¤ЁcЄҐвл, Є®в®pл© § ўЁcЁв ®в ЇpЁ¬ҐпҐ¬®Ј®
|
||||
¤ЁcЄ®ў®¤ . ЏҐpҐ¤ «оЎ®© ®ЇҐp жЁҐ© c ¤ЁcЄҐв®© cЁc⥬ " cвp Ёў Ґвcп",
|
||||
cзЁвлў п c«г¦ҐЎл© cҐЄв®p Ё Їp®ўҐpпп § 票Ґ нв®Ј® Ў ©в .
|
||||
ЙННННННННННСНННННННННННННННННННННННННННН»
|
||||
є ‡ 票Ґ і ’ЁЇ ¤ЁcЄҐвл є
|
||||
ЗДДДДДДДДДДЕДДДДДДДДДДДДДДДДДДДДДДДДДДДД¶
|
||||
є #16 і 80-¤®p®¦Ґз п, 2-cв®p®пп є
|
||||
є #17 і 40-¤®p®¦Ґз п 2-cв®p®пп є
|
||||
є #18 і 80-¤®p®¦Ґз п 1-cв®p®пп є
|
||||
є #19 і 40-¤®p®¦Ґз п 1-cв®p®пп є
|
||||
ИННННННННННПННННННННННННННННННННННННННННј
|
||||
„ў Ў ©в ў c«г¦ҐЎ®¬ cҐЄв®pҐ ®вўҐ¤Ґ® ¤«п еp ҐЁп Ёд®p¬ жЁЁ ®
|
||||
Є®«ЁзҐc⢥ д ©«®ў ¤ЁcЄҐвҐ. ‚ Ў ©в c® c¬ҐйҐЁҐ¬ #E4 § ЇЁc ® зЁc«®
|
||||
pҐ «мле н«Ґ¬Ґв®ў Є в «®Ј , в.Ґ. ¤Ґ©cвўЁвҐ«м® cўп§ ле c д ©« ¬Ё.
|
||||
Ѓ ©в #F4 еp Ёв зЁc«® г¤ «Ґле д ©«®ў. “§ вм зЁc«® д ©«®ў ¬®¦® ўлзвп
|
||||
§ 票Ґ Ў ©в #F4 Ё§ § зҐЁп Ў ©в #E4.
|
||||
ЏpЁ c®§¤ ЁЁ ®ў®Ј® д ©« , § 票Ґ Ў ©в #E4 㢥«ЁзЁў Ґвcп
|
||||
Ґ¤ҐЁжг. Љ®Ј¤ ¦Ґ Їp®Ёc室Ёв г¤ «ҐЁҐ д ©« , ў®§¬®¦л ¤ў ў pЁ в .
|
||||
ЏҐpўл©, Ў®«ҐҐ Їp®cв®© - Ґc«Ё г¤ «пҐвcп Ї®c«Ґ¤Ё© д ©« ¤ЁcЄҐ. ‚ н⮬
|
||||
c«гз Ґ Ё§ Ў ©в #E4 ўлзЁв Ґвcп Ґ¤ҐЁж , ў ЇҐpўл© Ў ©в, cўп§ ®Ј® c
|
||||
д ©«®¬ н«Ґ¬Ґв Є в «®Ј , § ЇЁcлў Ґвcп 0. ЏpЁ н⮬ ®Ў« cвм, § Ё¬ Ґ¬ п
|
||||
д ©«®¬, ®cў®Ў®¦¤ Ґвcп, Ё ў®ccв ®ўЁвм в Є®© д ©« ¬®¦® в®«мЄ® ў ⮬
|
||||
c«гз Ґ, Ґc«Ё ¤ЁcЄҐвг Ґ Ўл«® c¤Ґ« ® Ї®c«Ґ¤гойЁе § ЇЁcҐ©. …c«Ё ¦Ґ
|
||||
г¤ «пҐвcп Ґ Ї®c«Ґ¤Ё©, в® Ґ¤ҐЁж Ўг¤Ґв ¤®Ў ў«Ґ ў Ў ©в c® c¬ҐйҐЁҐ¬
|
||||
#F4, ў ЇҐpўл© Ў ©в cўп§ ®Ј® н«Ґ¬Ґв Є в «®Ј § ЇЁиҐвcп 1.
|
||||
”Ё§ЁзҐcЄ®Ј® г¤ «ҐЁп Ґ Їp®Ё§®©¤Ґв, Ё д ©« Ї® ЇpҐ¦Ґ¬г Ўг¤Ґв § Ё¬ вм
|
||||
¬Ґcв® ¤ЁcЄҐ. HҐ 㢥«ЁзЁвcп, ҐcвҐc⢥®, Ё ®ЎкҐ¬ cў®Ў®¤®© ®Ў« cвЁ.
|
||||
‚Ґpгвм в Є®© д ©« Їp®cв® - Ґ®Ўе®¤Ё¬® ў®ccв ®ўЁвм ЇҐpўл© Ў ©в н«Ґ¬Ґв
|
||||
Є в «®Ј (Ґ § Ўлў 㬥миЁвм 1 Ў ©в Ї® c¬ҐйҐЁо #F4), ® c¤Ґ« вм
|
||||
нв® ¬®¦® в®«мЄ® ¤® ўлЇ®«ҐЁп Є®¬ ¤л MOVE.
|
||||
„«п Ё¤ҐвЁдЁЄ жЁЁ ¤ЁcЄҐвл c«г¦Ёв Ў ©в c® c¬ҐйҐЁҐ¬ #E7. HҐЄ®в®pлҐ
|
||||
ЋC Ё¬Ґов cе®¤л© дЁ§ЁзҐcЄЁ© д®p¬ в. —в® Ўл ®в«ЁзЁвм "cў®Ё" ¤ЁcЄҐвл ®в
|
||||
"зг¦Ёе" TR-DOS Є ¦¤л© p § Їp®ўҐpпҐв нв®в Ў ©в.
|
||||
‡ ¤ ®Ґ ў Є®¬ ¤Ґ FORMAT Ё¬п ¤ЁcЄ еp Ёвмcп ў c«г¦ҐЎ®¬ cҐЄв®pҐ
|
||||
c® c¬ҐйҐЁҐ¬ #F5. €¬п ¤®Ї®«пҐвcп cЇp ў Їp®ЎҐ« ¬Ё ¤® 8 Ў ©в®ў.
|
||||
|
||||
|
||||
‚cҐЈ¤ ‚ и, RomanRom2
|
||||
|
||||
177
Docs/FORMATS/z80.hdr
Normal file
177
Docs/FORMATS/z80.hdr
Normal file
@ -0,0 +1,177 @@
|
||||
|
||||
.Z80-ä ©«ë
|
||||
-----------
|
||||
|
||||
‘â àë© ä®à¬ â ä ©«®¢ .Z80 (¤«ï ¢¥àᨩ ¤® 1.45) ¢ë£«ï¤¨â â ª:
|
||||
|
||||
‘¬¥é¥¨¥ „«¨ ޝ¨á ¨¥
|
||||
|
||||
0 1 <20>¥£¨áâà €
|
||||
1 1 <20>¥£¨áâà F
|
||||
2 2 <20>¥£¨áâ஢ ï ¯ à BC (á ç « ¬« ¤è¨©, â.¥. ‘)
|
||||
4 2 <20>¥£¨áâ஢ ï ¯ à HL
|
||||
6 2 <20>à®£à ¬¬ë© áç¥â稪 (<28>‘)
|
||||
8 2 “ª § ⥫ì á⥪ (SP)
|
||||
10 1 <20>¥£¨áâà ¯à¥àë¢ ¨© I
|
||||
11 1 <20>¥£¨áâà ॣ¥¥à 樨 R (<28>¨â 7 - ¥ § ç 騩)
|
||||
12 1 Bit 0 : <20> ¢¥ 7-¬ã ¡¨âã ॣ¨áâà R
|
||||
Bit 1-3: –¢¥â ¡®à¤îà
|
||||
Bit 4 : 1- ¢¯¥ç â <20>…‰‘ˆŠ SamRam
|
||||
Bit 5 : 1- ¡«®ª ¤ ëå ª®¬¯à¥áá¨à®¢
|
||||
Bit 6-7: <20>¥ § ç 騥
|
||||
13 2 <20>¥£¨áâ஢ ï ¯ à DE
|
||||
15 2 <20>¥£¨áâ஢ ï ¯ à BC'
|
||||
17 2 <20>¥£¨áâ஢ ï ¯ à DE'
|
||||
19 2 <20>¥£¨áâ஢ ï ¯ à HL'
|
||||
21 1 <20>¥£¨áâà €'
|
||||
22 1 <20>¥£¨áâà F'
|
||||
23 2 <20>¥£¨áâà IY (‘ ç « ¬« ¤è¨©)
|
||||
25 2 <20>¥£¨áâà IX
|
||||
27 1 ’ਣ£¥à ¯à¥àë¢ ¨©, 0=DI, ¨ ç¥ EI
|
||||
28 1 ’ਣ£¥à ¯à¥àë¢ ¨© IFF2 (஫¨ ¥ ¨£à ¥â)
|
||||
29 1 Bit 0-1: <20>¥¦¨¬ ¯à¥àë¢ ¨© (0, 1 ¨«¨ 2)
|
||||
Bit 2 : 1=í¬ã«ïæ¨ï 2-£® ¢ë¯ã᪠‘¯¥ªâàã¬
|
||||
Bit 3 : 1=„¢®© ï ç áâ®â ¯à¥àë¢ ¨©
|
||||
Bit 4-5: 1=‚ë᮪ ï ¢¨¤¥®á¨åந§ æ¨ï
|
||||
3=<3D>¨§ª ï ¢¨¤¥®á¨åந§ æ¨ï
|
||||
0,2=<3D>®à¬ «ì ï
|
||||
Bit 6-7: 0=Šãàá®à/Protek/AGF- ¤¦®©á⨪
|
||||
1=Š¥¬¯áâ®-¤¦®©á⨪
|
||||
2=Sinclair-«¥¢ë© ¤¦®©á⨪
|
||||
3=Sinclair-¯à ¢ë© ¤¦®©á⨪
|
||||
|
||||
<20> ¤¨ ᮢ¬¥á⨬®á⨠¥á«¨ ¡ ©â 12 à ¢¥ 255, â® ® ¯à¨¨¬ ¥âáï à ¢ë¬ 1.
|
||||
<20>®á«¥ í⮣® 30-¡ ©â®£® åí¤¥à á«¥¤ãîâ 48 ª¨«®¡ ©â®¢ ‘¯¥ªâà㬮¢áª®©
|
||||
¯ ¬ïâ¨. …᫨ ¡¨â-5 12-£® ¡ ©â à ¢¥ 1, â® ¤ ¬¯ ¯ ¬ï⨠¨¤¥â ¢
|
||||
ª®¬¯à¥áá¨à®¢ ®¬ ä®à¬ â¥. Œ¥â®¤ ª®¬¯à¥áᨨ ®ç¥ì ¯à®áâ. ‡ ¬¥ïîâáï ¢á¥
|
||||
¯®á«¥¤®¢ ⥫ì®á⨠¨¤ãé¨å ¯®¤àï¤ ¯ï⨠®¤¨ ª®¢ëå ¡ ©â®¢. ‚¬¥áâ® ¨å
|
||||
¯à®¨§¢®¤¨âáï § ¯¨áì ED ED xx yy. ‡¤¥áì ED ED - íâ® ¯à¥ä¨ªá, xx -
|
||||
ª®íä䍿¨¥â ¯®¢â®à , yy - ¯®¢â®àïî騩áï ¡ ©â. ˆâ ª, ª®¤¨àãîâáï ⮫쪮
|
||||
¯®á«¥¤®¢ ⥫ì®á⨠¨§ ¯ï⨠¯®¢â®à®¢ ¨«¨ ¡®«¥¥. ˆáª«î票¥¬ ïîâáï
|
||||
¯®á«¥¤®¢ ⥫ì®á⨠¨§ ¡ ©â®¢, à ¢ëå ED. „ ¦¥ ¥á«¨ í⮠⮫쪮 ¤¢
|
||||
¡ ©â , ¢á¥ à ¢® ®¨ ¯ ªãîâáï ED ED 02 ED. ˆ ¯®á«¥¤¥¥ ¯à ¢¨«®: «î¡®©
|
||||
¡ ©â, ¥¯®á।á⢥® á«¥¤ãî騩 § ED, ¥ 㯠ª®¢ë¢ ¥âáï ¢ ®¡é¨© ¡«®ª.
|
||||
<20> ¯à¨¬¥à, ã á ¥áâì ¯®á«¥¤®¢ ⥫ì®áâì ED 00 00 00 00 00 00. Ž ¥
|
||||
¯ ªã¥âáï, ª ª ED ED ED 06 00, ¯ ªã¥âáï ª ª ED 00 ED ED 05 00. <20>«®ª
|
||||
§ ª 稢 ¥âáï ª®æ¥¢ë¬ ¬ થ஬ 00 ED ED 00.
|
||||
|
||||
’ ª®© ä®à¬ â ä ©«®¢ .Z80 ¨á¯®«ì§®¢ «áï ¢¥àá¨ï¬¨ í¬ã«ïâ®à ¤® 1.45.
|
||||
<20> ç¨ ï á ¢¥àᨨ 2.0 ¢ á¢ï§¨ á ¯®¤¤¥à¦ª®© ä ©«®¢ ®ââ¨áª®¢ ¯ ¬ïâ¨,
|
||||
áïâëå á® 128-£® ‘¯¥ªâà㬠, ¯®ï¢¨«áï ®¢ë© ä®à¬ â. íâ®â ®¢ë© ä®à¬ â
|
||||
¨á¯®«ì§ã¥âáï ¤«ï ¢á¥å ®ââ¨áª®¢, ¥¢ ¦® 48-ëå ¨«¨ 128-ëå. <20>® í¬ã«ïâ®à
|
||||
¯®-¯à¥¦¥¬ã ¯®¨¬ ¥â ¨ áâ àë© ä®à¬ â.
|
||||
|
||||
<20>¥á¬®âàï â®, çâ® í¬ã«ïâ®à ¯®¨¬ ¥â áâ àë© ä®à¬ â, á ¬ ® ¨ª®£¤
|
||||
ä ©«®¢ .Z80 ¢ áâ ஬ ä®à¬ ⥠¥ ¯à®¨§¢®¤¨â. <20>® ¯à¨ ¦¥« ¨¨ ®¢ë© ä®à¬ â
|
||||
¬®¦® ª®¢¥àâ¨à®¢ âì ¢ áâ àë© (ª®¥ç® ⮫쪮 ¤«ï 48Š-ä ©«®¢), ¥á«¨
|
||||
¨á¯®«ì§®¢ âì ã⨫¨âã ConvZ80.
|
||||
|
||||
<20>®¢ë© ä®à¬ â ç¨ ¥âáï á â ª®£® ¦¥ 30-¡ ©â®£® åí¤¥à , çâ® ¨
|
||||
¯à¨¢¥¤¥ë© ¢ëè¥. <20>® ⥯¥àì ¡¨âë 4 ¨ 5 ä« £®¢®£® ¡ ©â (12-£®) 㦥 ¥
|
||||
¨¬¥îâ § 票ï, ¡ ©âë 6 ¨ 7 à ¢ë ã«î, çâ® £®¢®à¨â ® ⮬, çâ® íâ®
|
||||
ä ©« ¢ ®¢®¬ ä®à¬ â¥.
|
||||
|
||||
‡ ¯¥à¢ë¬¨ 30-î ¡ ©â ¬¨ á«¥¤ãîâ ¤®¯®«¨â¥«ìë¥:
|
||||
|
||||
‘¬¥é¥¨¥ „«¨ ޝ¨á ¨¥
|
||||
|
||||
* 30 2 „«¨ ¤®¯®«¨â¥«ì®£® ¡«®ª (á¬. ¨¦¥)
|
||||
* 32 2 <20>à®£à ¬¬ë© áç¥â稪
|
||||
* 34 1 €¯¯ à âë© à¥¦¨¬ (á¬. ¨¦¥)
|
||||
* 35 1 ‚ ०¨¬¥ í¬ã«ï樨 SamRam ᮤ¥à¦¨â ¡¨â®¢®¥
|
||||
á®áâ®ï¨¥ ¬¨ªà®á奬ë 74ls259.
|
||||
‚ ०¨¬¥ 128Š á®¤¥à¦¨â ¯®á«¥¤¨© ¢ë¢®¤
|
||||
¯®àâ 7FFD.
|
||||
* 36 1 ‘®¤¥à¦¨â 0FF, ¥á«¨ ¢¯¥ç â ® <20>‡“ ˆâ¥à䥩á -1
|
||||
* 37 1 <20>¨â 0: 1 ¥á«¨ ¢ª«îç¥ í¬ã«ïæ¨ï ॣ¨áâà R
|
||||
Bit 1: 1 ¥á«¨ ¢ª«îç¥ í¬ã«ïæ¨ï LDIR
|
||||
* 38 1 <20>®á«¥¤¨© ¢ë¢®¤ ¯®àâ 7FFD.
|
||||
* 39 16 ‘®¤¥à¦¨¬®¥ ॣ¨áâ஢ ¬ã§ëª «ì®£® á®¯à®æ¥áá®à
|
||||
55 2 ‘ç¥â稪 ⠪⮢ (¬« ¤è¨©)
|
||||
57 1 ‘ç¥â稪 ⠪⮢ (áâ à訩)
|
||||
58 1 ”« £®¢ë© ¡ ©â. ˆá¯®«ì§ã¥âáï ‘¯¥ªâ â®à®¬
|
||||
(í¬ã«ïâ®à ‘¯¥ªâà㬠¤«ï ª®¬¯ìîâ¥à®¢ QL)
|
||||
<20>ਠ§ £à㧪¥ Z80 ¥£® ¨£®à¨àã¥â, ¯à¨ ¢ë£à㧪¥
|
||||
¢ëáâ ¢«ï¥â ¢ ¥¬ 0.
|
||||
59 1 0FF, ¥á«¨ ¢¯¥ç â ® <20>‡“ "ƒ®à¤®"
|
||||
60 1 0FF, ¥á«¨ ¢¯¥ç â ® <20>‡“ Œ128. „®«¦® ¡ëâì 0.
|
||||
61 1 0FF, ¥á«¨ 0-8191 - އ“
|
||||
62 1 0FF, ¥á«¨ 8192-16383 - އ“
|
||||
63 10 Š« ¢¨è¨, § ¤ ë¥ ¢ ª ç¥á⢥ ¯®«ì§®¢ ⥫ì᪮£®
|
||||
¤¦®©á⨪ .
|
||||
73 10 Š« ¢¨ âãàë¥ ¤ ë¥ ¤«ï ª« ¢¨è, 㪠§ ëå
|
||||
¢ëè¥.
|
||||
83 1 ’¨¯ ãáâனá⢠"ƒ®à¤®". 0=Disciple + Epson,
|
||||
1=Disciple + HP, 16=Plus D
|
||||
84 1 ‘â âãá ª®¯ª¨ INHIBIT ¨â¥à䥩á Disciple
|
||||
: 0=¨â¥àä¥©á ®âª«îç¥, § ¨áª«î票¥¬ ¤¦®©á⨪®¢
|
||||
: 0FF=¯®¤ª«îç¥
|
||||
85 1 ”« £ INHIBIT ¨â¥à䥩á Disciple
|
||||
: 0=<3D>‡“ ¬®¦¥â ¡ëâì ¢¯¥ç â ®;
|
||||
: 0FF=¥ ¬®¦¥â ¡ëâì ¢¯¥ç â ®.
|
||||
|
||||
|
||||
‡ 票¥ ᮤ¥à¦¨¬®£® ¯®§¨æ¨¨ 30 à ¢® 23-¬ ¤«ï ¢¥àᨨ í¬ã«ïâ®à 2.01
|
||||
¨ à ¢® 54-¬ ¤«ï ¢¥àᨨ 3.0. <20>®§¨æ¨¨, ¯®¬¥ç¥ë¥ § ª®¬ "*",
|
||||
ᮮ⢥âáâ¢ãîâ åí¤¥àã ¢¥àᨨ 2.01 ¨ ¨â¥à¯à¥â¨àãîâáï ¢¥àᨥ© 3.0 â®ç®
|
||||
â ª ¦¥, § ¨áª«î票¥¬ ¡ ©â 34:
|
||||
|
||||
—¨á«® ‡ 票¥ ¢ ¢¥àᨨ 2.01 ‡ 票¥ ¢ ¢¥àᨨ 3.0
|
||||
|
||||
0 48k 48k
|
||||
1 48k + If.1 48k + If.1
|
||||
2 SamRam 48k + M.G.T.
|
||||
3 128k SamRam
|
||||
4 128k + If.1 128k
|
||||
5 - 128k + If.1
|
||||
6 - 128k + M.G.T.
|
||||
|
||||
‘â à訩 ¡ ©â áç¥â稪 ⠪⮢ ®âáç¨âë¢ ¥â â ªâë ¯® ¬®¤ã«î 4. ‘à §ã
|
||||
¯®á«¥ ⮣®, ª ª ULA £¥¥à¨àã¥â ᢮¥ ¯à¥àë¢ ¨¥ (ª ¦¤ë¥ 20
|
||||
¬¨««¨á¥ªã¤), ® à ¢¥ â६ ¨ 㢥«¨ç¨¢ ¥âáï ¥¤¨¨æã ç¥à¥§ ª ¦¤ë¥
|
||||
¯ïâì í¬ã«¨à㥬ëå ¬¨««¨á¥ªã¤. ‚ í⨠¨â¥à¢ «ë, à ¢ë¥ 1/200 ᥪã¤ë,
|
||||
¬« ¤è¨© ¡ ©â áç¥â稪 áç¨â ¥â ®â 17472 ¤® ã«ï, çâ® ¨ ¤ ¥â 69888
|
||||
⠪⮢ ª ¤à.
|
||||
|
||||
<20> ©â 60 ¤®«¦¥ ¡ëâì ã«¥¢ë¬, ¯®áª®«ìªã ᮤ¥à¦¨¬®¥ އ“ ãáâனáâ¢
|
||||
Multiface 128 ¥ á®åà ï¥âáï ¢ ä ©«¥-®ââ¨áª¥. …᫨ M128 ¡ë« ¢¯¥ç â ¢
|
||||
¬®¬¥â á®åà ¥¨ï ®ââ¨áª , í¬ã«¨à㥬 ï ¯à®£à ¬¬ ᪮॥ ¢á¥£® ¥ ¡ã¤¥â
|
||||
à ¡®â âì ¯à¨ ¯®á«¥¤ãî饩 § £à㧪¥.
|
||||
|
||||
<20> ©âë 61 ¨ 62 - äãªæ¨¨ ¯à®ç¨å ä« £®¢, â ª¨å ª ª ¡ ©â 34, 59, 60 ¨ 83.
|
||||
|
||||
<20>®á«¥ åí¤¥à ¨¤ãâ ¡«®ª¨ ¯ ¬ïâ¨, ª ¦¤ë© ¨§ ª®â®àëå ᮤ¥à¦¨â 㯠ª®¢ ë¥
|
||||
¤ ë¥ 16-ª¨«®¡ ©â®£® ¡«®ª . Š®¬¯à¥áá¨ï ¯à®¨§¢®¤¨âáï ¯® áâ ன á奬¥,
|
||||
§ ¨áª«î票¥¬ ª®¥ç®£® ¬ થà , ª®â®àë© â¥¯¥àì ®âáãâáâ¢ã¥â.
|
||||
‘âàãªâãà ¡«®ª ¯ ¬ï⨠᫥¤ãîé ï:
|
||||
|
||||
<20> ©â „«¨ ޝ¨á ¨¥
|
||||
|
||||
0 2 „«¨ ¤ ëå (¡¥§ í⮣® âà¥å¡ ©â®£® åí¤¥à )
|
||||
2 1 ‘âà ¨çë© ®¬¥à ¡«®ª
|
||||
3 [0] “¯ ª®¢ ë¥ ¤ ë¥
|
||||
|
||||
<20>ã¬¥à æ¨ï áâà ¨æ § ¢¨á¨â ®â ¯¯ à ⮣® ०¨¬ :
|
||||
|
||||
‘âà. ‚ ०¨¬¥ 48 ‚ ०¨¬¥ 128 ‚ ०¨¬¥ SamRam
|
||||
|
||||
0 48K <20>‡“ <20>‡“ (áâ ஥) 48K <20>‡“
|
||||
1 <20>‡“ ˆâ¥à䥩á -1, <20>‡“ Disciple ¨«¨ <20>‡“ Plus D,
|
||||
¢ ᮮ⢥âá⢨¨ á ⥬, çâ® § ¤ ®
|
||||
2 - <20>‡“ (®¢®¥) <20>‡“ SamRam (BASIC)
|
||||
3 - page 0 <20>‡“ SamRam (¬®¨â®à,..)
|
||||
4 8000-bfff page 1 Ž¡ëçë¥ 8000-bfff
|
||||
5 c000-ffff page 2 Ž¡ëçë¥ c000-ffff
|
||||
6 - page 3 ’¥¥¢ë¥ 8000-bfff
|
||||
7 - page 4 ’¥¥¢ë¥ c000-ffff
|
||||
8 4000-7fff page 5 4000-7fff
|
||||
9 - page 6 -
|
||||
10 - page 7 -
|
||||
11 <20>‡“ Multiface <20>‡“ Multiface
|
||||
|
||||
‚ ०¨¬¥ 48Š ¢ë£à㦠îâáï áâà ¨æë 4,5 ¨ 8. ‚ ०¨¬¥ SamRam á®åà ïîâáï
|
||||
áâà ¨æë á 4 ¯® 8. ‚ ०¨¬¥ 128Š - ¢á¥ áâà ¨æë á 3 ¯® 10. Š®æ¥¢®©
|
||||
¬ àª¥à ®âáãâáâ¢ã¥â.
|
||||
|
||||
|
||||
|
||||
48
Docs/FORMATS/zxword_driver
Normal file
48
Docs/FORMATS/zxword_driver
Normal file
@ -0,0 +1,48 @@
|
||||
Š ª ¯¨á âì ᮡáâ¢¥ë© ¤à ©¢¥à.
|
||||
|
||||
…᫨ ¢ è á奬 ¯®¤ª«îç¥¨ï ¯à¨â¥à ®â«¨ç ¥âáï ®â ¢ë襯ਢ¥-
|
||||
¤¥®©,â® ¢® ¨§¡¥¦ ¨¨ ¯¥à¥¤¥«®ª ¢ ª®¬¯ìîâ¥à¥, á«¥¤ã¥â á®§¤ âì ᢮©
|
||||
¤à ©¢¥à. <20>â® ¥¡®«ìè ï ¯à®£à ¬¬ ¢ ¬ è¨ëå ª®¤ å, à ᯮ«®¦¥ ï á
|
||||
¤à¥á #5B01 ¨ ¨¬¥îé ï ¤«¨ã ¥ ¡®«¥¥ 255 ¡ ©â. (<28>â® ¥¨á¯®«ì§ã¥-
|
||||
¬ ï ®¡« áâì ¡ãä¥à ZX-¯à¨â¥à ). ‚ ç «¥ ¯à®£à ¬¬ë à ᯮ«®¦¨â¥
|
||||
â®çª¨ ¢å®¤ ,¯® ª®â®àë¬ à¥¤ ªâ®à ¡ã¤¥â ®¡à é âìáï ª ¤à ©¢¥àã:
|
||||
|
||||
|
||||
#5B01 - ¨¨æ¨ «¨§ æ¨ï ¯®àâ ;
|
||||
#5B03 - ¯¥à¥¤ ç ¡ ©â ¨§ ॣ¨áâà € ¢ ¯®àâ ¯à¨â¥à ;
|
||||
<20>à®æ¥¤ãà ¨¨æ¨ «¨§ 樨 ¤®«¦ áâநâì ¯à®£à ¬¬¨àã¥¬ë© ¯®àâ
|
||||
(¥á«¨ â ª®¢®© ¨¬¥¥âáï), ¯à®¢¥à¨âì £®â®¢®áâì ¯à¨â¥à ¨ ¯à¨ ¥®¡å®-
|
||||
¤¨¬®á⨠¢ë¤ âì ¯à¨â¥à ã¯à ¢«ïîéãî ¯®á«¥¤®¢ ⥫ì®áâì. <20>â ¯à®-
|
||||
楤ãà ¨ç¥£® ¥ ¢®§¢à é ¥â.
|
||||
<20>à®æ¥¤ãà ¯¥à¥¤ ç¨ ¡ ©â ¯à¨â¥à ¤®«¦ ®¦¨¤ âì ¥£® £®â®¢-
|
||||
®á⨠¨ ¯¥à¥¤ âì ¡ ©â ¢ ¯®àâ ¯à¨â¥à á® áâ஡¨à®¢ ¨¥¬. <20>à®æ¥¤ãà
|
||||
¤®«¦ ¯à¥àë¢ âìáï ¦ ⨥¬ BREAK ¨«¨ ¯à¨ ¢®§¨ª®¢¥¨¨ ®è¨¡ª¨.
|
||||
…᫨ ¡ ©â ¯® ª ª¨¬-«¨¡® ¯à¨ç¨ ¬ ¥ ¯¥à¥¤ ¢ ¯®àâ ¯à¨â¥à , ¯à®æ¥-
|
||||
¤ãà ¢®§¢à é ¥â 㪠§ ⥫ì "‘" ãáâ ®¢«¥ë¬.
|
||||
Ž¡¥ ¯à®æ¥¤ãàë ¬®£ãâ ¬®¤¨ä¨æ¨à®¢ âì «î¡ë¥ ॣ¨áâàë ¯à®æ¥áá®à .
|
||||
‚ á«ãç ¥ 㤠箣® § ¢¥àè¥¨ï ¢â®à®© ¯à®æ¥¤ãàë ä« £ "‘" ¤®«¦¥ á¡à -
|
||||
áë¢ âìáï. <20>à®æ¥¤ãà ¯¥à¥¤ ç¨ ¡ ©â ¢ ¯à¨â¥à ¢ë§ë¢ ¥âáï á § ¯à¥é¥-
|
||||
묨 ¯à¥àë¢ ¨ï¬¨.
|
||||
‚ ¯à¨«®¦¥¨¨ ¯à¨¢®¤¨âáï ¯à¨¬¥à á®áâ ¢«¥¨ï ¤à ©¢¥à ¤«ï ¯à¨-
|
||||
â¥à EPSON-LX, ¯®¤ª«îç ¥¬®£® ¯® ¢ë襯ਢ¥¤¥®© á奬¥ ç¥à¥§ ¤ ¯â¥à
|
||||
Š<EFBFBD>580‚‚55, ¨¬¥î騩 ¤à¥á :
|
||||
<20>®àâ € - #3F;
|
||||
<20>®àâ ‚ - #5F;
|
||||
<20>®àâ ‘ - #7F;
|
||||
“¯à.á«®¢® - #FF.
|
||||
|
||||
|
||||
<20>ਠ¯¨á ¨¨ ¤à ©¢¥à ¥ ¤®¯ã᪠îâáï:
|
||||
1.‚®§¬®¦®áâì ¡¥§¢ë室®£® § 横«¨¢ ¨ï;
|
||||
2.‚®§¬®¦®áâì ¢ë室 ¢ ¡¥©á¨ª (¯® RST #08 ¨«¨ ç¥à¥§ ¤® á⥪ );
|
||||
3.ˆ§¬¥¥¨¥ ⨯ ¯à¥àë¢ ¨ï;
|
||||
4.<2E> §à¥è¥¨¥ ¯à¥àë¢ ¨© ¢® ¢à¥¬ï ¯¥à¥¤ ç¨ ¤ ëå ç¥à¥§ ¨â¥à䥩á;
|
||||
5.Ž¡à 饨¥ ª DOS;
|
||||
6.<2E>¥à¥ § 票¥ ª «®¢ ¨ ¯®â®ª®¢, â ª¦¥ ¨å ®âªàë⨥ ¨«¨ § ªàë-
|
||||
⨥;
|
||||
7.<2E>à®£à ¬¬ë¥ ¯à¥àë¢ ¨ï (RST #NN);
|
||||
8.Œ®¤¨ä¨ª æ¨ï 㪠§ ⥫ï á⥪ ¨«¨ ॣ¨áâ஢®© ¯ àë IR;
|
||||
9. àã襨¥ á⥪ ;
|
||||
10.Œ®¤¨ä¨ª æ¨ï ¯ ¬ï⨠§ ¯à¥¤¥« ¬¨ ¡ãä¥à ZX-¯à¨â¥à . (‚¯à®ç¥¬,
|
||||
¥á«¨ ¥®¡å®¤¨¬®, ¨á¯®«ì§ã©â¥ ¨¦¨¥ 2/3 íªà ®© ®¡« áâ¨. <20>â®,
|
||||
à §ã¬¥¥âáï, ¥íáâ¥â¨ç®, ® ¡¥§¡®«¥§¥®).
|
||||
468
Docs/FORMATS/zxzip.hdr
Normal file
468
Docs/FORMATS/zxzip.hdr
Normal file
@ -0,0 +1,468 @@
|
||||
|
||||
.ZXZIP ä ©«ë
|
||||
------------
|
||||
|
||||
‘âpãªâãp ä ©«®¢®£® § £®«®¢ª p娢®¢ ZxZip
|
||||
|
||||
ÉÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
|
||||
ºOffset³ Field ³ Description º
|
||||
ÇÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ
|
||||
º +00 ³ filename ³ º
|
||||
º +08 ³ extension ³ º
|
||||
º +09 ³ start address ³ <20>p®áâ® ª®¯¨ï 14 ¡ ©â âp¤®á®£® ä ©«®¢®£® º
|
||||
º ³ /basic length ³ § £®«®¢ª º
|
||||
º +0B ³ length ³ º
|
||||
º +0D ³ sect.length ³ º
|
||||
ÇÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ
|
||||
º +0E ³ packed size ³ <20> §¬¥p 㯠ª®¢ ®£® ä ©« º
|
||||
ÇÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ
|
||||
º +10 ³ CRC-32 value ³ ‡ 票¥ ª®âp®«ì®© ¯®«¨®¬¨ «ì®© áã¬¬ë º
|
||||
ÇÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ
|
||||
º +14 ³ pack method ³ Œ¥â®¤ 㯠ª®¢ª¨: º
|
||||
º ³ ³ 0 - Stored 1 - LZPress º
|
||||
º ³ ³ 2 - Shrunk 3 - Implode º
|
||||
ÇÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ
|
||||
º +15 ³ flags ³ <20> §®¥ ;-) º
|
||||
º ³ ³ bit0 - binary/text bit1..7 - reserved º
|
||||
ÈÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
|
||||
|
||||
ˆá室 ï ¤«¨ ä ©« ®¯p¥¤¥«ï¥âáï ¯® á«. «£®p¨â¬ã:
|
||||
1) <20>p¥¤¯®« £ ¥¬ ï ¤«¨ (¤«ï BASIC: w[+09]+4, ¤«ï ®áâ «ìëå: w[+0B]),¥á«¨ ¥© ¢
|
||||
â®ç®á⨠ᮮ⢥âáâ¢ã¥â ¤«¨ ¢ ᥪâ®p å, 㪠§ ï ¢ b[+0D];
|
||||
2) ‡ 票¥ b[+0D]*256 ¥á«¨ ᮮ⢥âáâ¢¨ï ¥â.
|
||||
€p娢 áâp®¨âáï ¨§ ¯®á«¥¤®¢ â¥«ì® ¨¤ãé¨å ç á⥩, á®áâ®ïé¨å ¨§ § £®«®¢ª ¨ ¡«®ª
|
||||
ª®¬¯p¥áá¨p®¢ ëå ¤ ëå ¤«¨®© w[+0E].
|
||||
// b[+xx] - ¡ ©â ¯® ᬥ饨î xx; w[+xx] - á«®¢® ¯® ᬥ饨î xx
|
||||
|
||||
Ä NETMAIL (2:5015/97) ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ NETMAIL Ä
|
||||
Msg : 2 of 71 +3 Rcv Pvt
|
||||
From : Michael Kondratyev 2:5030/299.18 <20>ïâ 31 ˆî« 98 04:45
|
||||
To : Roman Khroupnin 2:5015/97 ‚cª 02 €¢£ 98 05:32
|
||||
Subj : SN102, ZXZIP inside
|
||||
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
||||
Hi Roman,
|
||||
|
||||
RK> ˆcå®¤ï ¨§ â ¡«¨æë ï ¯®ï« çâ® íâ® ¤ ë¥ ª®ªp¥â® ¯® *.ZXZ ( PC).
|
||||
|
||||
í⨠¤ ë¥ ª®ªp¥â® ¯® ¢ãâp¥¥© áâpãªâãp¥. ¯®áª®«ìªã ¤«¨ âp¤®á®£® ä ©«
|
||||
¥¡¥áª®¥ç , § £®«®¢ª®¢ ¯®«ãç ¥âáï ¥áª®«ìª®, ® ¢á¥ ®¤® á⮨⠯®¨¬ âì ª ª
|
||||
¥¤¨ë© ä ©«.
|
||||
|
||||
RK> ®¡p §®¬ ¯p¨ ¯p®c¬®âp¥ 审¥â®£® ZXZIP p娢 ¢ ç «¥ ä ©« ¬®¦®
|
||||
RK> ®¡ py¦¨âì c ç « ¨¬ï ®®£®, § ⥬ ZIP. ‹¨ç® ¬¥ï íâ® ¤®«£®
|
||||
RK> c¡¨¢ «® c ⮫ªy ¯®ª ï ¤®¯¥p ¢ 祬 âyâ cyâì).
|
||||
|
||||
¢ ⮬ ¨ áãâì. ª ª ¨ ¢ ®¢¥p«¥ïå ª zxunzip48 ¬®¦® ¯p®ç¥áâì 'ovl'. ¥ã¦®¥ ¯®«¥
|
||||
¨á¯®«ì§ã¥âáï ¤«ï ¤®¯®«¨â¥«ì®© ¨¤¥â¨ä¨ª 樨.
|
||||
|
||||
RK> ’.¥. c¨ây¥¢¨ c«¥¤yîé ï:
|
||||
RK> - ¢ ZXZIP p娢¥ ¥â ¨ä®p¬ 樨 ® ª®«¨ç¥c⢥ ä ©«®¢ ¢ p娢¥, ¥â CRC
|
||||
RK> ¢c¥£® p娢 , ¥â ®p¨£¨ «ì®£® ª®¤ -¤¥cªp¨¯â®p ª ª y ¢c¥å PC
|
||||
RK> p娢 â®p®¢
|
||||
|
||||
¥â. ¡á®«îâë© ¯®á«¥¤®¢ ⥫ìë© ¯®â®ª. â ª ª®£¤ -â® ¡ë«® 㤮¡¥¥. ª®£¤
|
||||
¤¥« «®áì. ¢ ª®æ¥ ª®æ®¢, § 祬 ®¡ï§ â¥«ì® ¢® ¢á¥¬ 㯮¤®¡«ïâìáï ¤p㣨¬
|
||||
p娢 â®p ¬? ᨪ«¥p¥ ⮣¤ , ¢ 1992-93 £®¤ã ( ¬®¦¥â ¨ ¤® á¨å ¯®p) ¨ª ª¨å
|
||||
¤p㣨å p娢 â®p®¢ ¥ ¡ë«® (¨«¨ ï ¥ 襫?).
|
||||
|
||||
RK> - ¥â ¨ä®p¬ 樨 ® ç¥âëp¥å ¡ ©â å [+10] (CRC-32 value). —â® íâ® §
|
||||
RK> CRC?
|
||||
RK> ’®«ìª® § £®«®¢ª , ª ª ¢ 审¥âëå ä ©« å? ’¥« ä ©« - p娢 ? ’®£® ¨ ⮣®?
|
||||
|
||||
⮫쪮 ⥫ ä ©« . ¨á室®£®.
|
||||
|
||||
RK> ˆ ª ª¨¬ ®¡p §®¬ ® ¢ëç¨c«ï¥âcï?
|
||||
|
||||
áâ ¤ pâ®, ªp®¬¥ ®¤®© ¬¥«®ç¨. ¬¥«®çì - ¥ ¨¢¥pâ¨pã¥âáï ¯® ®ª®ç ¨¨.
|
||||
áíª®®¬«¥ ⨯ ¯ p ¡ ©â ª®¤ ;)
|
||||
|
||||
RK> - ªâ® § ¤ ¥â ¡ ©â [+14]? ZXZIP ¯p¨ y¯ ª®¢ª¥? <20>â® ¬¥â®¤ ª ª¨¬ ¡ë«
|
||||
|
||||
¢á¥ çâ® ¥ ¯¥p¢ë¥ 14 ¡ ©â âp¤®á®£® § £®«®¢ª ¥áâ¥á⢥® § ¤ ¥â zxzip. ®âªã¤
|
||||
¨¬ ¥é¥ ¢§ïâìáï-â®?
|
||||
|
||||
RK> y¯ ª®¢ ä ©«, â.¥. § ¤ ¥âcï y¦¥ ¯®c«¥ y¯ ª®¢ª¨? ˆ«¨ íâ®â ¬¥â®¤
|
||||
RK> § ¤ ¥âcï(¡y¤¥â § ¤ ¢ âìcï) ¢ ª®¬ ¤®© câp®ª¥?
|
||||
|
||||
ª ª 㯠ª®¢ , â ª ¨ ¥áâì, áâp ë© ¢®¯p®á. ¨§ ¬¥â®¤®¢ «¨èì #3 (¨, ¯®ïâ®, #0)
|
||||
¯®¤¤¥p¦ ¢ 86å ¢¥pá¨ïå; ¢ ®¡é¥¬-â® ¨ p¥¤ª® ¯p ªâ¨ª¥ ¢áâp¥ç îâáï p娢ë á
|
||||
¤p㣨¬¨ (#1 ¢®®¡é¥ ®âªp®¢¥®¥ £ ¢¥æ®, â ¢¨§¬).
|
||||
|
||||
RK> - ¥ ¯®ïâ® § 票¥ ¡ ©â [+15].
|
||||
|
||||
¢ ã«¥¢®¬ ¡¨â¥ åp ¨âáï ä« £ ⥪á⮢®áâ¨ ä ©« (¢ ®¡é¨å ç¥pâ å - íâ®
|
||||
¯p¥®¡« ¤ ¨¥ ascii ᨬ¢®«®¢). ¬¥ïâì ¥ p¥ª®¬¥¤ã¥âáï, ¯®áª®«ìªã íâ® ¥é¥ ¨
|
||||
¨á¯®«ì§ã¥âáï ª ª ¯ p ¬¥âp 㯠ª®¢ª¨.
|
||||
|
||||
RK> - ZXUNZIP ¬®¦¥â p c¯ ª®¢ë¢ âì ⮫쪮 ¢c¥ ä ©«ë cp §y.
|
||||
|
||||
¤ . å®âï ¡ë ¯®â®¬ã, çâ® ï ¥ ¯p¥¤áâ ¢«ïî, ª ª § ¤ ¢ âì ¨¬¥ (â ¬ ¬®£ãâ ¡ëâì
|
||||
å®âì áâ® ®¤¨ ª®¢ëå, ¯p¨¬¥p).
|
||||
® ¬®¦® íâ® ®¡®©â¨, ¤®¯ãá⨬, ᤥ« ¢ ᢮© ¢p¥¬¥ë© p娢 ¨§ ã¦ëå ¤«ï
|
||||
p ᯠª®¢ª¨ ä ©«®¢.
|
||||
|
||||
RK> ¯ p ¬¥âpë TYPE ¨ START ®¡p §yîâ ZIP? € £¤¥ £ p â¨ï ⮣® çâ® ¡®«ìè¥ ¨ªâ®
|
||||
RK> ¨c¯®«ì§y¥â í⨠¯ p ¬¥âpë? —â® ¨ª ª®© â ¬ Œ ©ª« „¦¥ªc® ¨§ €¢câp «
|
||||
|
||||
¯p¥§¥p¢ ⨢ ᢥçªã ¤¥¢ ¥èì ;)
|
||||
|
||||
RK> 审¥â묨 ä ©« ¬¨. C *.ZXZ p娢 ¬¨ ¢ í⮬ c«yç ¥ ®¡«®¬. ˆå ª®¥ç® ¬®¦®
|
||||
RK> "¯p¥¢p â¨âì" ¢ 审¥âë© ä ©«, ªâ® § ¥â çâ® íâ® § *.ZXZ ä ©«? Œ®¦¥â íâ®
|
||||
|
||||
¢ ¯p¨æ¨¯¥, ®¨ ®á®¡¥® ¨ ¥ ã¦ë - íâ® ç¨áâ® ¯p®¬¥¦ãâ®çë© â¨¯. á ¨¬ ¡ë«®
|
||||
¯p®é¥ p ¡®â âì ¢ ¥-âp¤®á¥.
|
||||
|
||||
RK> ï ¯p¨ª «ë¢ îcì, ¢® COMMAND.COM ¯¥p¥¨¬¥®¢ «...
|
||||
|
||||
®¯ïâì ¦¥, § é¨â¨âìáï ®â ¨§®¡p¥â ⥫쮣® ¨¤¨®â ¯p¨ ¢á¥¬ ¦¥« ¨¨ ¥ ¯®«ãç¨âáï.
|
||||
¬¥¦¤ã ¯p®ç¨¬, ï ¥é¥ ¨ ã ª®£® .zxz ¥ ¢áâp¥ç «.
|
||||
|
||||
RK> - ¯®c¥¬y ¥câì ¬ëc«ì ¢ ª ç¥c⢥ p¥è¥¨ï ¢®¯p®c ® ¯®¤«¨®c⨠ZXZIP
|
||||
RK> p娢 p¥è¨âì c«¥¤yî騬 ®¡p §®¬; (⥯¥pì ¯® ¡ p ¡ y, 审¥âë© íâ® ä ©«
|
||||
RK> ¨«¨ ZXZ) c c ¬®£® ç « p娢 ¯p®¢¥p¨âì íây c ¬yî CRC-32 y ¯¥p¢®£® ¦¥
|
||||
|
||||
¬®¦® ¨ â ª. ⮫쪮 á ç « ¯p¨¤¥âáï íâ®â ä ©« p ᯠª®¢ âì. å®âï, ¬®¦¥â
|
||||
©¤¥èì § áâ®p¥ë©..
|
||||
ï ¢ §¨¯¥ ¨§ ç «ì® ¯p®¢¥pïî ¯® 楫®áâ®á⨠p娢 ¨ ¯® ᮮ⢥âá⢨î
|
||||
packed/unpacked size (¯¥p¢ ï ¤.¡. ¬¥ìè¥ ¤«ï ¯ ª®¢ ëå ¨ p ¢ ¤«ï áâ®p¥ëå)
|
||||
|
||||
RK> - ¤ «¥¥, ⥯¥pì pyª å ¬ë ¨¬¥¥¬ ¤¢ , ¯p ªâ¨ç¥cª¨ p §ëå p娢 â®p ,
|
||||
RK> ®
|
||||
RK> ¨§ ª®â®pëå ¯ ªy¥â ⮫쪮 ¯® ®¤®¬y ä ©«y ¨ ⮫쪮 ¢ ZXZ p娢ë. „py£®
|
||||
|
||||
¬®p «ì ¯p®áâ: ¨ª®£¤ ¨ª®¬ã ¥ ¤ ¢ © áëpëå ¨ ¯p®¬¥¦ãâ®çëå ¢¥pᨩ. â®â,
|
||||
ª®â®pë© ¯® ®¤®¬ã, ¯p¥¤ § ç¥ ¤«ï ¥£® 㤠«¥¨ï, ª ª ¡á®«îâ® «¥¢ë© ¯p®¤ãªâ.
|
||||
¤«ï ¬¥ï ¥£® 㦥 ¥â. áâ ¤ pâ ¤«ï åp ¥¨ï âp¤®áëå ᨪ«¥pëå ä ©«®¢ - íâ®
|
||||
审¥â , § ç¨â, p ¡®â âì ¤® ⮫쪮 á ¥©.
|
||||
|
||||
RK> —¥ ¤¥« âì ¡y¤¥¬?
|
||||
|
||||
¯p®¤®«¦ âì ¤¨áªãáá¨î, ¢¥p®ïâ®.
|
||||
|
||||
ªáâ â¨, ¥é¥ ® áâ ¤ pâ å 审¥âëå $z - ¯® ¬®¥¬ã p¥è¥¨î, ¬®£®â®¬ë¥ ¤®«¦ë
|
||||
¡ëâì ¯® p áè¨p¥¨î $z0..$z9, ®¤®â®¬ë¥ - $z
|
||||
|
||||
¨ ¥é¥, ¯®ª ¥ § ¡ë«, ¯p® ¨§¢¥áâãî ®è¨¡ªã ¢ §¨¯¥. ¯®ï¢¨« áì ® ¯®áª®«ìªã ï
|
||||
¡á®«îâ® ¥ ¯p®¢¥pï« ¤®á®¢áª¨¥ ¢¥pᨨ ¨ á®á⮨⠢ ®á®¡¥®á⨠¬á¤®á ¯«¥¢ âì
|
||||
«¨ç¨¥ p áè¨p¥¨ï ¥á«¨ ¨¬ï ¤¥¢ ©á®¢®¥. ⨯ , com1.$c ¨«¨ prn.$b. â® ¥áâì
|
||||
â ª¨å ® ¯p®áâ® ¥ p ᯠªã¥â.
|
||||
|
||||
|
||||
Bye, Michael.
|
||||
|
||||
Ä NETMAIL (2:5015/97) ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ NETMAIL Ä
|
||||
Msg : 3 of 71 -2 Snt Pvt Loc
|
||||
From : Roman Khroupnin 2:5015/97 ‚âp 04 €¢£ 98 16:23
|
||||
To : Michael Kondratyev 2:5030/299.18 ‚âp 04 €¢£ 98 16:51
|
||||
Subj : SN102, ZXZIP inside
|
||||
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
||||
• © Michael!
|
||||
|
||||
MK> ¢ ⮬ ¨ áyâì. ª ª ¨ ¢ ®¢¥p«¥ïå ª zxunzip48 ¬®¦® ¯p®ç¥áâì 'ovl'.
|
||||
MK> ¥y¦®¥ ¯®«¥ ¨á¯®«ì§y¥âáï ¤«ï ¤®¯®«¨â¥«ì®© ¨¤¥â¨ä¨ª 樨.
|
||||
<EFBFBD>®ïâ®. ’®£¤ ¤ ¢ © ®câ ®¢¨¬cï ⮬ çâ® ZIP ¨c¯®«ì§®¢ âì ¨ªâ® ¥ ¡y¤¥â.
|
||||
|
||||
RK>> - ZXUNZIP ¬®¦¥â p c¯ ª®¢ë¢ âì ⮫쪮 ¢c¥ ä ©«ë cp §y.
|
||||
MK> ¤ . å®âï ¡ë ¯®â®¬y, çâ® ï ¥ ¯p¥¤áâ ¢«ïî, ª ª § ¤ ¢ âì ¨¬¥ (â ¬
|
||||
MK> ¬®£yâ ¡ëâì å®âì áâ® ®¤¨ ª®¢ëå, ¯p¨¬¥p).
|
||||
Hy ¨ çâ®. ‚c¥ ¨å ¨ p c¯ ªy©. H® ¢ ¡®«ìè¨c⢥, ï ¡ë cª § « ¡c®«î⮬,
|
||||
®¤¨ ª®¢ë¥ ä ©«ë ¢câp¥ç îâcï ªp ©¥ p¥¤ª®.
|
||||
|
||||
MK> ® ¬®¦® íâ® ®¡®©â¨, ¤®¯yá⨬, ᤥ« ¢ ᢮© ¢p¥¬¥ë© p娢 ¨§ y¦ëå
|
||||
MK> ¤«ï p ᯠª®¢ª¨ ä ©«®¢.
|
||||
•¬¬... ¥ ¯®ï«. € ª ª ¥£® c¤¥« âì? ˆ¬¥® ¨§ _y¦ëå_ ä ©«®¢, â.¥. ï ¤®«¦¥
|
||||
ª ª â® yª § âì íâ¨ ä ©«ë? Ÿ â ª ¯p¥¤câ ¢«ï« íâ® c¥¡¥ - p c¯ ª®¢ âì ¢c¥ ¢®
|
||||
¢p¥¬¥yî ¤¨p¥ªâ®p¨î, ¯®â®¬ ¢ ⥪yéyî ¯¥p¥¯¨c âì "y¦ë¥". € ¢p¥¬¥yî
|
||||
¤¨p¥ªâ®p¨î £p®åyâì.
|
||||
|
||||
MK> ®¯ïâì ¦¥, § é¨â¨âìáï ®â ¨§®¡p¥â ⥫쮣® ¨¤¨®â ¯p¨ ¢á¥¬ ¦¥« ¨¨ ¥
|
||||
MK> ¯®«yç¨âáï. ¬¥¦¤y ¯p®ç¨¬, ï ¥é¥ ¨ y ª®£® .zxz ¥ ¢áâp¥ç «.
|
||||
—â® ¦, ⮣¤ ®âª §ë¢ ¥¬cï ®â ¨å ª ª ®â ª« cc :)
|
||||
|
||||
MK> ï ¢ §¨¯¥ ¨§ ç «ì® ¯p®¢¥pïî ¯® 楫®áâ®á⨠p娢 ¨ ¯®
|
||||
MK> ᮮ⢥âá⢨î packed/unpacked size (¯¥p¢ ï ¤.¡. ¬¥ìè¥ ¤«ï ¯ ª®¢ ëå
|
||||
MK> ¨ p ¢ ¤«ï áâ®p¥ëå)
|
||||
€ ª ª ¯p®¢¥p¨âì æ¥«®câ®câì p娢 ?
|
||||
‚c¥ â ª¨ ¬¥ ª ¦¥âcï ¯p®é¥ ¢c¥£®, ¨ y¤®¡¥© ¨¬¥âì CRC ¢c¥£® p娢 .
|
||||
‚®â ⥡¥ ¨ 楫®câ®câì ¨ ®p¨£¨ «ìë© ¤¥cªp¨¯â®p.
|
||||
|
||||
MK> â®â, ª®â®pë© ¯® ®¤®¬y, ¯p¥¤ § ç¥ ¤«ï ¥£® y¤ «¥¨ï, ª ª ¡á®«îâ®
|
||||
MK> «¥¢ë© ¯p®¤yªâ. ¤«ï ¬¥ï ¥£® y¦¥ ¥â. áâ ¤ pâ ¤«ï åp ¥¨ï âp¤®áëå
|
||||
MK> ᨪ«¥pëå ä ©«®¢ - í⮠审¥â , § ç¨â, p ¡®â âì ¤® ⮫쪮 á ¥©.
|
||||
<EFBFBD>â®â ¡§ æ ¤® ¢ª«îç¨âì ¢ ¤®ª¨ ¯® ¯ ª¥ây ZXZIP, ¢ ä ª ¨ ¢ ¤®ª¨ ª ¢¨£ â®py :)
|
||||
|
||||
RK>> —¥ ¤¥« âì ¡y¤¥¬?
|
||||
MK> ¯p®¤®«¦ âì ¤¨áªyáá¨î, ¢¥p®ïâ®.
|
||||
|
||||
MK> ªáâ â¨, ¥é¥ ® áâ ¤ pâ å 审¥âëå $z - ¯® ¬®¥¬y p¥è¥¨î, ¬®£®â®¬ë¥
|
||||
MK> ¤®«¦ë ¡ëâì ¯® p áè¨p¥¨î $z0..$z9, ®¤®â®¬ë¥ - $z
|
||||
’®£¤ â ª®© ¢®¯p®c. …c«¨ ä ©« (y¦¥ ¯ ª®¢ ë©) ¥ y¡¨p ¥âcï ¢ p娢 (>255),
|
||||
çâ® ¤¥« ¥èì? <20> §p¥§ ¥èì ¨ ®câ ⮪ ¢ $zn? ˆ«¨ â ª¨å p §p뢮¢ y â¥¡ï ¥â ¢
|
||||
¯p¨æ¨¯¥? …c«¨ p §p¥§ ¥èì â® ª ª ¨¤¥â¨ä¨æ¨py¥èì ®câ ⮪ (¢ ¤py£®¬ $z) ¨ ª ª
|
||||
¯®â®¬ cª«¥¨¢ ¥èì ¢ UNZIP?
|
||||
ˆ ¥é¥. ’ë c«¥¤yî騬 ⮬ ¬ ¯p¨c¢ ¨¢ ¥èì ¨¬ï "********". ’¥¯¥pì c¬®âp¨ c¨ây¥¢¨ :
|
||||
§ ¯ ª®¢ « ï çâ® ¨âì ¢ ¬®£®â®¬ë© p娢. Cª ¦¥¬ â®â ¦¥ ZED. <20>®â®¬ § ¯ ª®¢ «
|
||||
¥é¥ ¤¥¬y ª ªyî ¨¡y¤ì ⮦¥ ¢ ¬®£®â®¬ë© p娢. ’.¥. ¯®ïâ® ¤ , ¯®«y稫 ¤®ä¨£
|
||||
ä ©«®¢ "********". Š ª ¬¥ ⥯¥pì ¨å ®â«¨ç¨âì, ¤«ï ZED ¨ ¤«ï ¤¥¬ë?
|
||||
|
||||
MK> ¨ ¥é¥, ¯®ª ¥ § ¡ë«, ¯p® ¨§¢¥áâyî ®è¨¡ªy ¢ §¨¯¥. ¯®ï¢¨« áì ®
|
||||
MK> ¯®áª®«ìªy ï ¡á®«îâ® ¥ ¯p®¢¥pï« ¤®á®¢áª¨¥ ¢¥pᨨ ¨ á®á⮨⠢
|
||||
MK> ®á®¡¥®á⨠¬á¤®á ¯«¥¢ âì «¨ç¨¥ p áè¨p¥¨ï ¥á«¨ ¨¬ï ¤¥¢ ©á®¢®¥.
|
||||
MK> ⨯ , com1.$c ¨«¨ prn.$b. â® ¥áâì â ª¨å ® ¯p®áâ® ¥ p ᯠªy¥â.
|
||||
<EFBFBD>p® â® ª ª ® ¥ ¬®¦¥â p c¯ ª®¢ âì ä ©« com1 å®âì ¯¨è¥â?
|
||||
Ÿ ¢ ¢¨£ â®p¥ ®¡®è¥« íâ® ¯y⥬ ¤®¡ ¢«¥¨ï ª ¨¬¥¨ â ª¨å ä ©«®¢ c¢®¥
|
||||
c®¡c⢥®¥ ¦¥ ¨¬ï. ’.¥. ¨¬ï - com1, câ ¥â com1com1 ¨ â.¤.
|
||||
|
||||
|
||||
RomanRom2@usa.net [Team Œ€‡„€‰ - <20>“‹…‡] [Team ¦¥é¨ - «î¡¨âì]
|
||||
|
||||
--- GoldED 3.00.Beta1+
|
||||
|
||||
Ä NETMAIL (2:5015/97) ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ NETMAIL Ä
|
||||
Msg : 8 of 71 Rcv Pvt K/s
|
||||
From : Michael Kondratyev 2:5030/299.18 ‚cª 09 €¢£ 98 20:24
|
||||
To : Roman Khroupnin 2:5015/97
|
||||
Subj : SN102, ZXZIP inside
|
||||
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
||||
|
||||
Hello Roman!
|
||||
|
||||
Tue Aug 04 1998, Roman Khroupnin á®áâàï¯ «( ) ¯¨á쬮 ª Michael Kondratyev:
|
||||
|
||||
RK>>> - ZXUNZIP ¬®¦¥â p c¯ ª®¢ë¢ âì ⮫쪮 ¢c¥ ä ©«ë cp §y.
|
||||
MK>> ¤ . å®âï ¡ë ¯®â®¬y, çâ® ï ¥ ¯p¥¤áâ ¢«ïî, ª ª § ¤ ¢ âì ¨¬¥ (â ¬
|
||||
MK>> ¬®£yâ ¡ëâì å®âì áâ® ®¤¨ ª®¢ëå, ¯p¨¬¥p).
|
||||
|
||||
RK> Hy ¨ çâ®. ‚c¥ ¨å ¨ p c¯ ªy©. H® ¢ ¡®«ìè¨c⢥, ï ¡ë cª § « ¡c®«î⮬,
|
||||
RK> ®¤¨ ª®¢ë¥ ä ©«ë ¢câp¥ç îâcï ªp ©¥ p¥¤ª®.
|
||||
|
||||
, ¢á¥ ®¤® â殮«¥© ¡ë«® ¡ë ¯®«ì§®¢ â¥«î ®¡êïá¨âì, çâ® ¤® ¤«ï
|
||||
boot B § ¤ ¢ âì "boot B", ¤«ï boot "1" C - "boot \"1\"C", a ¯p® ¢á¥
|
||||
§¢¥§¤ë/¢®¯p®áë ¨ ¯p®ç¨¥ ¢¨«¤ª pâë ® ¬®¦¥â § ¡ëâì. «ãçè¥ ¯ãáâì á ¬ ¢ë¡¨p ¥â ¨§
|
||||
£®â®¢ëå ã¦ë¥..
|
||||
|
||||
MK>> ® ¬®¦® íâ® ®¡®©â¨, ¤®¯yá⨬, ᤥ« ¢ ᢮© ¢p¥¬¥ë© p娢 ¨§ y¦ëå
|
||||
MK>> ¤«ï p ᯠª®¢ª¨ ä ©«®¢.
|
||||
|
||||
RK> •¬¬... ¥ ¯®ï«. € ª ª ¥£® c¤¥« âì? ˆ¬¥® ¨§ _y¦ëå_ ä ©«®¢, â.¥. ï
|
||||
RK> ¤®«¦¥ ª ª â® yª § âì íâ¨ ä ©«ë? Ÿ â ª ¯p¥¤câ ¢«ï« íâ® c¥¡¥ - p c¯ ª®¢ âì
|
||||
RK> ¢c¥ ¢® ¢p¥¬¥yî ¤¨p¥ªâ®p¨î, ¯®â®¬ ¢ ⥪yéyî ¯¥p¥¯¨c âì "y¦ë¥". €
|
||||
RK> ¢p¥¬¥yî ¤¨p¥ªâ®p¨î £p®åyâì.
|
||||
|
||||
â ª ¯p®áâ® ¢ëâ ᪨¢ ¥èì ¨§ p娢 äp £¬¥âë, ®â®áï騥áï ª ã¦ë¬ ä ©« ¬,
|
||||
áæ¥¯«ï¥èì ¨ ¤¥« ¥èì ¨§ í⮣® â®â á ¬ë© ¢p¥¬¥ë© p娢ê.
|
||||
|
||||
MK>> ï ¢ §¨¯¥ ¨§ ç «ì® ¯p®¢¥pïî ¯® 楫®áâ®á⨠p娢 ¨ ¯®
|
||||
MK>> ᮮ⢥âá⢨î packed/unpacked size (¯¥p¢ ï ¤.¡. ¬¥ìè¥ ¤«ï ¯ ª®¢ ëå
|
||||
MK>> ¨ p ¢ ¤«ï áâ®p¥ëå)
|
||||
|
||||
RK> € ª ª ¯p®¢¥p¨âì æ¥«®câ®câì p娢 ?
|
||||
RK> ‚c¥ â ª¨ ¬¥ ª ¦¥âcï ¯p®é¥ ¢c¥£®, ¨ y¤®¡¥© ¨¬¥âì CRC ¢c¥£® p娢 .
|
||||
RK> ‚®â ⥡¥ ¨ 楫®câ®câì ¨ ®p¨£¨ «ìë© ¤¥cªp¨¯â®p.
|
||||
|
||||
¬¥ § ç¨â ⮣¤ ª § «®áì, çâ® ç¥âëp¥ ¡ ©â ¤®p®¦¥. ¢á¥ p ¢® ï ¡ë ¥ áâ «
|
||||
íâã á㬬㠯p®¢¥pïâì (¥á«¨ p ¡®â « á ¤¨áª¥â ¬¨, ¯®©¬¥èì ¯®ç¥¬ã).
|
||||
|
||||
MK>> â®â, ª®â®pë© ¯® ®¤®¬y, ¯p¥¤ § ç¥ ¤«ï ¥£® y¤ «¥¨ï, ª ª ¡á®«îâ®
|
||||
MK>> «¥¢ë© ¯p®¤yªâ. ¤«ï ¬¥ï ¥£® y¦¥ ¥â. áâ ¤ pâ ¤«ï åp ¥¨ï âp¤®áëå
|
||||
MK>> ᨪ«¥pëå ä ©«®¢ - í⮠审¥â , § ç¨â, p ¡®â âì ¤® ⮫쪮 á ¥©.
|
||||
|
||||
RK> <20>â®â ¡§ æ ¤® ¢ª«îç¨âì ¢ ¤®ª¨ ¯® ¯ ª¥ây ZXZIP, ¢ ä ª ¨ ¢ ¤®ª¨ ª
|
||||
RK> ¢¨£ â®py :)
|
||||
|
||||
¤ ªã¤ 㣮¤®, «¨èì ¡ë ¯®«ì§ á ⮣® ¡ë« . â® ¢® ®¤¨å ä®p¬ ⮢ ¤¨áª®¢ 㦥
|
||||
¯«®¤¨«¨ ᪮«ìª®..
|
||||
|
||||
MK>> ªáâ â¨, ¥é¥ ® áâ ¤ pâ å 审¥âëå $z - ¯® ¬®¥¬y p¥è¥¨î, ¬®£®â®¬ë¥
|
||||
MK>> ¤®«¦ë ¡ëâì ¯® p áè¨p¥¨î $z0..$z9, ®¤®â®¬ë¥ - $z
|
||||
|
||||
RK> ’®£¤ â ª®© ¢®¯p®c. …c«¨ ä ©« (y¦¥ ¯ ª®¢ ë©) ¥ y¡¨p ¥âcï ¢ p娢
|
||||
RK> (>255), çâ® ¤¥« ¥èì? <20> §p¥§ ¥èì ¨ ®câ ⮪ ¢ $zn? ˆ«¨ â ª¨å p §p뢮¢ y ⥡ï
|
||||
RK> ¥â ¢ ¯p¨æ¨¯¥? …c«¨ p §p¥§ ¥èì â® ª ª ¨¤¥â¨ä¨æ¨py¥èì ®câ ⮪ (¢ ¤py£®¬
|
||||
RK> $z) ¨ ª ª ¯®â®¬ cª«¥¨¢ ¥èì ¢ UNZIP? ˆ ¥é¥. ’ë c«¥¤yî騬 ⮬ ¬ ¯p¨c¢ ¨¢ ¥èì
|
||||
|
||||
¢ §¨¯¥ ¢á¥ ¯p®áâ® - ª®ç¨«áï ®¤¨ - ®âªpë¢ ¥¬ á«¥¤ãî騩 ¨ ¤®ç¨âë¢ ¥¬ ¨§ ¥£®.
|
||||
ᬮâp¨ á ¬, ¥á«¨ 祣® ¯®©¬¥èì:
|
||||
|
||||
=========== ‚ëà¥¦ì ¨ á®åà ¨ ===========
|
||||
int ZOpen(void)
|
||||
{
|
||||
long l;
|
||||
unsigned char hbf[17];
|
||||
int i;
|
||||
unsigned short hsum=0;
|
||||
static char c=0;
|
||||
|
||||
if(hZipFile) {_dos_close(hZipFile); hZipFile=0;}
|
||||
|
||||
if(iZipVol==2)
|
||||
{
|
||||
if(c>9) return _ZERR_TOOLONG;
|
||||
szZipName[strlen(szZipName)-1]=c+'0';
|
||||
}
|
||||
|
||||
if(_dos_open(szZipName, O_RDONLY, &hZipFile)) {hZipFile=0; return _ZERR_OPEN;}
|
||||
|
||||
l=filelength(hZipFile)-17;
|
||||
|
||||
if((l-256)&0xffff00ffl) return _ZERR_BADHOB;
|
||||
|
||||
_dos_read(hZipFile, hbf, 17, (unsigned *)&i);
|
||||
|
||||
for(i=15; --i>=0; hsum+=hbf[i]); hsum+=(hsum<<8)+105;
|
||||
|
||||
if((hsum!=(unsigned short)hbf[15]+(((unsigned short)hbf[16])<<8)) ||
|
||||
l!=((unsigned short)hbf[13]+(((unsigned short)hbf[14])<<8))) return
|
||||
_ZERR_BADHOB;
|
||||
|
||||
uZipLeft=(unsigned short)hbf[11]+(((unsigned short)hbf[12])<<8);
|
||||
|
||||
if((l<uZipLeft) || (l-uZipLeft>255) ||
|
||||
c?memcmp(hbf,"********ZIP",11):memcmp(hbf+8,"ZIP",3))
|
||||
return _ZERR_NONZIP;
|
||||
|
||||
if(!c) for(i=0;i<8;i++) ArcName[i]=PRINTABLE(hbf[i]); ArcName[8]=0;
|
||||
|
||||
if(iZipVol==2) {c++; if(uZipLeft!=0xff00) iZipVol++;}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int ZRead(unsigned char *bf, unsigned int n)
|
||||
{
|
||||
int i;
|
||||
unsigned int nx;
|
||||
|
||||
if(!hZipFile && i=ZOpen()) return i; // gotta open first
|
||||
|
||||
if(!usZipLeft)
|
||||
{
|
||||
if(iZipVol!=2) return 0; // correct eof
|
||||
if((i=ZOpen())==_ZERR_OPEN) return 0; // correct eof
|
||||
else if(i) return i;
|
||||
}
|
||||
|
||||
for(;;)
|
||||
{
|
||||
nx=(uZipLeft>n)?n:uZipLeft;
|
||||
|
||||
_dos_read(hZipFile, bf, nx, (unsigned *)&i);
|
||||
|
||||
bf+=nx; n-=nx; uZipLeft-=nx;
|
||||
|
||||
if(!n) return -1; // read okidoki
|
||||
|
||||
if(iZipVol!=2) return _ZERR_UNEXPEOF;
|
||||
|
||||
if((i=ZOpen())==_ZERR_OPEN) return _ZERR_VOLMISS;
|
||||
else if(i) return i;
|
||||
}
|
||||
}
|
||||
=========== ‚ëà¥¦ì ¨ á®åà ¨ ===========
|
||||
|
||||
RK> ¨¬ï "********". ’¥¯¥pì c¬®âp¨ c¨ây¥¢¨ : § ¯ ª®¢ « ï çâ® ¨âì ¢
|
||||
RK> ¬®£®â®¬ë© p娢. Cª ¦¥¬ â®â ¦¥ ZED. <20>®â®¬ § ¯ ª®¢ « ¥é¥ ¤¥¬y ª ªyî
|
||||
RK> ¨¡y¤ì ⮦¥ ¢ ¬®£®â®¬ë© p娢. ’.¥. ¯®ïâ® ¤ , ¯®«y稫 ¤®ä¨£ ä ©«®¢
|
||||
RK> "********". Š ª ¬¥ ⥯¥pì ¨å ®â«¨ç¨âì, ¤«ï ZED ¨ ¤«ï ¤¥¬ë?
|
||||
|
||||
¢ âp¤®á¥ - ¯® ¯®p浪ã, á ç « ¨¤¥â á ¨¬¥¥¬, § ¨¬ á® §¢¥§¤ ¬¨. á®åp ïâì
|
||||
íâ®â ¯®p冷ª - ¤¥«® å®§ï©áª®¥. ¢ 审¥â¥ - ¨¬ï 审¥â®¥ ¡ã¤¥â ¥áâ¥á⢥® ã ¢á¥å
|
||||
********, § â® ¨¬ï ¤®á®¢áª®¥ ¡ã¤¥â ã ¢á¥å p §®¥. ¯p¨¬¥p, ã zed ¡ã¤ãâ
|
||||
zed.$z0,
|
||||
zed.$z1, zed.$z2..., ã ¤¥¬ë demo.$z0, demo.$z1.. ã p §¢¥ âp㤮 ®â«¨ç¨âì?
|
||||
|
||||
RK> <20>p® â® ª ª ® ¥ ¬®¦¥â p c¯ ª®¢ âì ä ©« com1 å®âì ¯¨è¥â?
|
||||
|
||||
ª®¥ç®, ® ¥ â® ¯¨è¥â. ¯¥p¥¡p ¢ ¢á¥ ¢®§¬®¦ë¥ p áè¨p¥¨ï (¢ á¬ëá«¥ .$e?,
|
||||
?={' ','0'..'9','a'..'z'}) ᤥ« ¥â ¢ë¢®¤ ® çp¥§¬¥p®© ¯®¯ã«ïp®á⨠¤ ®£®
|
||||
¨¬¥¨
|
||||
;).
|
||||
|
||||
RK> Ÿ ¢ ¢¨£ â®p¥ ®¡®è¥« íâ® ¯y⥬ ¤®¡ ¢«¥¨ï ª ¨¬¥¨ â ª¨å ä ©«®¢ c¢®¥
|
||||
RK> c®¡c⢥®¥ ¦¥ ¨¬ï. ’.¥. ¨¬ï - com1, câ ¥â com1com1 ¨ â.¤.
|
||||
|
||||
¬®¦® ¥é¥ ª ª ã p¨ª , ¤®¡¨¢ âì ¤® 8 ᨬ¢®«®¢ ¯®¤ç¥pª¨¢ ¨ï¬¨.
|
||||
|
||||
|
||||
With best wishes, Michael.
|
||||
|
||||
---
|
||||
|
||||
Ä NETMAIL (2:5015/97) ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ NETMAIL Ä
|
||||
Msg : 13 of 71 Rcv Pvt K/s
|
||||
From : Michael Kondratyev 2:5030/299.18 <20>ïâ 14 €¢£ 98 20:07
|
||||
To : Roman Khroupnin 2:5015/97
|
||||
Subj : SN102, ZXZIP inside
|
||||
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
||||
|
||||
Hello Roman!
|
||||
|
||||
Tue Aug 11 1998, Roman Khroupnin á®áâàï¯ «( ) ¯¨á쬮 ª Michael Kondratyev:
|
||||
|
||||
MK>> , ¢á¥ ®¤® â殮«¥© ¡ë«® ¡ë ¯®«ì§®¢ â¥«î ®¡êïá¨âì, çâ® ¤® ¤«ï
|
||||
MK>> boot B § ¤ ¢ âì "boot B", ¤«ï boot "1" C - "boot \"1\"C", a
|
||||
MK>> ¯p® ¢á¥ §¢¥§¤ë/¢®¯p®áë ¨ ¯p®ç¨¥ ¢¨«¤ª pâë ® ¬®¦¥â § ¡ëâì. «yçè¥ ¯yáâì
|
||||
MK>> á ¬ ¢ë¡¨p ¥â ¨§ £®â®¢ëå y¦ë¥..
|
||||
|
||||
RK> H¥, ¥ ¯®ï«. ‚®â c¬®âp¨, ¨¬¥¥¬ p娢 ¨§ c«¥¤yîé¨å ä ©«®¢:
|
||||
|
||||
¤ ¥ ® ⮬ ï - ¤ ¡ë ¨§¡¥¦ âì £«î¯ëå ¢®¯p®á®¢ 'ª ª § ¤ âì ¨¬ï?' ï p¥è¨« çâ®
|
||||
«ãçè¥ ¨ª ª.
|
||||
|
||||
RK> boot B
|
||||
RK> boot1 B
|
||||
RK> boot2 B
|
||||
RK> boot3 B
|
||||
RK> boot B
|
||||
RK> Œ®¦¥â â ª ï c¨ây æ¨ï ¡ëâì? ‚¯®«¥. ‚®â "¯®«ì§®¢ ⥫ì" ª ª âë £®¢®p¨èì, ¢
|
||||
RK> MSDOS ¢ ¢¨£ â®p¥ ®â¬¥ç ¥â ⮫쪮 ¯¥p¢ë© ä ©« ¨ £®¢®p¨â - p c¯ ª®¢ âì.
|
||||
|
||||
¥á«¨ â ª (§¤¥áì ¨ ¨¦¥ ¯®¤p §ã¬¥âáï, çâ® ï ¢á¥-â ª¨ ª®£¤ -â® ¢áâ ¢«î p ¡®âã á
|
||||
¨¬¥ ¬¨) - p ᯠªãîâáï ®¡
|
||||
|
||||
RK> ’¥¯¥pì ä®p¬¨py¥âcï ª®¬ ¤ ï câp®ª ⨯ zxupzip arc.$z [boot B]
|
||||
RK> (¨«¨
|
||||
RK> "boot B", ª ª ¡®«ìè¥ p ¢¨âcï).
|
||||
|
||||
¯¥p¢ë© ¢ p¨ â ¬®¦¥â ¨ ᬮâp¨âáï ªp ᨢ¥¥, ® á¨èë© ¯ pá¥p ª®¬áâp®ª¨ ï
|
||||
¯¥p¥¯¨áë¢ âì ¨§-§ â ª®© ¬¥«®ç¨ â®ç® ¥ å®çã.
|
||||
|
||||
RK> „ «¥¥ zxunzip ¯p®¡¥£ ¥â ¯® ¢c¥¬y p娢y
|
||||
RK> ¨ ¢ë¤¥p£¨¢ ¥â ¯¥p¢ë© ¨, c®®â¢¥âc⢥®, ¯®c«¥¤¨© ä ©«. Š ª¨¥
|
||||
RK> ¯p®¡«¥¬ë? ‚ TR-DOS c p c¯®«®¦¥¨¥¬ ®¤¨ ª®¢ëå ä ©«®¢ ¥â ¯p®¡«¥¬, ¢
|
||||
RK> MS-DOS ¯®c«¥¤¨© § ¯¨è¥âcï c ¨¬¥¥¬ boot_001.$b ›?
|
||||
|
||||
¥á«¨ ¢ ç¨áâë© ª â «®£ - ¯¥p¢ë© ¡ã¤¥â boot.$B, ¢â®p®© boot.$B0; ¥á«¨ 㦥 â ª¨å
|
||||
¡ë«® - ¡ã¤¥â ¯®á«¥¤®¢ â¥«ì® ¨áª âì ᢮¡®¤ë¥. ¢®§¬®¦® ¯p¨¤¥âáï «¨§¨p®¢ âì
|
||||
stdout ®â ¥£®, çâ®¡ë ¯®ïâì, ª ª ª®ªp¥â® ¯®«ã稫®áì..
|
||||
|
||||
RK>>> € ª ª ¯p®¢¥p¨âì æ¥«®câ®câì p娢 ?
|
||||
|
||||
RK> ’ ª ¢c¥-â ª¨ ª ª ¦¥?
|
||||
|
||||
⮫쪮 ¥á«¨ ¯p®¡¥¦ âì ®â ç « ¤® ª®æ , ª ª p ¥¥ ¨ £®¢®p¨«. ¨«¨ âë ¯p®
|
||||
'zxunzip -t'? ;)
|
||||
|
||||
MK>>>> ªáâ â¨, ¥é¥ ® áâ ¤ pâ å 审¥âëå $z - ¯® ¬®¥¬y p¥è¥¨î,
|
||||
MK>>>> ¬®£®â®¬ë¥ ¤®«¦ë ¡ëâì ¯® p áè¨p¥¨î $z0..$z9, ®¤®â®¬ë¥ - $z
|
||||
|
||||
RK> Šcâ â¨, ¤ «ìè¥ çâ®? $za..$zz?
|
||||
|
||||
¯®¯p®¡ã©, ® ⥡¥ á ¬ ᪠¦¥âê. ¥ § ¡ë¢ ©, çâ® íâ® p娢 â®p ¤«ï âp¤®áëå
|
||||
ᨪ«¥p¨á⮢ ¨ ᪮«ìª® ¡ã¤¥â 2544/255
|
||||
|
||||
RK>>> ¤®ä¨£ ä ©«®¢ "********". Š ª ¬¥ ⥯¥pì ¨å ®â«¨ç¨âì, ¤«ï ZED ¨
|
||||
RK>>> ¤«ï ¤¥¬ë?
|
||||
MK>> ¢ âp¤®á¥ - ¯® ¯®p浪y, á ç « ¨¤¥â á ¨¬¥¥¬, § ¨¬ á® §¢¥§¤ ¬¨.
|
||||
MK>> á®åp ïâì íâ®â ¯®p冷ª - ¤¥«® å®§ï©áª®¥.
|
||||
|
||||
RK> •®p®è®, ¥c«¨ â ª¨ íâ®â ¯®p冷ª ¢¤py£ ¥ c®¡«î¤¥, ç⮠⮣¤ ? C®®¡é¥¨¥ ®¡
|
||||
RK> ®è¨¡ª¥, ¬®« ®¤®£® ¨§ ⮬®¢ ¥â?
|
||||
|
||||
, ¢á¥ ç⮠㣮¤®. ® ®è¨¡ª ª ª ï-â® ¢®§¨ª¥â ¢¥pïª .
|
||||
|
||||
|
||||
With best wishes, Michael.
|
||||
|
||||
--- <20>®«ª®¢¨ª 䨧§ à浪¥, ä®à¬ ®¤¥¦¤ë ®¬¥à 2.50.A0611+
|
||||
|
||||
2967
Docs/FORMATS/Расширения файлов TR-DOS.html
Normal file
2967
Docs/FORMATS/Расширения файлов TR-DOS.html
Normal file
File diff suppressed because it is too large
Load Diff
11
Docs/SPECTRUM.CFG
Normal file
11
Docs/SPECTRUM.CFG
Normal file
@ -0,0 +1,11 @@
|
||||
Sprinter ZX
|
||||
c:\zx\roms\SP_128.BIN
|
||||
c:\zx\roms\SP__48.BIN
|
||||
c:\zx\roms\SP_TRD.BIN
|
||||
c:\zx\roms\SP_EXP.BIN
|
||||
c:\zx\roms\SP_EXP.BIN
|
||||
c:\zx\roms\SP_EXP2.BIN
|
||||
/turbo /7FFD /ret-fn
|
||||
;
|
||||
|
||||
|
||||
5
Docs/changes.txt
Normal file
5
Docs/changes.txt
Normal file
@ -0,0 +1,5 @@
|
||||
+ ¯®¤¤¥à¦ª SCL
|
||||
+ ¬¥«ª¨© à¥ä ªâ®à¨£
|
||||
fix ¯®¤¤¥à¦ª ¥¯®«®© ¤¥è¨äà æ¨¨ AY (Atarin § ¯¥«)
|
||||
fix ¡ £ á § ¢¨á ¨¥¬ ¯® CAD ¢ ०¨¬ å ¡¥§ ¯®à⮢ á¯à¨â¥à (ᯠᨡ® <20>«í©¤ã)
|
||||
|
||||
49
Docs/xFFD.txt
Normal file
49
Docs/xFFD.txt
Normal file
@ -0,0 +1,49 @@
|
||||
Pentagon & Scorpion
|
||||
|
||||
#7FFD
|
||||
bit0 \
|
||||
bit1 - номер страницы ОЗУ, подключенной в верхние 16 КБ памяти с адреса #C000
|
||||
bit2 /
|
||||
|
||||
bit3 - выбор отображаемой видеостраницы. страница 5 / страница 7
|
||||
bit4 - номер страницы ПЗУ. BASIC128 / BASIC48
|
||||
|
||||
bit5 \- запрещение расширенной памяти (48K защёлка) при блокированной памяти > 128 кб, иначе старший бит номера страницы
|
||||
bit6 - используются при расширении памяти до 512K в выборе номера страницы
|
||||
bit7 /
|
||||
|
||||
|
||||
#1FFD
|
||||
bit0 – открывает доступ на чтение и запись в страницу RAM0 из окна CPU0 (#0000-#3FFF).
|
||||
bit1 – при D1=1 подставляет в окно CPU0 сервисную страницу из текущего выбранного банка ПЗУ (ROM2)
|
||||
bit2 - не используется
|
||||
bit3 - используется как сигнал передачи данных TxD программного интерфейса RS232
|
||||
|
||||
bit4 - 1 - подключает страницу ОЗУ в банку 3, номер страницы в bit 2..0 #7FFD
|
||||
bit5 - используется как сигнал интерфейса принтера STROBE
|
||||
bit6 - не используется
|
||||
bit7 - не используется
|
||||
|
||||
; LD A,#E2 ; ROM-ID - BASIC 128
|
||||
; LD B,#42 ; page
|
||||
; CALL SET_ROM
|
||||
|
||||
; LD A,#E3 ; ROM-ID - BASIC 48
|
||||
; LD B,#43 ; page
|
||||
; CALL SET_ROM
|
||||
|
||||
; LD A,#E1 ; ROM-ID - TR-DOS
|
||||
; LD B,#44 ; page
|
||||
; CALL SET_ROM
|
||||
|
||||
; LD A,#E0 ; ROM-ID - EXPANSION
|
||||
; LD B,#45 ; page
|
||||
; CALL SET_ROM
|
||||
|
||||
; LD A,#EB ; ROM-ID - BIOS-1
|
||||
; LD B,#46 ; page
|
||||
; CALL SET_ROM
|
||||
|
||||
; LD A,#EF ; ROM-ID - BIOS-2
|
||||
; LD B,#47 ; page
|
||||
; CALL SET_ROM
|
||||
71
macroses/accelerator.a80
Normal file
71
macroses/accelerator.a80
Normal file
@ -0,0 +1,71 @@
|
||||
; Œ ªà®áë ªá¥«¥à â®à ¤«ï ªà á®âë))
|
||||
|
||||
;--------[¢ëª«îç¨âì ªá¥«¥à â®à]--------
|
||||
MACRO ACC_Off
|
||||
ld b,b
|
||||
ENDM
|
||||
;---------------------------------------
|
||||
|
||||
;---------[०¨¬ ¯à¨¥¬ ¡ ©â ]----------
|
||||
MACRO ACC_SetBlockSize
|
||||
ld d,d
|
||||
; ¢ª«îç ¥â ªá¥«¥à â®à ¢ ०¨¬ ¯à¨¥¬
|
||||
; ¡ ©â à §¬¥à ¡«®ª ¤ «¥¥ á«¥¤ã¥â
|
||||
; ª®¬ ¤ ⨯ LD A,dat, £¤¥ dat ¨ ¡ã¤¥â
|
||||
; ®¢ë¬ à §¬¥à®¬ ¡«®ª . …᫨ à §¬¥à
|
||||
; ¡«®ª ¡ë« ãáâ ®¢«¥ à ¥¥, ¥£® ¬®¦®
|
||||
; ¥ ãáâ ¢«¨¢ âì.
|
||||
ENDM
|
||||
;---------------------------------------
|
||||
|
||||
;-------[§ ¯®«¥¨¥ ®¤¨¬ ¡ ©â®¬]-------
|
||||
MACRO ACC_FillOneByte
|
||||
ld c,c
|
||||
; ޝ¥à æ¨ï Fill. <20>®á«¥¤ãîé ï ª®¬ ¤
|
||||
; ⨯ LD (HL),A ¯à¨¢¥¤¥â ª § ¯®«¥¨î
|
||||
; 㪠§ ®£® à ¥¥ ª®«¨ç¥á⢠¡ ©â
|
||||
; § 票¥¬ A
|
||||
ENDM
|
||||
;---------------------------------------
|
||||
|
||||
;----[§ ¯®«¥¨¥ ¢¥à⨪ «ìëå «¨¨©]----
|
||||
;ޝ¥à æ¨ï Fill ¤«ï £à ä¨ç¥áª®£® íªà .
|
||||
MACRO ACC_FillScreenOneByte
|
||||
ld e,e
|
||||
; <20>®á«¥¤ãîé ï ª®¬ ¤ ⨯ LD (HL),A
|
||||
; ¯à¨¢¥¤¥â ª § ¯®«¥¨î § 票¥¬ A
|
||||
; ¢¥à⨪ «ìëå «¨¨© íªà 㪠§ ë¬
|
||||
; à ¥¥ ª®«¨ç¥á⢮¬ ¡ ©â
|
||||
ENDM
|
||||
;---------------------------------------
|
||||
|
||||
;----------[ª®¯¨à®¢ ¨¥ ¡«®ª ]----------
|
||||
MACRO ACC_CopyBlock
|
||||
ld l,l
|
||||
; <20>®á«¥¤ãîé ï ª®¬ ¤ ⨯ LD A,(HL)
|
||||
; ¯à¨¢¥¤¥â ª § ¯®«¥¨î އ“ ªá¥«¥à â®à
|
||||
; ¤ 묨 ¨§ ¤à¥á (HL), ª®¬ ¤ ⨯
|
||||
; LD (DE),A ¯à¨¢¥¤¥â ª ¯¥à¥§ ¯¨á¨ ¤ ëå
|
||||
; ¨§ އ“ ªá¥«¥à â®à ¢ ®á®¢®¥ ¨«¨
|
||||
; ¢¨¤¥®-އ“.
|
||||
ENDM
|
||||
;---------------------------------------
|
||||
|
||||
;---[ª®¯¨à®¢ ¨¥ £à ä¨ç¥áª®£® ¡«®ª ]----
|
||||
MACRO ACC_CopyScreenBlock
|
||||
ld a,a
|
||||
; ª®¯¨à®¢ ¨¥ ¡«®ª ¤«ï £à ä. íªà .
|
||||
; <20>®á«¥¤ãîé ï ª®¬ ¤ ⨯ LD A,(HL)
|
||||
; ¯à¨¢¥¤¥â ª § ¯®«¥¨î އ“ ªá¥«¥à â®à
|
||||
; ¤ 묨 ¨§ ¤à¥á (HL), ª®¬ ¤ ⨯
|
||||
; LD (DE),A ¯à¨¢¥¤¥â ª ¯¥à¥§ ¯¨á¨ ¤ ëå
|
||||
; ¨§ އ“ ªá¥«¥à â®à ¢ ¢¨¤¥®-އ“
|
||||
; ¢¥à⨪ «ì묨 «¨¨ï¬¨.
|
||||
ENDM
|
||||
;---------------------------------------
|
||||
|
||||
;--------------[Reserved]---------------
|
||||
MACRO ACC_Reserved
|
||||
LD H,H
|
||||
ENDM
|
||||
;---------------------------------------
|
||||
73
macroses/macros.a80
Normal file
73
macroses/macros.a80
Normal file
@ -0,0 +1,73 @@
|
||||
;
|
||||
MACRO FRAM_ON
|
||||
IN A,(FastRAM_ON)
|
||||
IF Emulator
|
||||
PUSH BC
|
||||
PUSH AF
|
||||
LD BC,#1FFD
|
||||
XOR A
|
||||
OUT (C),A
|
||||
OUT (FastRam_BANK0),A
|
||||
POP AF
|
||||
POP BC
|
||||
ENDIF
|
||||
ENDM
|
||||
|
||||
MACRO FRAM_OFF
|
||||
IN A,(FastRAM_OFF)
|
||||
IF Emulator
|
||||
PUSH BC
|
||||
PUSH AF
|
||||
LD BC,#1FFD
|
||||
LD A,1
|
||||
OUT (C),A
|
||||
XOR A
|
||||
OUT (FastRam_BANK0),A
|
||||
POP AF
|
||||
POP BC
|
||||
ENDIF
|
||||
ENDM
|
||||
;
|
||||
;
|
||||
MACRO PrintProc
|
||||
|
||||
MODULE PrintF
|
||||
;---------------------------------------
|
||||
printstr:
|
||||
; ¢ ॣ. HL ¤à¥á ¯¥ç â ¥¬ë© ¡ãä¥à
|
||||
LD C,Dss.PChars
|
||||
jp ToDSS
|
||||
;---------------------------------------
|
||||
|
||||
;---------------------------------------
|
||||
; ¢ ॣ. A ç¨á«® ¯¥ç â ¥¬®¥ ª ª hex
|
||||
printhex:
|
||||
LD D,A
|
||||
RRCA
|
||||
RRCA
|
||||
RRCA
|
||||
RRCA
|
||||
AND #0F
|
||||
ADD A,#30
|
||||
CP #3A
|
||||
JR C,.PRNH1
|
||||
ADD A,7
|
||||
.PRNH1:
|
||||
CALL .PRINT_CHAR
|
||||
LD A,D
|
||||
AND #0F
|
||||
ADD A,#30
|
||||
CP #3A
|
||||
JP C,.PRINT_CHAR
|
||||
ADD A,7
|
||||
JP .PRINT_CHAR
|
||||
; ¢ ॣ¨áâॠA ᨬ¢®« ¤«ï ¯¥ç â¨
|
||||
.PRINT_CHAR:
|
||||
LD BC,#0182
|
||||
JP ToBIOS
|
||||
;---------------------------------------
|
||||
ENDMODULE
|
||||
|
||||
ENDM
|
||||
;
|
||||
;
|
||||
1177
spectrum.asm
Normal file
1177
spectrum.asm
Normal file
File diff suppressed because it is too large
Load Diff
336
trdscl.a80
Normal file
336
trdscl.a80
Normal file
@ -0,0 +1,336 @@
|
||||
; C«ã¦¥¡ë© (¤¥¢ïâë© c¥ªâ®p ¢ ®¡« c⨠ª â «®£ ) ¨c¯®«ì§ã¥âcï c¨c⥬®©
|
||||
; ¤«ï åp ¥¨ï ¨ä®p¬ 樨 ® c ¬®© ¤¨cª¥â¥. ‚ â ¡«¨æ¥ ¯p¨¢¥¤¥ ¥£® ä®p¬ â:
|
||||
; ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
|
||||
; ºC¬¥é¥¨¥ ®â ³ „«¨ ³ ‡ 票¥ º
|
||||
; º ç « c¥ªâ®p ³ ³ º
|
||||
; ÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĺ
|
||||
; º #00 ³ 1 ³ <20> ©â 0 º
|
||||
; º #01 ³ 224 ³ H¥ ¨c¯®«ì§ã¥âcï (§ ¯®«¥® ¡ ©â®¬ 0) º
|
||||
; º #E1 ³ 1 ³ H®¬¥p ¯¥p¢®£® ¥§ ï⮣® c¥ªâ®p ¤¨cª¥ º
|
||||
; º #E2 ³ 1 ³ H®¬¥p ¤®p®¦ª¨ ¯¥p¢®£® ¥§ ï⮣® c¥ªâ®p º
|
||||
; º #E3 ³ 1 ³ ’¨¯ ¤¨cª¥âë º
|
||||
; º #E4 ³ 1 ³ Š®«¨ç¥c⢮ ä ©«®¢ º
|
||||
; º #E5 ³ 2 ³ Š®«¨ç¥c⢮ c¢®¡®¤ëå c¥ªâ®p®¢ º
|
||||
; º #E7 ³ 1 ³ ˆ¤¥â¨ä¨ª æ¨®ë© ª®¤ TR-DOS (#10) º
|
||||
; º #E8 ³ 2 ³ H¥ ¨c¯®«ì§ã¥âcï (§ ¯®«¥® ¡ ©â®¬ 0) º
|
||||
; º #EA ³ 9 ³ H¥ ¨c¯®«ì§ã¥âcï (§ ¯®«¥® ¡ ©â®¬ 32) º
|
||||
; º #F3 ³ 1 ³ H¥ ¨c¯®«ì§ã¥âcï (§ ¯®«¥® ¡ ©â®¬ 0) º
|
||||
; º #F4 ³ 1 ³ Š®«¨ç¥c⢮ 㤠«¥ëå ä ©«®¢ º
|
||||
; º #F5 ³ 8 ³ H §¢ ¨¥ ¤¨cª¥âë º
|
||||
; º #FD ³ 3 ³ H¥ ¨c¯®«ì§ã¥âcï (§ ¯®«¥® ¡ ©â®¬ 0) º
|
||||
; ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
|
||||
STRUCT SEEK
|
||||
FirstFreeSec BYTE 0
|
||||
FirstFreeTrk BYTE 1
|
||||
DiskType BYTE #16
|
||||
AllFilesNum BYTE 0
|
||||
FreeSectors WORD 0 ; beta version
|
||||
TRDOS_ID BYTE #10
|
||||
notuse1 WORD 0
|
||||
notuse2 BLOCK 9,32
|
||||
notuse3 BYTE 0
|
||||
DelFilesNum BYTE 0
|
||||
DiskName TEXT 8, {" "} ; beta version
|
||||
ENDS
|
||||
|
||||
/*
|
||||
SYS_SECTOR:
|
||||
DB 0
|
||||
BLOCK 224,0
|
||||
.FirstFreeSec: DB 0
|
||||
.FirstFreeTrk: DB 1
|
||||
.DiskType DB #16 ; #16 = 80-2, #17 = 40-2, #18 = 80-1, #19 = 40-1
|
||||
.AllFilesNum: DB 0
|
||||
.FreeSectors: DW 2544
|
||||
DB #10
|
||||
DW 0000
|
||||
BLOCK 9,32
|
||||
DB 0
|
||||
.DelFilesNum: DB 0
|
||||
.DiskName: BLOCK 8,32
|
||||
BLOCK 3,0
|
||||
;
|
||||
*/
|
||||
|
||||
; ÉÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
|
||||
; ºC¬¥é¥¨¥ ³„«¨ ³ H § 票¥ º
|
||||
; º®â ç « ³ ³ º
|
||||
; ÇÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ
|
||||
; º #00 ³ 8 ³ ˆ¬ï ä ©« º
|
||||
; º #08 ³ 1 ³ ’¨¯ ä ©« º
|
||||
; º #09 ³ 2 ³ <20> p ¬¥âp START º
|
||||
; º #0B ³ 2 ³ <20> p ¬¥âp LENGTH º
|
||||
; º #0D ³ 1 ³ Š®«¨ç¥c⢮ c¥ªâ®p®¢ º
|
||||
; º #0E ³ 1 ³ H®¬¥p 1£® c¥ªâ®p º
|
||||
; º #0F ³ 1 ³ H®¬¥p ¤®p®¦ª¨ º
|
||||
; ÈÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
|
||||
/*
|
||||
CAT_ELEMENT:
|
||||
.Name BLOCK 8,32
|
||||
.Type DB 0
|
||||
.Start DW 0000
|
||||
.Length DW 0000
|
||||
.Sectors DB 0
|
||||
.FirstSector DB 0
|
||||
.FirstTrack DB 0
|
||||
*/
|
||||
|
||||
STRUCT CAT_Elements
|
||||
Name block 8
|
||||
Type BYTE
|
||||
Start WORD
|
||||
Length WORD
|
||||
Sectors BYTE
|
||||
FirstSector BYTE
|
||||
FirstTrack BYTE
|
||||
ENDS
|
||||
|
||||
STRUCT SclOffsets
|
||||
ID BLOCK 8
|
||||
Files BYTE
|
||||
FileBlock CAT_Elements
|
||||
ENDS
|
||||
; 655360 kb = 160 tracks * 16 sectors * 256 bites
|
||||
; 80 tracks * 2 heads * 16 sectors * 256 bites = 655360 kb
|
||||
; Page = 64 sectors = 4 tracks
|
||||
|
||||
;-----------[]
|
||||
Load_SCL:
|
||||
;-------[Œ¥âª ¤¨áª - ¨¬ï ä ©« ]-------
|
||||
ld hl,ONE_FILE
|
||||
ld de,SCL_Buffer
|
||||
ld bc,#0300+Dss.EX_Path
|
||||
rst ToDSS
|
||||
jr c,.skip
|
||||
|
||||
ld hl,SCL_Buffer
|
||||
ld a,'.'
|
||||
ld bc,0008
|
||||
ld de,SYS_SECTOR.DiskName
|
||||
.loop:
|
||||
cp (hl)
|
||||
jr z,.skip
|
||||
ldi
|
||||
jp pe,.loop
|
||||
|
||||
.skip:
|
||||
;-------[¯à®¢¥àª 奤íà SINCLAIR]------
|
||||
|
||||
ld a,(IMAGE_HANDLER)
|
||||
ld hl,SCL_Buffer
|
||||
ld de,8
|
||||
ld c,Dss.Read
|
||||
rst ToDSS
|
||||
ret c ; ®¡à ¡®â稪 ®è¨¡ª¨
|
||||
|
||||
ld hl,SCL_Buffer
|
||||
ld de,SCL_HEADER
|
||||
ld b,8
|
||||
.check_header:
|
||||
ld a,(de)
|
||||
cp (hl)
|
||||
jr nz,.error_header
|
||||
inc hl
|
||||
inc de
|
||||
djnz .check_header
|
||||
jr .get_size
|
||||
.error_header:
|
||||
scf
|
||||
ret
|
||||
|
||||
;------[¢ëç¨á«¥¨¥ à §¬¥à ¤«ï TRD]-----
|
||||
.get_size:
|
||||
/* ld a,(IMAGE_HANDLER)
|
||||
ld hl,0
|
||||
ld ix,SclOffsets.Files
|
||||
ld b,l
|
||||
ld c,Dss.Move_FP
|
||||
rst ToDSS ; 㪠§ â¥«ì ¡ ©â ª®«¨ç¥á⢠¡«®ª®¢ (ä ©«®¢)
|
||||
ret c ; ®¡à ¡®â稪 ®è¨¡ª¨!!!!!
|
||||
;*/
|
||||
ld a,(IMAGE_HANDLER)
|
||||
ld hl,SCL_Buffer
|
||||
ld de,#701
|
||||
ld c,Dss.Read
|
||||
rst ToDSS ; !FIXIT ᤥ« âì ª®âà®«ì ®è¨¡ª¨? ; ç¨â ¥¬ ¡ ©â ª®«¨ç¥á⢠¡«®ª®¢ (ä ©«®¢)
|
||||
;
|
||||
ld a,(SCL_Buffer)
|
||||
ld l,a
|
||||
xor a
|
||||
ld h,a
|
||||
;
|
||||
add hl,hl ;*2
|
||||
push hl
|
||||
add hl,hl ;*4
|
||||
ld d,h
|
||||
ld e,l
|
||||
add hl,hl ;*8
|
||||
add hl,de ;*12
|
||||
pop de
|
||||
add hl,de ; ¢ HL § 票¥ A*14
|
||||
|
||||
add hl,bc
|
||||
|
||||
ld de,SclOffsets.FileBlock
|
||||
add hl,de ; ¢ HL à §¬¥à ®â ç « SCL ¤® ç « ¡«®ª ¤ ëå (header_length)
|
||||
push hl
|
||||
;
|
||||
ld a,(IMAGE_HANDLER)
|
||||
ld hl,0
|
||||
ld ix,4 ; ¨£®à¨¬ ª®â஫ìãî á㬬ã scl ä ©«
|
||||
ld b,2
|
||||
ld c,Dss.Move_FP
|
||||
rst ToDSS ; 㪠§ â¥«ì ª®¥æ ä ©«
|
||||
jr nc,1F ; ®¡à ¡®â稪 ®è¨¡ª¨!!!!!
|
||||
|
||||
pop hl
|
||||
ret
|
||||
|
||||
1: push ix
|
||||
pop de ; § 票¥ ¬« ¤è¨å 16 ¡¨â à §¬¥à ä ©«
|
||||
ex (sp),hl ; § 票¥ header_length ¢ HL, áâ àè ï ç áâì à §¬¥à ä ©« á⥪¥
|
||||
ex de,hl ; ¢ HL § 票¥ ¬« ¤è¨å 16 ¡¨â à §¬¥à ä ©« , ¢ DE - header_length
|
||||
|
||||
sbc hl,de
|
||||
ld de,0
|
||||
ex (sp),hl ; ¬« ¤è ï ç áâì à §¬¥à ä ©« á⥪¥
|
||||
sbc hl,de ; ¢ HL áâ àè ï ç áâì à §¬¥à ä ©«
|
||||
|
||||
ex (sp),hl ; áâ àè ï ç áâì à §¬¥à ä ©« á⥪¥
|
||||
ld de,#1000
|
||||
add hl,de
|
||||
|
||||
ex (sp),hl ; ¬« ¤è ï ç áâì à §¬¥à ä ©« á⥪¥
|
||||
ld de,0
|
||||
adc hl,de
|
||||
pop de ; âãâ ¢ hl:de à §¬¥à ¤«ï trd
|
||||
|
||||
;---------------------------------------
|
||||
|
||||
call Get_RAM_Disk_E
|
||||
ret c ; ®¡à ¡®â稪 ®è¨¡ª¨!!!!!
|
||||
|
||||
Convert_SCLtoTRD:
|
||||
|
||||
LD A,(MEM_BLK)
|
||||
out (SLOT3),a ; ¢áâ ¢«ï¥¬ ¯¥à¢ãî áâà ¨æã RAM-¤¨áª
|
||||
|
||||
ld hl,SCL_Buffer
|
||||
ld b,(hl) ; CAT_Elements
|
||||
inc hl
|
||||
ld de,#C000 ; RAM-drive's track 0
|
||||
ld ix,SYS_SECTOR
|
||||
ld (ix+SEEK.AllFilesNum),b
|
||||
.cat_loop:
|
||||
push bc
|
||||
ld a,(hl)
|
||||
CP 1
|
||||
jr nz,1F ; this file is not deleted
|
||||
inc (ix+SEEK.DelFilesNum)
|
||||
1: ld bc,CAT_Elements-2 ; ld bc,#0D
|
||||
ldir ; copy 14 bites of scl files table to trd image catalog
|
||||
|
||||
ld a,(SYS_SECTOR.FirstFreeSec)
|
||||
ld (de),a
|
||||
ld c,a ;!---[v 1]
|
||||
inc de
|
||||
ld a,(SYS_SECTOR.FirstFreeTrk)
|
||||
ld (de),a
|
||||
inc de ; Pointer on next filename in RAM drive
|
||||
|
||||
dec hl ; set to number of sectors
|
||||
ld a,(hl) ; get file length in sectors from scl-table
|
||||
and #0F
|
||||
add a,c ;!---[^ 1]
|
||||
ld c,a ;!---[v 2]
|
||||
and #0F
|
||||
ld (SYS_SECTOR.FirstFreeSec),a
|
||||
ld a,#F0
|
||||
and c ;!---[^ 2]
|
||||
jr z,1F
|
||||
inc (ix+SEEK.FirstFreeTrk)
|
||||
1: ld a,(hl)
|
||||
srl a
|
||||
srl a
|
||||
srl a
|
||||
srl a
|
||||
add a,(ix+SEEK.FirstFreeTrk)
|
||||
ld (SYS_SECTOR.FirstFreeTrk),a
|
||||
|
||||
inc hl ; Pointer on next filename in SCL_Buffer
|
||||
pop bc
|
||||
djnz .cat_loop
|
||||
|
||||
xor a
|
||||
ld (de),a ; file table end marker
|
||||
;---------------------------------------
|
||||
|
||||
; „®¤¥« âì!!!!!
|
||||
; SYS_SECTOR.FreeSectors
|
||||
|
||||
; push hl ; ¡ ©â ¢ ¡ãä¥à¥ ®âªã¤ ¢ SCL ç¨ îâáï ¤ ë¥ (HL-SCL_Buffer)
|
||||
; push de ; ¡ ©â ¢ ram ¤¨áª¥ trd £¤¥ § ª 稢 ¥âáï â ¡«¨æ ¯®á«¥¤¥£® ä ©«
|
||||
|
||||
xor a
|
||||
ld de,SCL_Buffer-8 ; ¢ëç¨á«ï¥¬ § 票¥ á¬¥é¥¨ï ¢ ä ©«¥ ¨§ § 票ï á¬¥é¥¨ï ¢ ¡ãä¥à¥
|
||||
sbc hl,de
|
||||
push hl
|
||||
pop ix
|
||||
|
||||
ld a,(IMAGE_HANDLER)
|
||||
ld hl,0
|
||||
ld B,L ; b=0 - ®â ç « ä ©«
|
||||
ld c,Dss.Move_FP
|
||||
rst ToDSS ; 㪠§ â¥«ì ¯¥à¢ë© ¡ ©â ¤ ëå
|
||||
jr nc,1F ; ®¡à ¡®â稪 ®è¨¡ª¨!!!!!
|
||||
|
||||
pop de
|
||||
ret
|
||||
|
||||
1: di
|
||||
ld hl,SYS_SECTOR_START
|
||||
ld de,#C800 ; sys sector of tr-dos disk in bank3 of ram-disk
|
||||
ACC_SetBlockSize
|
||||
ld a,0
|
||||
ACC_CopyBlock
|
||||
ld a,(HL)
|
||||
ld (DE),a
|
||||
ACC_Off
|
||||
; ei
|
||||
|
||||
LD A,(IMAGE_HANDLER)
|
||||
LD HL,#D000 ; ¤®£à㧨âì ¤® ª®æ áâà ¨æë
|
||||
LD DE,#3000
|
||||
LD C,Dss.Read
|
||||
RST ToDSS
|
||||
JP C,ERROR_IN_READ ; ®¡à ¡®â稪 ®è¨¡ª¨!!!!!
|
||||
|
||||
LD HL,MSG_LOAD_IMAGE ; loading image
|
||||
LD C,Dss.PChars
|
||||
RST ToDSS
|
||||
|
||||
LD HL,PROGRES_IND ; loading TRD
|
||||
LD C,Dss.PChars
|
||||
RST ToDSS
|
||||
|
||||
DI
|
||||
LD A,(MEM_BLK)
|
||||
jp Load_IMAGE_File.scl_read_next
|
||||
|
||||
;-----------[]
|
||||
|
||||
SCL_HEADER: DB 'SINCLAIR'
|
||||
;------------[¯¥à¥¬¥ë¥]---------------
|
||||
SYS_SECTOR_START:
|
||||
DB 0
|
||||
BLOCK 224,0
|
||||
SYS_SECTOR SEEK
|
||||
SYS_SECTOR_END: BLOCK 3,0
|
||||
|
||||
SCL_FILE_ID: DB 0
|
||||
;-----------[¢ á ¬ë© ª®¥æ]-------------
|
||||
SCL_Buffer EQU $
|
||||
assert SCL_Buffer+#701 < #C000, "Buffer out of mem bank 2"
|
||||
|
||||
|
||||
|
||||
8
version.inc
Normal file
8
version.inc
Normal file
@ -0,0 +1,8 @@
|
||||
;
|
||||
LUA ALLPASS
|
||||
local date, month, year = Get_date_RU(sj.get_define("__DATE__"))
|
||||
sj.insert_define("BUILD_DATE", "'" .. date .. "." .. month .. "." .. year .. "'")
|
||||
ENDLUA
|
||||
|
||||
DEFINE SP_VERSION "2.01 beta build"
|
||||
;
|
||||
Loading…
Reference in New Issue
Block a user