Adventurer #07
31 января 1998

Обмен опытом - Обработка ошибок TR DOS.

     (C) REAL SOFTWARE/NHG'1997,г.Брест
     (C) Музыка: Andrew Fer/PhF


    Обработка дисковых ошибок  TR-DOS


     Если  в вашей программе не требуется
делать подробную обработку ошибок с выва-
ливающемся меню с выбором RIA , но вы хо-
тите  избежать очистки экрана и появления
подлой  надписи TR-DOS "disk error", то в
этом  вам  поможет разработанная мною ко-
роткая  процедурка, которая блокирует все
попытки  TR-DOS  напечатать  сообщение об
ошибке,  она, в  этом  случае, без всяких
последствий вернет управление программе с
кодом  ошибки в регистре A (копия систем-
ной переменной #5D0F(23823)). Если же вам
нужно обрабатывать RIA ,то на данную про-
цедурку  без особых проблем вы можете на-
весить драйвер обработки ошибок,например,
такой  ,  как опубликован в газете ECHO 3
(автор  VfNG ). На  случай, если у вас не
найдется  этой  газетки,  я  привожу этот
драйвер, сразу  подключенный к моей прог-
раммке,  мной  в него было внесено только
определение  типа  ошибки  DISK ERROR или
READ ONLY .

     Вместо #3D13 вызываете TR-DOS  oбра-
ботка ошибок без меню RIA :
TRDOS  PUSH   HL
       LD     HL,(23613) ; Сохр. ERR_SP
       LD     (ERR+1),HL
       LD     HL,ERR
       EX     (SP),HL
       LD     (23613),SP
       EX     AF,AF'
       XOR    A
       LD     (23823),A
       LD     (23824),A
       LD     (23570),A
       EX     AF,AF'
       JP     15635
ERR    LD     HL,0
       LD     (23613),HL ; восст. ERR_SP
       LD     A,6
       LD     (23570),A
       LD     A,(23823)
       AND    A
TRD1   RET Z
       PUSH   AF
       LD     IX,W1 ; окно ERROR !
       CALL   OPWIN ; открыть окно
       POP    AF
       RET

     Примечание: если вы используете бей-
сиковские  каналы для печати символов или
для  каких либо других целей, то вставьте
в процедуру обработки ошибок перед откры-
тием  окна с сообщением об ошибке инициа-
лизацию нужного канала. Например: LD A,2:
CALL 5633 .
     Кстати  ,  один из способов быстрого
взлома  программ,  это открывание защелки
дисковода во время загрузки, и сохранение
по  MAGIC 'у или вход в монитор, а дальше
просто  нужно найти LOADER .Так что, если
вы  хотите  нормально защитить программу,
то подвешивайте ту или иную процедуру об-
работки ошибок.

     С обработкой RIA: 
TRDOS  PUSH   HL
       LD     HL,(23613) ; Сохр. ERR_SP
       LD     (ERR+1),HL
       LD     HL,DDRIV ; Уст. драйв.
       LD     (#5CC3),HL
       LD     HL,ERR
       EX     (SP),HL
       LD     (23613),SP
       EX     AF,AF'
       LD     A,#C3
       LD     (#5CC2),A
       XOR    A
       LD     (23823),A
       LD     (23824),A
       EX     AF,AF'
       JP     15635
ERR    LD     HL,0
       LD     (23613),HL ; восст. ERR_SP
       LD     A,#C9 ; восст. RET
       LD     (#5CC2),A
       LD     A,(23823)
       AND    A
TRD1   RET    Z
       CP     6
       PUSH   AF
       LD     IX,W1 ; окно NO DISK
       JR     Z,NODISK
       LD     IX,W2 ;окно BREAK
NODISK CALL   OPWIN ; открыть окно
       POP    AF
       RET

     Обработка RIA


DDRIV  EX      (SP),HL
       PUSH    AF
       LD      A,H
       CP      13
       JR      Z,ERROR
       POP     AF
       EX      (SP),HL
       RET
ERROR  ; В системной переменной
       ; #5CF4 (23796) текущие дор/сект
       LD      IX,W3 ; таблица окна
       CALL    OPWIN ; открыть окно
       ............  ; напечатать
       ............  ; текущую дор/сект
       POP     HL
       POP     HL
       LD      A,L
       POP     HL
       POP     HL
       POP     HL
       CP      #D8
       LD      HL,TX23 ; DISK ERROR
       JR      NZ,ERROR0
       LD      HL,TX24 ; READ ONLY
ERROR0 CALL    WRITE ; Печать
       XOR     A
       LD      (23560),A
       LD      IX,GORM2 ; таблица меню
       CALL    GRMNU ; выбор пункта
       LD      A,(IX+2) ; номер пункта
       DEC     A
       LD      C,"R"
       JR      Z,ERROR1
       DEC     A
       LD      C,"A"
       JR      Z,ERROR1
       LD      C,"I"
ERROR1 LD      A,C
       LD      HL,#3F7E
       EX      (SP),HL
       JP      #3D2F



Другие статьи номера:

От авторов - Особенности новой оболочки.

От авторов - Вступительное слово.

От авторов - Киберпанки - кто это ?

От авторов - Что такое киберпанк?

Авторы - список авторов журнала и адрес редакции.

Презентация - Авторские программы: Inter Mode Player v1.1

Презентация - Авторские программы: SPRITES GENERATOR v. 4. 7

Презентация - Авторские программы: Real COMMANDER v 1. 4

Презентация - Авторские программы: ЛАБИРИНТЫ СМЕРТИ

Презентация - Авторские программы: Кубик Рубика (DEMO)

Презентация - Авторские программы: ОСЕЛ

Презентация - Авторские программы: Крестики-Нолики

Презентация - Авторские программы: SQUARDS

Презентация - Авторские программы: ISLAND OF DARKNESS

Презентация - Авторские программы: SpectrumGuide v1. 0

Презентация - Авторские программы: TOP COPY

Презентация - Авторские программы: Что может FORTH?

Презентация - Авторские программы: ПОСЛЕДНИЙ КУРЬЕР

Презентация - Авторские программы: Орагон

Новелла - КОМПЬЮТЕРНАЯ НОВЕЛЛА.

Письма - письма читателей.

Интерфейс - компьютерные интерфейсы.

Интерфейс - О кнопках, мышах и многом другом.

Интерфейс - Немного о DOMEN OS.

Softmaking - территория закона. О проблемах пиратства на Speccy.

Спектрум - Бред о SPECCY & PC. Размышления о будущем.

Рыбинские новости - проек WAR ROBOTS.

Система - Обзор системных программ.

Система - Обзор системных программ: архиваторы ZXZIP & ZXUNZIP v1.2

Система - Обзор системных программ: копировщик Turbo Copier v 2. 0

Система - Обзор системных программ: копировщик REAL COPY

Система - Обзор системных программ: копировщик SOFT COPY v 1.3

Система - Обзор системных программ: копировщик McDonald v 2. 7

Система - Обзор системных программ: ZX Tools DeLuxe v 2.0

Система - Обзор системных программ: ассемблер XAS v 7.432

Система - Обзор системных программ: ассемблер TASM v 4.12

Система - Обзор системных программ: редактор звука SOUND FX v 1. 0

Система - Обзор системных программ: SUPER CATALOG v 1. 22

Система - Обзор системных программ: Text-Designer v 2.0

Система - Обзор системных программ: Smart boot

Система - Обзор системных программ: Total Commander v 1.4

Система - Обзор системных программ: ART Studio v 2. 1

Система - Обзор системных программ: Advancer Text Editor v 1.24

Система - Обзор системных программ: звуковой редактор Digital Wave v 0. 2

Система - Обзор системных программ: ассемблер XAS v 9.06+

Система - Обзор системных программ: копировщик Faster DiskCopyer v 2.0

Система - Обзор системных программ: копировщик RCOPY v 4.1

Система - Обзор системных программ: копировщик Master Fast Track Copyer v 2. 2

Система - Обзор системных программ: Sample Compiler v 0.3

Система - Обзор системных программ: TEST RAMDOCTOR v 2. 0

Система - Обзор системных программ: ассемблер ZXASM v 3.10 demo

Система - ТЕСТОВАЯ ПАЛАТА: операционная система для спектрума PINK FLOYD v3 (2.31)

Система - ТЕСТОВАЯ ПАЛАТА: CONSUL COMMANDER v2.7

Гости - Презентация группы JURASSIC SOFT из г.Ульяновска.

Гости - О происхождении группы ACCEPT CORP из г. Армавира.

Раскрутка - Описание и рекомендации по прохождению игры MAGICIAN LAND.

Раскрутка - Советы для лентяев по выживанию в игре MURK 3320.

Обзор игрушек - Обзор новых игровых программ: ПОСЛЕДНЯЯ АВАНТЮРА.

Раскрутка - Описание и рекомендации по прохождению игры СРЕДНЕВЕКОВАЯ ИСТОРИЯ.

О вирусах - Virus 6.05b & Virus 7.06b.

Обмен опытом - Обработка ошибок TR DOS.

Обмен опытом - DIGITAL MUSEC + SCORPION - схемы подключения AY.

Обмен опытом - QUILL редактор адвентюр - достоинства и недостатки.

Обмен опытом - Быстрые процедуры линии.

Оттяг - вступление.

Оттяг - Что такое законченный урод.

Оттяг - Инструкция по знакомству с девушкой для чайников...

Оттяг - 20 вещей, которые девушка может запихнуть себе куда подальше.

Оттяг - Тест "Хорошо ли ты знаешь спектрумовскую сцену"?

Оттяг - Тест "На сколько ты любишь пиво".

Оттяг - Пивное ревю.

Оттяг - Винни - Пух и все - все - все.

Оттяг - Восточная баллада о доблестном менте.

Новелла - Новелла "МАРАФОН ЗОМБИ" (по мотивам игры "ZOMBI").

Обзор игрушек - Обзор новых игровых программ: TECHNODROM

Обзор игрушек - Обзор новых игровых программ: PRO GOLF SINULATOR

Обзор игрушек - Обзор новых игровых программ: ПОСЛЕДНЯЯ АВАНТЮРА

Обзор игрушек - Обзор новых игровых программ: ELOPEMENT

Обзор игрушек - Обзор новых игровых программ: CATCH 23

Обзор игрушек - Обзор новых игровых программ: ARENA

Обзор игрушек - Обзор новых игровых программ: VINDICATORS

Обзор игрушек - Обзор новых игровых программ: SWORD OF THE SAMURAI

Обзор игрушек - Обзор новых игровых программ: Q10 TANK BUSTER

Обзор игрушек - Обзор новых игровых программ: NINJA SPIRIT

Обзор игрушек - Обзор новых игровых программ: СТАЛКЕР

Конкурс - Итоги конкурса художников.

Реклама - Реклама и объявления.


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Обзор - игра Saboteur 2 (продолжение).
Кодерам - рекурсия на спектруме.
Лит. Страничка - головная боль полковника хауэлла или "Объвляю заседание открытым" (окончание).

В этот день...   22 июня