Subversion Repositories pentevo

Rev

Blame | Last modification | View Log | Download | RSS feed | ?url?

  1.  
  2. /* last update: 20.08.2019 savelij */
  3.  
  4. #define HDD_MASTER                      0
  5. #define HDD_SLAVE                       1
  6.  
  7. // нумерация устройств
  8. #define _FDD_A                          0
  9. #define _FDD_B                          1
  10. #define _FDD_C                          2
  11. #define _FDD_D                          3
  12. #define _HDD_NEMO_MASTER                4
  13. #define _HDD_NEMO_SLAVE                 5
  14. #define _HDD_SMUC_MASTER                6
  15. #define _HDD_SMUC_SLAVE                 7
  16. #define _HDD_DIVIDE_MASTER              8
  17. #define _HDD_DIVIDE_SLAVE               9
  18. #define _HDD_PROFI_MASTER               0x0A
  19. #define _HDD_PROFI_SLAVE                0x0B
  20. #define _HDD_TURBO2_MASTER              0x0C
  21. #define _HDD_TURBO2_SLAVE               0x0D
  22. #define _SD_SDG                         0x0E
  23. #define _SD_SDZ                         0x0F
  24. #define _SL_USBF                        0x10
  25.  
  26.  
  27. // номера функций RST 8
  28. #define _AY_PRN_INIT                    0x40
  29. #define _AY_PRN_A_                      0x41
  30. #define _AY_PRN_TOKEN                   0x42
  31. #define _AY_PRN_SCR                     0x43
  32. #define _TAPE_INIT                      0x44
  33. #define _TAPE_EMUL                      0x45
  34. #define _WINW                           0x46
  35. #define _PRINT_MESSAGE                  0x47
  36. #define _PRINT_A                        0x48
  37. #define _SCROLL_UP                      0x49
  38. #define _SCROLL_DOWN                    0x4A
  39. #define _SET_MODE                       0x4B
  40. #define _MATH                           0x4C
  41. #define _VERSION                        0x4D
  42.  
  43. #define _BIOS                           0x4F
  44. #define _COM_DEV                        0x50
  45. #define _COM_FAT                        0x51
  46. #define _SORT_FINDFILES                 0x52
  47. #define _MOUNTER                        0x53
  48. #define _INST_FATBOOT                   0x54
  49. #define _CMOS_RW                        0x55
  50. #define _SETUP_PAL                      0x56
  51. #define _SETUP_FONT                     0x57
  52.  
  53. // функции изменения режимов работы
  54. #define _ZXSCR_MODE                     0x03    // %00000001    ;ZX SCREEN
  55. #define _TXTSCR_MODE                    0x06    // %00000010    ;TXT SCREEN
  56. #define _TURBO_LOW                      0x10    // %00010000    ;TURBO 3,5 MHZ
  57. #define _TURBO_HIGH                     0x20    // %00100000    ;TURBO 7,0 MHZ
  58. #define _TURBO_MAX                      0x30    // %00110000    ;TURBO 14,0 MHZ
  59. #define _MEM_MODE_48                    0x40    // %01000000    ;MEMORY MODE 48 KB
  60. #define _MEM_MODE_128                   0x80    // %10000000    ;MEMORY MODE 128 KB
  61. #define _MEM_MODE_PENT                  0xC0    // %11000000    ;MEMORY MODE PENT 1024 KB
  62.  
  63. #define _SET_VIDEOMODE                  0x08    // для включения при установке видео режима
  64.  
  65. // функции деления, умножения, преобразования числа в текст
  66. #define _DIVIDE16                       0x00
  67. #define _MULTIPLY16                     0x01
  68. #define _DIVIDE32                       0x02
  69. #define _MULTIPLY32                     0x03
  70. #define _HEX4DECTXT                     0x04
  71. #define _HEX2DECTXT                     0x05
  72. #define _HEX1DECTXT                     0x06
  73.  
  74. // функции работы с CMOS
  75. #define _INIT_CMOS                      0x00
  76. #define _READ_CMOS                      0x01
  77. #define _WRITE_CMOS                     0x02
  78. #define _CLEAR_CMOS                     0x03
  79.  
  80. // функции монтировщика образов
  81. #define _OPEN_MOUNT                     0x00    // монтирование образа
  82. #define _RDWR_MOUNT                     0x01    // чтение/запись примонтированных образов
  83. #define _FIND_MOUNTED                   0x02    // поиск монтируемых образов прописанных в IMAGE.FNT
  84. #define _GET_MOUNTED                    0x03    // получение буфера описателей примонтированных образов
  85. #define _CLOSEMOUNT                     0x04    // демонтирование образа
  86. #define _LOADIMAGE                      0x05    // загрузка образа в рамдиск
  87. #define _REST_NAMELOAD                  0x06    // получение описателя файла загруженного в рамдиск
  88. #define _CMP_DRIVE                      0x07    // проверка примонтированного образа на указанной букве
  89. #define _GET_VIRT_BITS                  0x08    // получение битов смонтированных дисков
  90. #define _MOUNT_RAMDISK                  0x09    // монтирование рамдиска
  91.  
  92. // номера функций менеджера устройств
  93. #define _DEVFIND                        0x00    // поиск устройств
  94. #define _SET_VOL                        0x01    // выбор раздела
  95. #define _KOL_VOL                        0x02    // запрос найденого
  96. #define _GET_FNDVOLUME                  0x03    // получить таблицу найденных разделов
  97. #define _TO_DRV                         0x04    // вызов драйвера выбранного устройства
  98. #define _SET_DEVICE                     0x05    // установка битов устройства и lba режима
  99. #define _CONTROL_SD                     0x06    // контроль наличия sd карт
  100. #define _COMHDDN                        0x07    // прямой вызов драйвера hdd nemo
  101. #define _FREINIT_VOL                    0x08    // полная переинициализация раздела
  102.  
  103. // номера функций вызова драйвера устройства
  104. #define _DEV_INIT                       0x00    // ПОИСК И ИНИЦИАЛИЗАЦИЯ УСТРОЙСТВА
  105. #define _DEV_STATUS                     0x01    // запрос статуса устройства. пока заглушена
  106. #define _DEV_READ                       0x02    // чтение секторов
  107. #define _DEV_WRITE                      0x03    // запись секторов
  108. #define _DEV_READID                     0x04    // чтение ID сектора
  109.  
  110. // номера вызываемых функций FAT драйвера
  111. #define _INIT_FATVARS                   0x00    // инициализация переменных FAT
  112. #define _READ_DIR                       0x01    // получение описателя файла
  113. #define _ENTER_DIR                      0x02    // вход/выход в дириректорию
  114. #define _GET_PATH                       0x03    // получение текущего пути
  115. #define _GET_LONGNAME                   0x04    // получение длинного имени файла
  116. #define _FIND_NAME                      0x05    // поиск по имени
  117. #define _FIND_FILEITEM                  0x06    // поиск всех описателей с выдачей номеров найденного
  118. #define _SET_MASK_EXT                   0x07    // установка маски расширений для поиска
  119. #define _OPEN_FILE                      0x08    // открытие файла
  120. #define _READ_FILE                      0x09    // последовательное чтение открытого файла
  121. #define _INIT_TEKDIR                    0x0A    // создание таблицы кластеров текущей директории
  122. #define _POS_FILES                      0x0B    // работа с текущей позицией
  123.  
  124. // подфункции функции _POS_FILES
  125. #define _POSTF00                        0x00    // сохранение текущей позиции файла
  126. #define _POSTF01                        0x01    // восстановление текущей позиции файла
  127. #define _POSTF02                        0x02    // сброс текущей позиции в 0 и поиск первой "легальной" записи
  128. #define _POSTF03                        0x03    // перемотать на "B" файлов назад
  129. #define _POSTF04                        0x04    // перемотать на "B" файлов вперед
  130. #define _POSTF05                        0x05    // подсчет количества "легальных" записей
  131. #define _POSTF06                        0x06    // установить номер "легальной" записи из "BC"
  132. #define _POSTF07                        0x07    // вернуть в "BC" текущий номер "легальной" записи
  133.  
  134. // номера поддерживаемых расширений для RST 8
  135. // "TRDSCLFDITAPSPG$C FNTBMPROM"        ;RST 8
  136. // "TRDSCLFDITAPSPG$C BMPSNA"           ;MAINMENU
  137. #define _TRD                            0x01    // TRD
  138. #define _SCL                            0x02    // SCL
  139. #define _FDI                            0x03    // FDI
  140. #define _TAP                            0x04    // TAP
  141. #define _SPG                            0x05    // SPG
  142. #define _HOB                            0x06    // $C
  143. #define _FNT                            0x07    // FNT
  144. #define _BMP                            0x08    // BMP
  145. #define _ROM                            0x09    // ROM
  146. //#define _HOB1                         0x0A    // $??
  147. //#define _HOB2                         0x0B    // !??
  148.  
  149. // внутренние номера типов разделов
  150. #define _NO_INIT                        0x00
  151. #define _FAT12                          0x01    // 00 = 01              FAT12
  152. #define _FAT16                          0x02    // 01 = 04,06,0E        FAT16
  153. #define _FAT32                          0x03    // 02 = 0B,0C           FAT32
  154. #define _TRDOS                          0x04    // TR-DOS диск
  155. #define _UNKNOWN                        0x05    // файловая система еще не определена или неизвестна
  156.  
  157. // описатели для рисования окна
  158. #define _X_COORD                        0x00
  159. #define _Y_COORD                        0x01
  160. #define _V_SIZE                         0x02
  161. #define _H_SIZE                         0x03
  162. #define _COLOR_WIN                      0x04
  163. #define _COLOR_CUR                      0x05
  164. #define _FLAGS                          0x06
  165. #define _NUM_PKT                        0x07
  166. #define _TEK_PKT_L                      0x08
  167. #define _TEK_PKT_H                      0x09
  168. #define _NUM_KOL_L                      0x0A
  169. #define _NUM_KOL_H                      0x0B
  170. #define _ADR_TXT_L                      0x0C
  171. #define _ADR_TXT_H                      0x0D
  172. #define _ADR_PRG_L                      0x0E
  173. #define _ADR_PRG_H                      0x0F
  174. #define _ADR_MOUSE_L                    0x10
  175. #define _ADR_MOUSE_H                    0x11
  176. #define _ADR_HOTKEY_L                   0x12
  177. #define _ADR_HOTKEY_H                   0x13
  178.