--------------------------------------------------------------
--- A это схемка дешифрации портов CMOS часов и КЭШ:
15ЗЗUД7
+-----+
A12 --1|A0|DCo15-
A13 --2|A1| о14-
A14 --3|A2| о13-
+--| о12--> #BFF7cmos
| | о11------------> #CFF7cash !
A3 --4oV1| о10--> #DFF7cmos
/OIRQ --5oV2| о9---> #EFF7cmos
A15 --6|V3| о7--
+-----+
На всякий случай еще и распиновка КЭШ`а 11256, 61256, 62256
может есть и другие подходящие серии, у меня (Corvax) например
стоит микруха MSMS25бBP-10L.
+-------+
10|A0 |D0 |11
9|A1 |D1 |12
8|A2 |D2 |13
7|A3 |D3 |15
6|A4 |D4 |16
5|A5 |D5 |17
4|A6 |D6 |18
3|A7 |D7 |19
25|A8 | |
24|A9 | |
21|A10| |
23|A11| |
2|A12| |
26|A13| |
1|A14| |
+---+---|
27о/WR|Vpp|28
20о/CS+---|
22о/0E|Gnd|14
+-------+
P.S. Основной консультант по железу - Timon, исходняк для за-
полнения КЭШ`а информацией накодил Diamond, собрал и оттести-
ровал этот девайс, привел все эти доработки в ясный для пони-
мания вид, т.е. набил весь этот текст со схемами и написал по-
яснялки к исходняку - Corvax. Всем огромный привет!
A далее: исходняк в ALASM`е для заполнения КЭШ`а всякой лабу-
дой.
ORG #6000
DI
LD BC,#CFF7
LD A,#05
OUT (C),A ; разрешим запись в КЭШ
LD BC,#7FFD
LD A,#00 ; вкл. 0-ю банку
OUT (C),A
LD HL,#8000; тут образ 0-ой банки КЭШ
LD DE,0
LD BC,#4000
LDIR
LD BC,#7FFD
LD A,#10 ; вкл. 1-ю банку
OUT (C),A
; JR M1 ; переход если меняем только одну банку
LD HL,#C000; тут образ 1-ой банки ПЗУ
LD DE,0
LD BC,#4000
LDIR
M1
LD A,%00001011
; подмена TR-DOS и 128 BASIC + запрет от записи в ПЗУ.
LD BC,#CFF7
OUT (C),A
EI
RET
; LD A,%00000010
; подмена TR-DOS + доступ к КЭШ 1бКб
;-----------------------------------------------
ORG #8000
;Во время ассемблирования подгружаем с диска образы ПЗУ:
; то что пойдет в банку 0, грузим с адреса #8000
; то что пойдет в банку 1, грузим с адреса #C000
INCBIN "dos13f .r"; TR-DOS 5.13F
INCBIN "gluck53 .r"; GLUK RESET SERVICE 5.3
ORG #6000
;=============================================================
; Установка режимов работы (порт #CFF7):
; При bitO = 0 - 16К КЭШ + замена страницы ПЗУ:
;bit2 |bit1 | Что менять банк 0 КЭШ
;-----+-----+----------------------
; 0 | 0 | ничего не менять
; 0 | 1 | TR-DOS
; 1 | 0 | 128BASIC
; 1 | 1 | 48BASIC
;----------------------------------
; При bitO = 1 - замена 2-х страниц ПЗУ:
;bit2 |bit1 |Что менять|Что менять
; | |банк 0 КЭШ|банк 1 КЭШ
;-----+-----+----------+----------
; 0 | 0 | ничего | ничего
; 0 | 1 | TR-DOS | 128BASIC
; 1 | 0 | 128BASIC| 48BASIC
; 1 | 1 | 48BASIC | TR-DOS
;---------------------------------
; bitЗ = 0 - разрешена запись в подмененное ПЗУ;
; bitЗ = 1 - запрещена запись в подмененное ПЗУ.
;=============================================================
(с) Mad Мах
Other articles: