Memory driver

ZXNet echo conference «real.speccy»

From Pawel Kislyak To All 9 September 2000

Hello, All!

Delta/PHG discovered a glitch in the subject published in Echo 6 and
used in Real Commander 1.95, when detecting 1 MB of extensions
one bank is not taken into account (it’s strange that in the 4 years of operation of RC
no one had discovered this glitch before). It is recommended to update the subject with the two attached subroutines from the test. Since the writing of
Real Commander 2.0 is progressing slowly due to the difficulties that have arisen
with the organization of the modular system, I decided for now to release a new version of
RC from the 1.9 series, since the last available version has already accumulated
a couple of glitches. Writers of system software with support for RC RamDisk
can safely use the updated version of the driver, focusing on
the new version of Real Commander.

=== Cut ===
VIRT LD IX,#C000
LD HL,RSCT+63
LD B,64
V_R11 LD A,B
DEC A
CALL EX_RAM
LD C,(IX+0)
LD (HL),C
LD (IX+0),A
DEC HL
DJNZ V_R11
PUSH AF
LD A,LENTABL
LD (PAGE),A
POP AF
LD DE,TABL_PG
V_R20 LD A,(DE)
CP #FF
JR Z,V_R30
CALL EX_RAM
CP (IX+0)
JR Z,V_R22
PUSH DE
LDHL,TABL_PG+LENTABL
AND A
SBC HL,DE
PUSH HL
POP BC
PUSH DE
POP HL
INC HL
LDIR
PUSH HL
LD HL,PAGE
DEC (HL)
POP HL
POP DE
DEC DE
V_R22 INC DE
JR V_R20
V_R30 LD B,64
LD HL,RSCT
V_R31 LD A,64
SUB B
CALL EX_RAM
LD A,(HL)
LD (IX+0),A
INC HL
DJNZ V_R31
RET

TABINIT LD HL,TABL_PG-1
LD (HL),255
INC HL
XOR A
TABI1 LD (HL),A
TABI2 INC A
CP 2
JR Z,TABI2
CP 5
JR Z,TABI2
INC HL
CP LENTABL+2
JR NZ,TABI1
LD (HL),255
LD HL,RSCT
PUSH HL
POP DE
INC DE
LD BC,63
LD (HL),B
LDIR
INC B
LD (TYPE),BC
RET
=== Cut ===

Bye!
Pa...@nm.ru realsoft.nm.ru [RC 2.0 25%] [ZX] [Real Software]