Memory driver for ISDOS

ZXNet echo conference «code.zx»

From Oleg Grigoriev To Sergey Kulkov 10 December 1998

Let your enemies, Sergey, die without sons! 08-11-98 at 00:43:00 Sergey Kulkov ═> Oleg Grigoriev: SK> megabyte "Turbo 2+" takes place. Page switching scheme SK> next: I would have said so right away. :) SK> ; a=physical page number SK> push af SK> and #38 SK> cpl SK> ld bc,#fff7; page multiplexer SK> call dos SK> pop af SK> ld b,a SK> and #18 SK> rlca SK> rlca SK> rlca SK> ld c,a SK> ld a,b SK> and #07 SK> add a,c SK> or #10 SK> ld bc,#7ffd SK> out (c),a Question: are you sure about the need to duplicate d4, d5 page numbers in d6, d7 #7ffd? I think this is unnecessary. Anyway case, I never did that and Paul Falcon (while he was alive) then- same.Look: === begin of file TURBO2P.txt === [skipped] Note for those who like to use all 1024k operatives in SPECTRUM mode. Below is the standard procedure for switching 1024k pages for SPECTRUM. When calling in A, the page number is 0-3FH (remember that the stack and the calling the program should not be located in addresses above #C000) SET_PAGE: PUSH AF AND 7 ;select the least significant 3 bits OR #10 ;you can choose ROM and screen at your discretion. LD BC,#7FFD OUT(C),A POP AF AND #38 ;mask all bits except the 3 most significant ones CPL ;data inversion (RAM sample bit is set) LD BC,#2A53 ;in TR-DOS - OUT (C),A RET PUSH BC LD BC,#FFF7 JP #3D2F ;transition to TR-DOS After any such command, port #7FFD is disabled. If you want to correctly return to SPECTRUM mode, run: EXIT_1024: LD A,#FF LD BC,#2A53 PUSH BC LD BC,#FFF7 JP #3D2F further page management as usual via port #7FFD [skipped] === end of file === [about the multiplexer] SK> That's basically it. I will be very grateful for anything SK> assistance in work.Assistance? :) I'll write and you'll check. That's all twee. :) Best wishes, Oleg aka Ruiner.