Elolvastam de nem találtam olyan lehetöséget bár már láttam valamely formáit
Elképzelésem
Az elképzelés jó, de a gyakorlati megvalósításban több hiba is van.
ld a,255
out (0b2h),a
ld hl,(0bf91h) ;exos alsó határ
ld a,(0bf9eh)
Pl ezek máshol vannak EXOS 2.0 alatt, így nem érdemes közvetlenül vájkálni az EXOS lelkivilágában

ld bc,hl ;ex hl,bc ; push hl pop bc
ld hl,0
ld de,8000h
ldir
Hiányzik az ellenőrzés, hogy elférünk-e?
ld a,255
out (0b0h),a
Az EXOS-nak is meg kell mondani a változást, különben pl Reset esetén az eredeti nullás lapot lapozza vissza, és kész az elszállás.
mivel nem találtam utalást az exos mennyi és meik részét használja a 255-ös szegmensböl
gondolok a tape: disk: és egyéb átmeneti tárakra.
Ez folyamatos változik! Ezért kell lefoglalni megosztott szegmensként, majd megmondani, hogy MI mennyit használunk (felhasználói határ beállítása).
A fenn maradó helyen valahol csak elférne az LPT tábla és akkor felszabadul az FC szegmens
Mivel a 0-3fff között ugy is Rom van a ZX gépeken igy nem fogja semmi zavarni a rendszer memoriát /FF,FD,FC,FE/
Így van, ez az amit már megcsináltam a Spectrum átiratos betöltőmben már vagy 3 éve

Itt van kiemelve a lényeg:
PRGSIZE: EQU 0B00H ;a programunk méretéhez kell választani, de 10H-ra kerek legyen
LD SP,100H
LD HL,HIBA
LD (0BFF8H),HL
LD A,12
OUT (191),A
LD BC,100H+26
LD D,0
EXOS 16
LD BC,100H+28
LD D,255
EXOS 16
LD BC,100H+27
LD D,0
EXOS 16
HALT
LD HL,(0BFF4H)
SET 6,H
LD B,4
ELPT SRL H
RR L
DJNZ ELPT
LD A,L
LD (ELPTL),A
LD A,H
OR 0C0H
LD (ELPTH),A
LD HL,(0BFF4H)
LD DE,STATUS
LD BC,8
LDIR
CALL VID
JP NZ,HIBA
LD A,C
CP 255
JP Z,HIBA
LD (VIDS),A
LD DE,0
RRA
RR D
RRA
RR D
LD (VIDCIM1),DE
EXOS 24
LD A,C
LD (P2S),A
JP NZ,HIBA
EXOS 24
JR Z,OKEP3
CP 7FH
JP NZ,HIBA
LD A,C
LD (LPTS),A
OUT (0B3H),A
CP 0FCH
JP C,HIBA
LD DE,PRGSIZE+200*16
EXOS 23
JP NZ,HIBA
DI
IN A,(0B0H)
LD (P0S),A
LD (P3S),A
LD DE,PRGSIZE
LD (VIDCIM2),DE
LD HL,0
LD DE,0C000H
LD BC,PRGSIZE-1
LDIR
IN A,(0B3H)
OUT (0B0H),A
LD (0BFFCH),A
LD A,(P3S)
OUT (0B3H),A
LD A,(LPTS)
JR NEMHIBA1
OKEP3 LD A,C
LD (P3S),A
OUT (0B3H),A
CALL VID
JR Z,NEMHIBA
CP 7FH
JP NZ,HIBA
LD DE,200+16
EXOS 23
JP NZ,HIBA
LD C,255
NEMHIBA LD A,C
LD (LPTS),A
NEMHIBA1 CALL LPT
LD A,(VIDS)
OUT (0B1H),A
LD A,(P2S)
OUT (0B2H),A
XOR A
LD DE,(VIDCIM2)
LD HL,VIDCIM2+1
RRD
RLCA
RLCA
RLCA
RLCA
LD (LPTL),A
OUT (82H),A
OR 0C0H
RRD
LD (LPTH),A
OUT (83H),A
LD (VIDCIM2),DE
Az LPT létrehozás, ami mint lentebb említettem változik az eredeti SpV-ben közöltekhez képest, mivel nem fix helyen van, így kezelni kell a változó videócímeket.
LPT: LD DE,(VIDCIM2)
LD HL,0
RRA
RR H
RRA
RR H
ADD HL,DE
LD (VIDCIM2),HL
LPT2: LD A,(LPTS)
OUT (0B1H),A
LD A,192
LD DE,(VIDCIM2)
RES 7,D
SET 6,D
EXX
LD DE,(VIDCIM1)
LD IX,VIDCIM1
LD HL,(VIDCIM2)
RES 7,H
SET 6,H
INC HL
INC HL
INC HL
INC HL
LD BC,13
L1 EX AF,AF'
EXX
LD HL,LINE
LD BC,16
LDIR
EXX
LD (HL),E
INC HL
LD A,D
RRA
RRA
RRA
AND 3
OR 18H
OR (IX+1)
LD (HL),A
INC HL
LD (HL),E
INC HL
LD (HL),D
ADD HL,BC
INC D
LD A,D
AND 7
JR NZ,L2
LD A,E
ADD A,32
LD E,A
CCF
SBC A,A
AND 0F8H
ADD A,D
LD D,A
L2 EX AF,AF'
DEC A
JR NZ,L1
EXX
LD HL,SYNC
LD BC,HOSSZ
LDIR
RET
LINE DB 255,14H,15,2FH,0,0,0,0
TABL DB 0,36,121,88,130,182,219,63
SYNC DB 0F5H,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0
STATUS DB 247,8,11,73H,0B8H,0FEH,0E9H,1,0,216,216,0,0,0,0,0
DB 217,12H,63,0,0,0,0,0,0,0,0,0,0,0,0,0
DB 253,16,63,0,0,0,0,0,0,0,0,0,0,0,0,0
DB 252,16,6,63,0,0,0,0,0,0,0,0,0,0,0,0
DB 255,90H,63,32,0,0,0,0,0,0,0,0,0,0,0,0
DB 252,12H,6,63,0,0,0,0,0,0,0,0,0,0,0,0
DB 207,13H,63,0,0,0,0,0,0,0,0,0,0,0,0,0
HOSSZ EQU $-SYNC