ZX-Ревю 1996 №4-5 1996 г.

Форум - доработка Tasm 128.


ДОРАБОТКА "TASM 128". Цель этого письма - помочь владельцам "Скорпионов", "АТМ" и др. Прочитав раздел "FORUM" в ZX РЕВЮ 95/4, где пишет Павел Ляховский, я решил помочь ему и всем остальным, у которых не работает "TASM-128".

Вообще существует этот пакет, который работает на "Скорпионе". Он иногда "зашивается" в ROM-диск этого компьютера. Теперь ближе к делу:

Программа TASM 3.0 не работает, потому, что обращение к порту #7FFD идет как обращение к порту #FD.

Чтобы изменить программу TASM 3.0, нужно загрузить кодовый блок TASM 3.0 - под адрес 49152, далее изменить следующие ячейки памяти:

#C019=#C3 8 #C01A=#40 JP 23872 #C01B=#5D -#C022=#C3 8 #C023=#50 JP 23888 #C024=#5D -

Далее выгрузите программу - SAVE "TASM 3.2" CODE 49152, 10448

Если Вы не производили изменений, о которых написано в ZX РЕВЮ 95/5, то их сделать тоже необходимо для работы с TASM'ом.

Далее необходим специальный загрузчик.

1. Наберите строку : 255 REM 34-пробела.

2. В сформированной строке отассемблируйте программу с адреса 23872:

LD

(23904),BC

LD

BC,#7FFD

OUT

(C) , A

LD

BC, (23904)

JP

#C000

LD

(23904),BC

LD

BC,#7FFD

OUT

(C) , A

LD

BC, (23904)

JP

49190

DEFW

#FFFF

3. Объедините по MERGE в TR-DOSS эту строку с загрузчиком пакета - TRACK 2&3.

4. Сотрите все строки, кроме нулевой и 255-ой.

5. Дайте POKE 23952,0.

И осталось набрать бейсик-строки следующего содержания:

10 POKE VAL "23693",VAL "7": POKE VAL "23624",VAL "7": OUT CODE "RETURN",NOT PI: OUT VAL "32765",VAL "20": RANDOMIZE USR VAL "15619": REM : LOAD "TASM3.2"CODE VAL "49152",VAL "10448"

20 OUT VAL "32765",VAL "20": RANDOMIZE USR VAL "49152": STOP

Для владельцев "Скорпионов" посоветую еще набрать следующую строку:

30 POKE 16384,243: POKE 16385,118: POKE 16386,251: POKE 16387,201: RANDOMIZE USR 16384

Эта строка обеспечивает вход в SHADOW MONITOR. Даете RUN 30, нажимаете MAGIC, отлаживаете свою программу и, по команде JP C в мониторе или "CONTINUE PROGRAM", выходите в BASIC.

Теперь загрузчик Вы написали, можете его выгружать: SAVE "TASM 3.2". Вот и все. После этих изменений ассемблер работает на любых компьютерах.

Приведенный мною фрагмент занимается коммутацией страниц при подаче команд: O,Q,R,S. Он раньше располагался с адреса 23597, и выглядел так: L1 JP 49152 (49190)

LD A,2 0

L2 OUT (253),A

JR L1

Обращение к порту #FD вынужденное, иначе этот резидент "залезает" в важные области системных переменных. Я, в свою очередь, заменил команду OUT (253),A и кусочек JR L1 на JP 23872 (23888), где и происходит корректное переключение порта #7FFD.

После всех выше перечисленных изменений программа работает просто великолепно!!!

© О. Литвинов.




СОДЕРЖАНИЕ:


  Оставте Ваш отзыв:

  НИК/ИМЯ
  ПОЧТА (шифруется)
  КОД



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

Похожие статьи:
Insight - интернет на Спектруме, размышления moroz1999.
Комикс - Продолжение комикса.
Амига - Эмулятор Амиги на РС - это что-то...
Rest In Pain - Awaken'а не будет. Пpоект окончательно закpыт, исходники пpоданы Necromancer'у, pазpешите откланяться...
Обзор новинок - A Last Hero of the Light Force (pre release).

В этот день...   29 марта