На http://ob.raww.net/cgi-bin/index.cgi?page=quick закачал обновленную сборку Quick Commander v3.10r. В нее добавлена версия QC 3.10r которая использует другой резидент для размещения в памяти, а именно совместимый с TR-DOS 6.05e-6.10e. Сам TR-DOS тоже прилагается.
В следующей версии Quick Commander v4.00 будет поддерживаться только такой вид резидента. Связано это с тем что вся 128-я память в процессе работы используется и на резидент остается место только в верхней памяти.
Напомню, что резидент TR-DOS v6.10e подразумевает размещение в последней странице 512Кб памяти по стандарту Пентагона, то есть #C7 и требует чтобы по адресу #FFF0 размещалась строка "Residentpresent!". Тогда при старте TR-DOS'а он сразу передает управление на адрес #C000.
Если на Вашем компьютере память не по стандарту Пентагона, тогда при попытке включить страницу #C7 включится страница #17, то есть резидент окажется на "старом" месте и будет распознаваться программами.
Для переделки программ под новый резидент достаточно изменить 1 (!) байт в проверке:
Код:
LD BC,#7FFD
LD A,#С7 ;было #17
OUT (C),A
LD HL,(#C000)
LD DE,#FF31
OR A
SBC HL,DE
JP Z,#C000
LD A,#10
OUT (C),A
LD HL,0
PUSH HL
JP #3D2F
Или можно проверять по надписи "Residentpresent!", так делает TR-DOS 6.10e:
Код:
LD BC,#7FFD
LD A,#С7
OUT (C),A
LD HL,#FFF0
XOR A
LL XOR (HL)
ADC A,H
INC L
JR NZ,LL
CP 6 ;"Residentpresent!"
JP Z,#C000
LD A,#10
OUT (C),A
LD HL,0
PUSH HL
JP #3F2F
Quick Commander будет в дальнейшем поддерживать оба вида проверки. В программах в целях совместимости рекомендуется также использовать 2 проверки.
Высказывайте свои мысли на этот счет.