Shared_Includes/constants/TRDOS.z80
2024-07-21 01:17:56 +10:00

244 lines
7.1 KiB
Z80 Assembly
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

MODULE ToTRDOS
;------------------------[ Enter points ]------------------------;
x3D2F EQU #3D2F
;-------------------------[ TR-DOS API ]-------------------------;
x3D13 EQU #3D13
.Reset EQU #00
.SetDrive EQU #01
.MoveToTrack EQU #02
.SetSector EQU #03
.SetBuffer EQU #04
.ReadSectors EQU #05
.WriteSectors EQU #06
.OutputDir EQU #07
.Get_FD EQU #08 ; FD - File Descriptor in RAM
.Save_FD EQU #09
.FindFileInfo EQU #0A
.CreateFile EQU #0B
.CreateBasFile EQU #0C
;. EQU #0D
.ReadVerifyFile EQU #0E
;. EQU #0F
;. EQU #10
;. EQU #11
.DeleteFile EQU #12
.Set_FD EQU #13
.Copy_FD EQU #14
.TestTrack EQU #15
;. EQU #16
.SetBottomSide EQU #17
.DiskInit EQU #18
;-----------------------------------------------------------------;
; <09> áᬮâਬ ª®¬ ­¤ë ¨­â¥à¯à¨â â®à :
;
; #00 - íâ  ª®¬ ­¤  ¯®§¢®«ï¥â ãáâ ­®¢¨âì ¡«®ª
; ¬ £­¨â­ëå £®«®¢®ª ¤¨áª®¢®¤  ­  ­ã«¥¢ãî ¤®à®¦ªã ¨
; á¡à®á¨âì "á¥à¤æ¥" ¬¨ªà®ª®­â஫«¥à  Š<> 1818ƒ93.
; <09>âã ª®¬ ­¤ã «ãçè¥ ¢á¥£® ¯à¨¬¥­ïâì ¢ á ¬®¬ ­ ç «¥
; à ¡®âë á â®çª®© 15635.
;
; #01 - íâ® ª®¬ ­¤  ­ áâனª¨ ­  ¤¨áª®¢®¤.
; ‘«ã¦¨â ¤«ï § ¯¨á¨ ¯ à ¬¥â஢ ¤¨áª®¢®¤ 
; (ª®«¨ç¥á⢮ ¤®à®¦¥ª ¨ ᪮à®áâì ¯¥à¥¬¥é¥­¨ï
; ¬ £­¨â­ëå £®«®¢®ª) ¢ á¨á⥬¬­ë¥ ¯¥à¥¬¥­­ë¥
; TR-DOS. <20>âã ª®¬ ­¤ã ¬®¦­® ­¥ ¢ë¯®«­ïâì, ¥á«¨
; ¢àãç­ãî § ­¥á⨠¢á¥ å à ªâ¥à¨á⨪¨ ¯®  ¤à¥áã
; 23752 (ª®«¨ç¥á⢮ ¤®à®¦¥ª) ¨ 23802 (᪮à®áâì
; ¯¥à¥¬¥é¥­¨ï). <20>®¬¥à ¤¨áª®¢®¤  ¢  ªªã¬ã«ïâ®à¥.
;
; <20>ਬ¥à:
;
; LD A,#00
; LD C,#01 ;<3B> áâனª  ­  ¤¨áª®¢®¤ €
; CALL 15635
;
; #02 - íâ® ¯®§¨æ¨®­¨à®¢ ­¨¥. ‘«ã¦¨â ¤«ï
; ¯¥à¥¬¥é¥­¨ï ¡«®ª  ¬ £­¨â­ëå £®«®¢®ª ­  § ¤ ­­ãî
; ¤®à®¦ªã. <20>®¬¥à ᥪâ®à  ¢  ªªã¬ã«ïâ®à¥.
;
; <20>ਬ¥à:
;
; LD A,#05
; LD C,#02 ;<3B>¥à¥¬¥é¥­¨¥ ¬ £­¨â­ëå
; CALL 15635 £®«®¢®ª ­  ¯ïâãî ¤®à®¦ªã.
;
; #03 - íâ® ª®¬ ­¤  ãáâ ­®¢ª¨ ­®¬¥à  ᥪâ®à  ¢
;  ªªã¬ã«ïâ®à¥.
;
; <20>ਬ¥à:
;
; LD A,#03
; LD C,#03 ;‚ë¡®à 3-£® ᥪâ®à 
; CALL 15635
;
; #04 - ãáâ ­®¢ª   ¤à¥á  ¯®«ì§®¢ â¥«ì᪮£®
; ¡ãä¥à . ‘¬®âਠ#05 ¨ #06.
;
; <20>ਬ¥à:
;
; LD HL,€¤à¥á ¡ãä¥à 
; LD C,#04
; CALL 15635
;
; #05 - ç⥭¨¥ £à㯯ë ᥪâ®à®¢. Š®¬ ­¤ 
; áç¨â뢠¥â ¢ ¯ ¬ïâì á ¤¨áª  ᥪâ®à , ­ ç¨­ ï á
; ᥪâ®à  § ¤ ­­®£® ¢ ॣ¨áâॠ…, à á¯®«®¦¥­­®£® ­ 
; ¤®à®¦ª¥ § ¤ ­­®© ¢ ॣ¨áâॠD, ¢ ¯ ¬ïâì ­ ç¨­ ï á
;  ¤à¥á  § ¤ ­­®£® ¢ ॣ¨áâॠHL.
;
; <20>ਬ¥à:
;
; LD BC,#0805
; LD DE,#0000 ; ‘ç¨â뢠­¨¥ ª â «®£ 
; LD HL,50000 ; ¤¨áª  ¢ ¯ ¬ïâì, ­ ç¨­ ï
; CALL 15635 ; á  ¤à¥á  50000
;
; #06 - § ¯¨áì £à㯯ë ᥪâ®à®¢. Š®¬ ­¤ 
; § ¯¨á뢠¥â ¨­ä®à¬ æ¨î ¨§ ®¡« á⨠¯ ¬ïâ¨, § ¤ ­­®©
; ¢ ॣ¨áâॠHL, ­  ¤®à®¦ªã, § ¤ ­­ãî ¢ ॣ¨áâॠD,
; ¢ ᥪâ®à, § ¤ ­­ë© ¢ ॣ¨áâॠE. Š®«¨ç¥á⢮ 楫ëå
; ᥪâ®à®¢ § ¤ ¥âáï ¢ ॣ¨áâॠB.
;
; <20>ਬ¥à:
;
; LD BC,#0106
; LD DE,#08 ; ‡ ¯¨áì ¢ á«ã¦¥¡­ë© ᥪâ®à
; ; ¨­ä®à¬ æ¨¨ ¨§ ¯ ¬ïâ¨
; LD HL,50000 ; ­ ç¨­ ï á  ¤à¥á  50000
; CALL 15635
;
; #07 - ¢ë¢®¤ ª â «®£  ¤¨áª .  ªªã¬ã«ïâ®à
; ¯®¬¥é ¥âáï ­®¬¥à ¯®â®ª  ªã¤  ¡ã¤¥â ¢ë¢¥¤¥­
; ª â «®£ (#2-íªà ­; #3-¯à¨­â¥à). <20>®¬¥à ¤¨áª®¢®¤ 
; § ¤ ¥âáï ¯®  ¤à¥á ¬ 23798, 23800, 23801.
;
; <20>ਬ¥à:
;
; LD A,#0
; LD (23798),A
; LD (23800),A ; ‚ë¡®à ¤¨áª®¢®¤  €.
; LD (23801),A
; LD A,#2 ; ‚롨ࠥ¬ ¢ë¢®¤ ­  íªà ­.
; LD C,#7
; CALL 15635 ; <20>¥ç âì ª â®«®£  ­  íªà ­¥.
;
; #08 - áç¨â뢠­¨¥ í«¥¬¥­â  ª â «®£ . <20>®¬¥à
; í«¥¬¥­â  § ¤ ¥âáï ¢  ªªã¬ã«ïâ®à¥. <20>â  ª®¬ ­¤ 
; ¯®§¢®«ï¥â áç¨â뢠âì í«¥¬¥­â ª â «®£  ¢ ¤¥áªà¨¯â®à
; ä ©« , à á¯®«®¦¥­­ë© ¯®  ¤à¥áã á 23773 ¯® 23788.
;
; <20> §¡¥à¥¬ ¯® ®â¤¥«ì­®á⨠¤¥áªà¨¯â®à ä ©« :
;
;  ¤à¥á å á 23773 ¯® 23780 ­ å®¤¨âìáï ¨¬ï
; ä ©« .  ¤à¥á¥ 23781 ⨯ ä ©« 
; (C-CODE; B-BASIK; D-DATA ¨ â.¤). 23782-23783 ¯à¨
; ⨯¥ <C>-áâ àâ®¢ë©  ¤à¥á; ¯à¨ ⨯¥ <B>-¤«¨­ 
; ¡¥©á¨ª ¯à®£à ¬¬ë. 23784-23785 ¤«¨­  ä ©« .
; 23786-®¡ê¥¬ ä ©«  ¢ ᥪâ®à å. 23787-­®¬¥à ¯¥à¢®£®
; ᥪâ®à  ä ©« . 23788-­®¬¥à ¯¥à¢®© ¤®à®¦ª¨ ä ©« .
;
; <20>ਬ¥à:
;
; LD A,#02
; LD C,#08 ;‘ç¨â뢠­¨¥ ¨­ä®à¬ æ¨¨ ® âà¥â쥬
; CALL 15635 ;ä ©«¥ ¢ ¤¥áªà¨¯â®à.
;
; #09 - § ¯¨áì ¤¥áªà¨¯â®à  ä ©« . ¯®¬®éìî
; í⮩ ª®¬ ­¤ë, ¤¥áªà¨¯â®à ä ©«  § ¯¨á뢠¥âáï ¢
; í«¥¬¥­â ª â «®£  § ¤ ­­ë© ¢  ªªã¬ã«ïâ®à¥.
;
; <20>ਬ¥à:
;
; LD A,#02
; LD C,#09 ;‡ ¯¨áì ¤¥áªà¨¯â®à  ä ©«  ­  ¬¥áâ®
; CALL 15635 ;3-£® í«¥¬¥­â  ª â «®£ .
;
; #0A - ¯®¨áª ¨­ä®à¬ æ¨¨ ® ä ©«¥. <20>â  ª®¬ ­¤ 
; ¨á¯®«ì§ã¥âáï ¤«ï ¯®¨áª  ¢ ª â «®£¥ ¨­ä®à¬ æ¨¨ ®
; ä ¨«¥. ˆá室­ ï ¨­ä®à¬ æ¨ï § ¤ ¥âáï ¢
; ¤¥áªà¨¯â®à¥. Š®«¨ç¥á⢮ ¡ ©â®¢ (è ¡«®­) ¯®
; ª®â®àë¬ ¢¥¤¥âáï ¯®¨áª § ¤ îâáï ¯®  ¤à¥áã 23814.
; ’ ¬ ®¡ëç­® § ¯¨á ­® ç¨á«® 9.
;
; #0B - äã­ªæ¨ï á®§¤ ­¨ï ä ©« . ˆ¬ï ¨ ⨯ ä ©« 
; ¢ ¤¥áªà¨¯â®à¥,  ¤à¥á ¢ HL, ¤«¨­  ¢ DE.
;
; #0C - á®§¤ ­¨¥ ¡¥©á¨ª ä ©« . <20>â  ª®¬ ­¤ 
;  ­ «®£¨ç­  ¯à¥¤ë¤ã饩, ⮫쪮 ⨯ § ¯¨á뢠¥¬®©
; ¯à®£à ¬¬ë ¤®«¦¥­ ¡ëâì ®¡ï§ â¥«ì­® <B>. ‚室­®©
; ¯ à ¬¥âà ¢ ¤¥áªà¨¯â®à¥.
;
; #0E - ª®¬ ­¤  ç⥭¨ï/¯à®¢¥àª¨. ‚室­ë¥
; ¯ à ¬¥âàë ¤®«¦­ë ¡ëâì ¯®¬¥é¥­ë ¢ ¤¥áªà¨¯â®à. <20>®
;  ¤à¥áã 23801-¢¨¤ ®¯¥à æ¨¨ #00-ç⥭¨¥;
; #FF-¯à®¢¥àª . „«ï "­¥-BASIC" ä ©«®¢  ¤à¥á ¢ HL
; ¤«¨­  ¢ DE, ¢  ªªã¬ã«ïâ®à¥ ç¨á«® ­¥ à ¢­®¥ 0 ¨«¨
; 3.
;
; #0F; #10; #11; #16 - ®âáãâá⢨¥ ¤¥©á⢨ï.
;
; #12 - 㤠«¥­¨¥ ä ©« . <20>â  ª®¬ ­¤  ¨é¥â
; í«¥¬¥­â ª â «®£ , ᮢ¯ ¤ î騩 á ¤¥áªà¨¯â®à®¬ ¨
; 㤠«ï¥â ¥£®.
;
; #13 - íâ  ª®¬ ­¤  ª®¯¨àã¥â ¨§ ¯ ¬ïâ¨,  ¤à¥á ¢
; HL, 16 ¡ ©â®¢ ¢ ¤¥áªà¨¯â®à ä ©« .
;
; #14 - íâ  ª®¬ ­¤  à ¡®â ¥â ­ ®¡®à®â, 祬
; ¯à¥¤ë¤ãé ï. Š®¯¨àã¥âáï ¤¥áªà¨¯â®à ¢ ¯ ¬ïâì,
;  ¤à¥áã¥¬ë© à¥£¨áâ஬ HL.
;
; #15 - â¥áâ¨à®¢ ­¨¥ ¤®à®¦ª¨. <20>®¬¥à ¤®à®¦ª¨ ¢
; ॣ¨áâॠD, ­®¬¥à áâ®à®­ë á¬. #17 ¨«¨ #02.
;  ¤à¥á¥ 23766 áç¥â稪 á¡®©­ëå ᥪâ®à®¢.
;
; #17 - ¢ë¡®à ­¨¦­¥© áâ®à®­ë ¤¨áª .
;
; <20>ਬ¥à:
;
; LD C,#17
; CALL 15635
;
; #18 - ­ áâனª  ­  ¤¨áª. <20>â  ª®¬ ­¤ 
; áç¨â뢠¥â á ¤¨áª  á«ã¦¥¡­ë© ᥪâ®à ¨ ¯à®¨§¢®¤¨â
; ­ áâனªã ­¥ª®â®àëå ¯¥à¥¬¥­­ëå TR-DOS. <20>¥®¡å®¤¨¬ 
; ¯à¨ ᬥ­¥ ¤¨áª .
; „«ï â¥å ã ª®£® ­¥â ª­®¯ª¨ "MAGIC". „ ­­ ï
; ¯à®£à ¬¬  ¤«ï í⮩ ª­®¯ª¨ ­ å®¤¨âáï ¯®  ¤à¥áã
; 102. <20>®¯ áâì ¢ ­¥¥ ¬®¦­® ç¥à¥§ â®çªã ¯®  ¤à¥áã
; 15664, £¤¥ ­ å®¤¨âáï ª®¬ ­¤  RET.
;
; <20>ਬ¥à:
;
; LD HL, ¤à¥á ¢®§¢à â 
; PUSH HL
; LD HL,#102
; PUSH HL
; JP 15664
;
; ˆ ­ ¯®á«¥¤®ª å®ç㠯ਢ¥á⨠­ §­ ç¥­¨¥
; ­¥ª®â®àëå ॣ¨áâ஢.
; HL - íâ®â ॣ¨áâà ¢ ®á­®¢­®¬ ¨á¯®«ì§ã¥âáï ª ª
;  ¤à¥á­ë© ॣ¨áâà.
; DE - íâ®â ॣ¨áâà ¨á¯®«ì§ã¥âáï ¢ ª®¬ ­¤ å,
; £¤¥ ¯®¬¨¬® ®á­®¢­®£®  ¤à¥á , ­ã¦¥­ ¥éñ ®¤¨­
;  ¤à¥á.
;
; <20>ਬ¥à:
;
; LD HL,®á­®¢­®©  ¤à¥á
; LD DE,¢á¯®¬®£ â¥«ì­ë©  ¤à¥á
; LD BC,ª®«¨ç¥á⢮ ¯¥à¥áë« ¥¬ëå ¡ ©â
; LDIR
;
; BC - áçñâ­ë© ॣ¨áâà. ®á­®¢­®¬ ¯à¨¬¥­ï¥âáï
; ª ª áçñâ稪 横«®¢, ¤  ¨ ¯à®áâ® ª ª áçñâ稪.
;
; A - ã­¨¢¥àá «ì­ë© ­ ª®¯¨â¥«ì­ë© ॣ¨áâà.
; á ¬ëå ¯¥à¢ëå ¬®¤¥«ïå ª®¬¯ìîâ¥à®¢ ¡ë« ⮫쪮 ®¤¨­
; íâ®â ॣ¨áâà. Žá­®¢­®¥ ¯à¨¬¥­¥­¨¥ ­ å®¤¨â ¯à¨
; ®¯¥à æ¨ïå áà ¢­¥­¨ï ¨ ª ª 8-¬¨ à §àï¤­ë© áç¥â稪.
; <09>ã ¢®â, ­ ¢¥à­®¥, ¨ ¢áñ. …᫨ ­ ©¤¥â¥ ã¯ã饭¨ï,
; ¯à®áì¡  ᨫ쭮 ­¥ à㣠âì. ‘â à «áï ª ª ¬®£.