Welcome, Guest. Please login or register.


Author Topic: EXOS kompatibilis memória kezelés (Read 22488 times)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXOS kompatibilis memória kezelés
« Reply #30 on: 2008.November.17. 21:38:06 »
Na jó, ez már csak kötekedés, de mi van, ha alapból teli van már a 255-ös szegmens, pl. van vinyóvezérlõ+egér+órakártya EXOS 3.0, SZJA '88 stb.? :)
Azon a gépen amúgy se mûködik egy program se :-) (fõleg ha az EXOS 3.0-ban is benne van az a hiba ami a 2.0-ban és a 2.1-ben benne van)
De akkor legyen így:
Code: ZiLOG Z80 Assembler
  1. VID             LD HL,VEGE
  2.                 LD (HL),0
  3. KER             EXOS 24
  4.                 JR Z,NAMIVAN
  5.                 CP 7FH
  6.                 JP NZ,HIBA
  7.                 ld a,c
  8.                 cp 255
  9.                 jp nz,hiba
  10.                 ld a,7fh
  11. NAMIVAN         EX AF,AF'
  12.                 LD A,C
  13.                 CP 0FCH
  14.                 JR NC,NEMKER
  15.                 INC HL
  16.                 LD (HL),C
  17.                 JR KER
  18. NEMKER          EX AF,AF'
  19.                 PUSH BC
  20.                 PUSH AF
  21. VISSZA          LD C,(HL)
  22.                 EXOS 25
  23.                 DEC HL
  24.                 JR Z,VISSZA
  25.                 POP AF
  26.                 POP BC
  27.                 OR A
  28.                 RET

Offline Povi

  • EP addict
  • *
  • Posts: 2296
  • Country: hu
    • http://povi.fw.hu
Re: EXOS kompatibilis memória kezelés
« Reply #31 on: 2008.November.17. 21:47:42 »
Most megint egy kis értetlenséget hagytál bennem. Most ha megosztott szegmenst kapunk, de az nem a 255-ös, akkor hiba. De miért? Miért nem kaphatnánk meg a 254-est megosztottként?
Én nem a VID rutint módosítanám, hanem amikor az LPT részére kérünk szegmenst, akkor az EXOS 23 előtt lenne egy LD H,C az LD C,255 helyett pedig egy LD C,H.
*** Speicherplatz zu klein

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXOS kompatibilis memória kezelés
« Reply #32 on: 2008.November.17. 21:55:21 »
Én nem a VID rutint módosítanám, hanem amikor az LPT részére kérünk szegmenst, akkor az EXOS 23 elõtt lenne egy LD H,C az LD C,255 helyett pedig egy LD C,H.
Igen végül is lehet ez is, csak akkor más program részeket is át kell nézni :-) (amikrõl még nem volt szó)

Offline Povi

  • EP addict
  • *
  • Posts: 2296
  • Country: hu
    • http://povi.fw.hu
Re: EXOS kompatibilis memória kezelés
« Reply #33 on: 2008.November.17. 22:05:23 »
Akkor maradjon minden az eredetiben...
Én megyek aludni...
*** Speicherplatz zu klein

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9898
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: EXOS kompatibilis memória kezelés
« Reply #34 on: 2008.November.18. 00:40:09 »
Felraktam a wikire a disszertáció eddig itt olvasható részét. A copypaste miatt a kódok eléggé rémálomba illõen néznek ki. Kb. a Zozo által írtakat tettem fel. Aki érti is, hogy mirõl szól a disszertáció, finomíthat rajta a wikin, elvehet belõle, hozzátehet. :)
« Last Edit: 2010.May.04. 14:16:13 by szipucsu, Reason: régi link javítása »
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Povi

  • EP addict
  • *
  • Posts: 2296
  • Country: hu
    • http://povi.fw.hu
Re: EXOS kompatibilis memória kezelés
« Reply #35 on: 2008.November.20. 13:44:43 »
Késöbb kérünk egy LPT szegmenst is, ami lehet megosztott is, ha elfér benne az LPT tábla (azaz az EXOS határ beállítható a megfelelõ helyre.)

...amikor csak kettõ van szabadon, és még az LPT táblának is kéne egy :-)

Miért kell az LPT-tábla számára külön szegmenst kérni? Nem férne be a video-memória (ha jól tudom csak 6912 byte) mellé?
*** Speicherplatz zu klein

Offline gafz

  • EP lover
  • *
  • Posts: 700
  • Country: hu
    • http://gafz.atw.hu
Re: EXOS kompatibilis memória kezelés
« Reply #36 on: 2008.November.20. 13:48:05 »
Miért kell az LPT-tábla számára külön szegmenst kérni? Nem férne be a video-memória (ha jól tudom csak 6912 byte) mellé?

Szerintem akkor felülírná a program az LPT-t.
Enterprise Forever

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXOS kompatibilis memória kezelés
« Reply #37 on: 2008.November.20. 13:52:55 »
Szerintem akkor felülírná a program az LPT-t.
Így van!

Offline Povi

  • EP addict
  • *
  • Posts: 2296
  • Country: hu
    • http://povi.fw.hu
Re: EXOS kompatibilis memória kezelés
« Reply #38 on: 2008.November.20. 14:31:29 »
Ezt most nem értem...  :oops:
*** Speicherplatz zu klein

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXOS kompatibilis memória kezelés
« Reply #39 on: 2008.November.20. 14:39:16 »
A Spectrumos memória kiosztás úgy néz ki, 4000-5AFFH a képernyõ, 5B00-FFFFH az általános RAM, ahol a program fut.
Ha oda tennénk az LPT-t a képernyõ mögé, a program felülírja.
Persze ha olyan alaposan átírjuk a programot, hogy már nem a Spectrumos memória kiosztást használja, akkor megoldható... ill. saját EP-s program írása esetén is úgy pakolgatunk, ahogy jól esik :-)

Offline Povi

  • EP addict
  • *
  • Posts: 2296
  • Country: hu
    • http://povi.fw.hu
Re: EXOS kompatibilis memória kezelés
« Reply #40 on: 2008.November.23. 10:25:20 »
Megcsináltam a Spectris-t a Zozo féle útmutatások alapján, hogy EXOS-kompatibilis legyen. Most már gond nélkül fut EP64-en is, viszont a status sorban szemetet jelenít meg.
[ Guests cannot view attachments ]
*** Speicherplatz zu klein

Offline geco

  • EP addict
  • *
  • Posts: 7082
  • Country: hu
    • Támogató Támogató
Re: EXOS kompatibilis memória kezelés
« Reply #41 on: 2008.November.23. 11:10:28 »
EXOS 2.0-ában a státusz sor kezdete el van tolva EXOS2.1-hez képest, és a karaktermemória címe is, ezért jelenik meg a 4 kuka karakter.
EXOS 2.0: 0febch 01edh
EXOS 2.1: 0feb8h 01e9h

Offline Povi

  • EP addict
  • *
  • Posts: 2296
  • Country: hu
    • http://povi.fw.hu
Re: EXOS kompatibilis memória kezelés
« Reply #42 on: 2008.November.23. 11:38:49 »
Igen, de és a status sor címét a BFF6-on eltárolt word alapján veszem, tehát nem emiatt lehet a hiba.
Meg a két alsó pixelsor is hiányzik, itt valami LPT-hiba lehet, de én ahhoz nem értek...  :oops:
*** Speicherplatz zu klein

Offline Povi

  • EP addict
  • *
  • Posts: 2296
  • Country: hu
    • http://povi.fw.hu
Re: EXOS kompatibilis memória kezelés
« Reply #43 on: 2008.November.23. 11:41:45 »
Megnéztem, hogy csinálja Zozo a Bumpy-ban:
Code: [Select]
                LD HL,(0BFF4H)
                LD DE,STATUS
                LD BC,8
                LDIR

Így már nem hibás, de nem igazán értem, mit csinál ez a pár sor...    :roll:

BFF4 - Sorparaméter-tábla Z80-as címe
*** Speicherplatz zu klein

Offline geco

  • EP addict
  • *
  • Posts: 7082
  • Country: hu
    • Támogató Támogató
Re: EXOS kompatibilis memória kezelés
« Reply #44 on: 2008.November.23. 12:14:06 »
Ez tök jó, én eddig mindig kiderítettem, hogy EXOS 2.0-áról van-e szó, vagy 2.1-ről, és az alapján állítottam be az értéket.
betölti a sorparamáter tábla címét HL-be, majd a bemásolja gondolom Zozo LPT-jének státusz részére színinfó nélkül.