Subversion Repositories pentevo

Rev

Rev 689 | Rev 764 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed | ?url?

  1.  
  2. ;LAST UPDATE: 28.04.2015 savelij
  3.  
  4. ;[0x18B7 УСТАНОВКА АДРЕСА ЗАПУСКА]
  5. ADR_START_COM   LD (TRD_5CC6),HL
  6.                 LD DE,(TRD_5CEB)                ;ТРЕК И СЕКТОР МЕСТОПОЛОЖЕНИЯ ФАЙЛА
  7.                 RET
  8.  
  9. ;[0x1CFE УДАЛЕНИЕ БУФЕРА]
  10. DELETE_BUFFER   CALL DELETE_BUF
  11.                 JP CLRBUF_EDITOR
  12.  
  13. ;[0x1D5E ЗАПУСКА ФАЙЛА]
  14. RUN_FILE        JP Z,WORK4AUTORUN               ; ОБРАБОТКА СТРОКИ АВТОЗАПУСКА БЕЙСИКА
  15.                 CP "C"
  16.                 JP NZ,SINTAX_ERROR
  17. RUNCODE         LD HL,RUN_CODE
  18.                 LD (TRD_5D1A),HL
  19.                 JP END_COMAND
  20.  
  21. ;[0x36E8 ЗАПУСКАЛКА КОДОВОГО БЛОКА]
  22. RUN_CODE        CALL RESTORE_SP
  23.                 LD BC,(TRD_5CC6)                ;АДРЕС ЗАГРУЗКИ ИЗ КОМАНДНОЙ СТРОКИLD BC,(TRD_5CD9)
  24.                 PUSH BC
  25.                 RET
  26.  
  27. ;[0x214A ПЕЧАТЬ ИМЕНИ ПРИВОДА/РАЗДЕЛА]
  28. ;ЕСЛИ КОМАНДА РАСШИРЕННАЯ ТО ПЕЧАТЬ ИМЕНИ FAT УСТРОЙСТВА
  29. ;ИНАЧЕ ПЕЧАТЬ ИМЕНИ TR-DOS ДИСКОВОДА
  30. GET_COMMAND2    LD A,(TRD_5CEF)
  31.                 AND A
  32.                 CALL NZ,NOMER_DRV               ;ПЕЧАТЬ ИМЕНИ FAT УСТРОЙСТВА ЕСЛИ КОМАНДА НАЧИНАЕТСЯ С "."
  33.                 RET C                           ;ВЫХОД ЕСЛИ УЖЕ НАПЕЧАТАНА БУКВА FAT УСТРОЙСТВА
  34.                 LD A,(TRD_5D19)
  35.                 ADD A,"A"
  36.                 RST 0X10
  37.                 RET
  38.  
  39. ;[ПЕЧАТЬ ТЕКУЩЕГО ФОРМАТИРУЕМОГО ТРЕКА И СТОРОНЫ]
  40. PRINT_NUM_TRK   PUSH DE
  41.                 PUSH AF
  42.                 PUSH DE
  43.                 LD A,0X16
  44.                 RST 0X10
  45.                 LD A,(0X5C6B)
  46.                 DEC A
  47.                 RST 0X10
  48.                 LD A,0
  49.                 RST 0X10
  50.                 LD HL,TXT_FORMAT_TRK
  51.                 RST 0X18
  52.                 POP DE
  53.                 LD C,E
  54.                 LD B,0
  55.                 CALL PRINT_CHISLO
  56.                 LD HL,TXT_FSIDE
  57.                 RST 0X18
  58.                 POP AF
  59.                 LD A,"0"
  60.                 ADC A,0
  61.                 RST 0X10
  62.                 POP DE
  63.                 RET
  64.                
  65. TXT_FORMAT_TRK  DC "FORMAT TRACK: "
  66. TXT_FSIDE       DC "  SIDE: "
  67.  
  68. ;[0x3057 ПРОВЕРКА НА "." ДЛЯ РАСШИРЕННОЙ КОМАНДЫ]
  69. CMP_SPECSYM     LD HL,(TRD_5CD9)
  70.                 LD A,(HL)
  71.                 CP "."
  72.                 JP NZ,FIND_KEYWORD
  73.                 POP HL
  74.                 RET
  75.  
  76. ;[0x0325 ENDCOMAND]
  77. ENDCOMAND       LD A,D
  78.                 CP "."
  79.                 JP NZ,END_COMAND
  80.                 cp __RETURN
  81.                 call nz,CREATE_BUF              ; СОЗДАНИЕ БУФЕРА
  82.                 ld a,9
  83.                 ld (TRD_5D06),a                 ; КОЛИЧЕСТВО СИМВОЛОВ ИМЕНИ ФАЙЛА ПРИ ПОИСКЕ
  84.                 xor a
  85.                 ld (TRD_5D0F),a                 ; НОМЕР ОШИБКИ TR-DOS
  86.                 ld (TRD_5CD6),a                 ; #FF-КОМАНДА ПРИНЯТА СИНТАКСИЧЕСКИМ АНАЛИЗАТОРОМ
  87.                 ld (TRD_5D10),a                 ; СТАРШИЙ БАЙТ ОШИБКИ
  88.                 ld hl,FLAGS
  89.                 res 7,(hl)
  90.                 LD HL,COM_DOT
  91.                 JP LOC_353
  92.  
  93. ;[0x3EBF BUGFIX_3EBF]
  94. BUGFIX_3EBF     PUSH AF
  95.                 PUSH HL
  96.                 CALL GET_TIME_HEAD
  97.                 LD B,A
  98.                 POP HL
  99.                 POP AF
  100.                 JP HEAD_POSITION
  101.  
  102. ;[0x211E ОЧИСТКА БУФЕРА ВЫПОЛНЕННОЙ КОМАНДЫ]
  103. CLRBUF_EDITOR2  POP HL
  104.                 RES 7,(IY+1)
  105.                 RST 0X20
  106.                 DW 0X19FB
  107.                 XOR A
  108.                 LD (SUBPPC),A
  109.                 DEC A
  110.                 LD (ERR_NR),A
  111.                 LD HL,(E_LINE)
  112.                 LD (CH_ADD),HL
  113.                 RST 0X20
  114.                 DW 0X19FB
  115.                 RST 0X20
  116.                 DW 0X18
  117.                 RST 0X20
  118.                 DW 0X16B0
  119.                 RET
  120.  
  121. ;[ПЕЧАТЬ НОМЕРА ФОРМАТИРУЕМОЙ ДОРОЖКИ И СТОРОНЫ]
  122. loc_20D1        AND A
  123.                 CALL PRINT_NUM_TRK
  124.                 CALL FORMAT_TREK
  125.                 CALL COM_17
  126.                 SCF
  127.                 JP PRINT_NUM_TRK
  128.