mirror of
https://github.com/Tolik-Trek/Shared_Includes.git
synced 2026-06-15 09:01:33 +03:00
Merge branch 'main' of https://github.com/Tolik-Trek/Shared_Includes
This commit is contained in:
commit
cc0a75f6bc
@ -36,6 +36,50 @@
|
|||||||
.ID_2 _ZX_TASK_DATA
|
.ID_2 _ZX_TASK_DATA
|
||||||
.ID_3 _ZX_TASK_DATA
|
.ID_3 _ZX_TASK_DATA
|
||||||
ENDS
|
ENDS
|
||||||
|
|
||||||
|
; MODULE FDD_INIT_TABLE
|
||||||
|
; FDD EQU 3
|
||||||
|
; FDD_0 EQU SYS_PAGE.FDD_0
|
||||||
|
; .DISK EQU FDD_0+0
|
||||||
|
; .F144 EQU .DISK
|
||||||
|
; .SECTORS EQU FDD_0+1
|
||||||
|
; .MS_SECS EQU .SECTORS
|
||||||
|
; .HEADS EQU FDD_0+2
|
||||||
|
; .CYLINDL EQU FDD_0+3
|
||||||
|
; .CYLINDH EQU FDD_0+4
|
||||||
|
; .BytesPerSector EQU FDD_0+5 ;WORD B_P_S
|
||||||
|
; .ID EQU .BytesPerSector + 2
|
||||||
|
; ; FDD_1 EQU SYS_PAGE.FDD_1
|
||||||
|
; ; .DISK EQU FDD_1+0
|
||||||
|
; ; .F144 EQU .DISK
|
||||||
|
; ; .SECTORS EQU FDD_1+1
|
||||||
|
; ; .MS_SECS EQU .SECTORS
|
||||||
|
; ; .HEADS EQU FDD_1+2
|
||||||
|
; ; .CYLINDL EQU FDD_1+3
|
||||||
|
; ; .CYLINDH EQU FDD_1+4
|
||||||
|
; ; .BytesPerSector EQU FDD_1+5 ;WORD B_P_S
|
||||||
|
; ; .ID EQU .BytesPerSector + 1
|
||||||
|
; ENDMODULE
|
||||||
|
;
|
||||||
|
STRUCT FDD_1440_TABLE
|
||||||
|
.DISK BYTE #80 ;FDD_0+0 ; bit0 - fdd number, bit7 - 720/1440
|
||||||
|
.SECTORS BYTE #12 ;FDD_0+1
|
||||||
|
.HEADS BYTE #02 ;FDD_0+2
|
||||||
|
.CYLINDL BYTE #50 ;FDD_0+3
|
||||||
|
.CYLINDH BYTE #00 ;FDD_0+4
|
||||||
|
.BytesPerSector WORD #0200 ;FDD_0+5 ;WORD B_P_S
|
||||||
|
.ID BYTE #03 ;.BytesPerSector + 2
|
||||||
|
ENDS
|
||||||
|
;
|
||||||
|
STRUCT FDD_720_TABLE
|
||||||
|
.DISK BYTE #00 ;FDD_0+0 ; bit0 - fdd number, bit7 - 720/1440
|
||||||
|
.SECTORS BYTE #09 ;FDD_0+1
|
||||||
|
.HEADS BYTE #02 ;FDD_0+2
|
||||||
|
.CYLINDL BYTE #50 ;FDD_0+3
|
||||||
|
.CYLINDH BYTE #00 ;FDD_0+4
|
||||||
|
.BytesPerSector WORD #0200 ;FDD_0+5 ;WORD B_P_S
|
||||||
|
.ID BYTE #03 ;.BytesPerSector + 2 ; å¥à ¥£® § ¥â, çâ® § ¯ à ¬¥âà
|
||||||
|
ENDS
|
||||||
;ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ;
|
;ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ;
|
||||||
|
|
||||||
|
|
||||||
@ -740,9 +784,12 @@ SYS_PAGE EQU #FE
|
|||||||
.IDE_3 EQU #C1D0
|
.IDE_3 EQU #C1D0
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
;=======================================================================
|
;=======================================================================
|
||||||
.FDD_0 EQU #C1E0
|
;.FDD_0 EQU #C1E0
|
||||||
.FDD_1 EQU #C1E8
|
.FDD_TABLE FDD_1440_TABLE = #C1E0
|
||||||
.FDD_TBL.Size EQU #10
|
.FDD_TABLE.Size EQU FDD_1440_TABLE
|
||||||
|
;.FDD_1 EQU #C1E8
|
||||||
|
;.FDD_1_TABLE: FDD_720_TABLE = #C1E8
|
||||||
|
;.FDD_TBL.Size EQU #10
|
||||||
;
|
;
|
||||||
; ª®¯¨¨ à ¬¤¨áª®¢ ¤«ï ¯¥à¥ª«îç¥¨ï ¬¥¦¤ã ०¨¬ ¬¨ Spectrum / Sprinter
|
; ª®¯¨¨ à ¬¤¨áª®¢ ¤«ï ¯¥à¥ª«îç¥¨ï ¬¥¦¤ã ०¨¬ ¬¨ Spectrum / Sprinter
|
||||||
.Sp_RAMD_KEYS EQU #C1F0
|
.Sp_RAMD_KEYS EQU #C1F0
|
||||||
@ -771,8 +818,8 @@ SYS_PAGE EQU #FE
|
|||||||
//°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
|
//°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
|
||||||
.MS_BPB EQU #C400 ; ¡ãä¥à BPB
|
.MS_BPB EQU #C400 ; ¡ãä¥à BPB
|
||||||
//°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
|
//°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
|
||||||
; IDENTIFY ATA buffer
|
; IDENTIFY ATA buffer ; !FIXIT áâàãªâãன ᤥ« âì!!!
|
||||||
.HD_IDF_ADR EQU #C600 ; !FIXIT <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ன ᤥ<><E1A4A5><EFBFBD><EFBFBD>!!!
|
.HD_IDF_ADR EQU #C600 ; á çñ⮣® ¤à¥á . ˆá¯®«ì§ã¥âáï ¢ HDD_PROG tr-dos
|
||||||
.HD_IDF_ADR.sec_cyl EQU .HD_IDF_ADR+4
|
.HD_IDF_ADR.sec_cyl EQU .HD_IDF_ADR+4
|
||||||
.HD_IDF_ADR.heads EQU .HD_IDF_ADR+6 ; Number of heads
|
.HD_IDF_ADR.heads EQU .HD_IDF_ADR+6 ; Number of heads
|
||||||
.HD_IDF_ADR.sectors EQU .HD_IDF_ADR+12 ; Number of sectors per track
|
.HD_IDF_ADR.sectors EQU .HD_IDF_ADR+12 ; Number of sectors per track
|
||||||
@ -820,41 +867,6 @@ SYS_PAGE EQU #FE
|
|||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
; STRUCT FDD_INIT_TABLE
|
|
||||||
; DISK BYTE 0
|
|
||||||
; F144 EQU FDD_0+0
|
|
||||||
; SECTORS EQU FDD_0+1
|
|
||||||
; MS_SECS EQU .SECTORS
|
|
||||||
; HEADS EQU FDD_0+2
|
|
||||||
; CYLINDL EQU FDD_0+3
|
|
||||||
; CYLINDH EQU FDD_0+4
|
|
||||||
; B_P_S EQU FDD_0+5
|
|
||||||
; ENDS
|
|
||||||
|
|
||||||
;
|
|
||||||
MODULE FDD_INIT_TABLE ; !FIXIT ⠡<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> FDD <EFBFBD><EFBFBD><EFBFBD>ன<EFBFBD><EFBFBD><EFBFBD> 32 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <EFBFBD>ਢ易<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
||||||
FDD EQU 3 ; ????? <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ࠬ<EFBFBD><EFBFBD><EFBFBD>, ࠧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
||||||
FDD_0 EQU SYS_PAGE.FDD_0
|
|
||||||
.DISK EQU FDD_0+0
|
|
||||||
.F144 EQU .DISK
|
|
||||||
.SECTORS EQU FDD_0+1
|
|
||||||
.MS_SECS EQU .SECTORS
|
|
||||||
.HEADS EQU FDD_0+2
|
|
||||||
.CYLINDL EQU FDD_0+3
|
|
||||||
.CYLINDH EQU FDD_0+4
|
|
||||||
.BytesPerSector EQU FDD_0+5 ;WORD B_P_S
|
|
||||||
FDD_1 EQU SYS_PAGE.FDD_1
|
|
||||||
.DISK EQU FDD_1+0
|
|
||||||
.F144 EQU .DISK
|
|
||||||
.SECTORS EQU FDD_1+1
|
|
||||||
.MS_SECS EQU .SECTORS
|
|
||||||
.HEADS EQU FDD_1+2
|
|
||||||
.CYLINDL EQU FDD_1+3
|
|
||||||
.CYLINDH EQU FDD_1+4
|
|
||||||
.BytesPerSector EQU FDD_1+5 ;WORD B_P_S
|
|
||||||
ENDMODULE
|
|
||||||
;
|
|
||||||
|
|
||||||
;
|
;
|
||||||
STRUCT BIOS_DATE_FORMAT ; !FIXIT ¯¥à¥¤¥« âì ¯®¤ áâàãªâãà㠢ᥠ¯¥à¥¬¥ë¥ #FE
|
STRUCT BIOS_DATE_FORMAT ; !FIXIT ¯¥à¥¤¥« âì ¯®¤ áâàãªâãà㠢ᥠ¯¥à¥¬¥ë¥ #FE
|
||||||
hour BYTE
|
hour BYTE
|
||||||
|
|||||||
@ -140,6 +140,8 @@ Dss:
|
|||||||
.K_SETUP.SetLayout EQU 0*256 + .K_SETUP
|
.K_SETUP.SetLayout EQU 0*256 + .K_SETUP
|
||||||
.K_SETUP.GetSoundVars EQU 1*256 + .K_SETUP
|
.K_SETUP.GetSoundVars EQU 1*256 + .K_SETUP
|
||||||
.K_SETUP.SetSoundVars EQU 2*256 + .K_SETUP
|
.K_SETUP.SetSoundVars EQU 2*256 + .K_SETUP
|
||||||
|
.K_SETUP.ShowCursor EQU 3*256 + .K_SETUP
|
||||||
|
.K_SETUP.HideCursor EQU 4*256 + .K_SETUP
|
||||||
.TestKey EQU #37
|
.TestKey EQU #37
|
||||||
;
|
;
|
||||||
; Memory
|
; Memory
|
||||||
|
|||||||
@ -648,4 +648,56 @@ Description
|
|||||||
08h - 1Eh Reserved
|
08h - 1Eh Reserved
|
||||||
1Fh Unknown or no device type
|
1Fh Unknown or no device type
|
||||||
The Peripheral Device Type shall be set to 05h to indicate a CD-ROM Device.
|
The Peripheral Device Type shall be set to 05h to indicate a CD-ROM Device.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/* ZIP DRIVE
|
||||||
|
…᫨ ¯à¨¢®¤¥ ¦ â ª®¯ª ¢ë¡à®á , â® ¯®«ãç¨âì íâã ¨ä®à¬ æ¨ï ¬®¦® ®â¯à ¢¨¢ ATAPI ª®¬ ¤ã 06 - MODE NON SENSE
|
||||||
|
2-© ¡ ©â 2-© áâà ¨æë == 1 ¥á«¨ ¦ â eject, 0 ¥á«¨ ¥ ¦ â.
|
||||||
|
* ZIP100 CMD - 06h
|
||||||
|
* Three pages:
|
||||||
|
* 00 - 6 bytes
|
||||||
|
* 01 - 88 bytes
|
||||||
|
* 02 - 64 bytes - ZIP disk id
|
||||||
|
|
||||||
|
const uint8_t zip_disk_100[3][88] = {
|
||||||
|
{ 0x00, 0x04, 0x00, 0x01, 0x02, 0x03 },
|
||||||
|
{ 0x01, 0x56, 0x01, 0x00, 0x00, 0x02, 0x06, 0x48, 0x06, 0x01, 0x06, 0x48, 0x06, 0x00, 0x00, 0x01,
|
||||||
|
0x01, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x0f, 0x18, 0x25, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },
|
||||||
|
{ 0x02, 0x3e, 0x00, 0x02, 0x00, 0x00, 0x02, 0xff, 0xff, 0x00, 0x00, 0x02, 0x00, 0x00, 0x7e, 0x00,
|
||||||
|
0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x30, 0x34, 0x35, 0x31, 0x30, 0x32, 0x34, 0x33, 0x35,
|
||||||
|
0x35, 0x33, 0x39, 0x39, 0x30, 0x33, 0x38, 0x30, 0x33, 0x5a, 0x49, 0x50, 0x31, 0x20, 0x20,
|
||||||
|
0x20, 0x4b, 0x41, 0x41, 0x32, 0x31, 0x30, 0x30, 0x45, 0x33, 0x31, 0x31, 0x20, 0x20, 0x20,
|
||||||
|
0x20, 0x00, 0x12 }
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
const uint8_t zip_disk_250[3][88] = {
|
||||||
|
{ 0x00, 0x04, 0x00, 0x01, 0x02, 0x03 },
|
||||||
|
{ 0x01, 0x56, 0x02, 0x00, 0x00, 0x00, 0x12, 0xf6, 0x12, 0x2e, 0x12, 0xf6, 0x12,
|
||||||
|
0x2e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd1, 0x00, 0x17, 0x01,
|
||||||
|
0x10, 0x00, 0x00, 0x00, 0x29, 0x01, 0x00, 0x00, 0x01, 0x0f, 0x3e, 0x24,
|
||||||
|
0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0xbb, 0x00, 0x17, 0x29, 0x31, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x15, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
|
||||||
|
0x00, 0x00, 0x00 },
|
||||||
|
{ 0x02, 0x3e, 0x00, 0x02, 0x00, 0x00, 0x07, 0x78, 0x3b, 0x00, 0x00, 0x02, 0x00,
|
||||||
|
0x00, 0x7e, 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x31, 0x39, 0x39,
|
||||||
|
0x33, 0x35, 0x31, 0x38, 0x31, 0x32, 0x37, 0x31, 0x30, 0x30, 0x30, 0x32,
|
||||||
|
0x37, 0x30, 0x33, 0x5a, 0x49, 0x50, 0x32, 0x20, 0x20, 0x20, 0x41, 0x41,
|
||||||
|
0x41, 0x41, 0x53, 0x30, 0x36, 0x36, 0x33, 0x76, 0x47, 0x20, 0x20, 0x20,
|
||||||
|
0x20, 0x10, 0x10 }
|
||||||
|
};
|
||||||
|
|
||||||
|
‘¨£ «¨§¨à®¢ âì ¯à¨¢®¤ã ®â¤ âì ¤¨áª¥âã ¬®¦® ç¥à¥§ ¯à®¯à¨¥â àãî ª®¬ ¤ã 0x0D, ¢ âà¥â쥬 ¡ ©â¥ ãáâ ®¢¨âì ä« £. (“ ¬¥ï ¢ ª®¤¥ ¢á¥ ®¡®à®â)
|
||||||
|
…᫨ ª®¥ç® ®â¤ ç ¤¨áª¥âë ¥ § ¡«®ª¨à®¢ ª®¬ ¤®© "0x1E: // PREVENT/ALLOW MEDIUM REMOVAL"
|
||||||
|
// ZIP VENDOR SPECIFIC
|
||||||
|
// (0d 00 0a 01 00 00 00 00 00 00 00 00 00 - Eject disk if not prohibited)
|
||||||
|
// (0d 00 0a 00 00 00 00 00 00 00 00 00 00 - Clear Eject flag)
|
||||||
|
uint8_t eject = packet[3];
|
||||||
|
log_debug("ZIP disk eject: %s\n",eject?"EJECT":"CLEAR EJECT");
|
||||||
|
*/
|
||||||
Loading…
Reference in New Issue
Block a user