Welcome, Guest. Please login or register.


Author Topic: TVC64emu (Read 15751 times)

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13521
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 50.0 Firefox 50.0
    • View Profile
    • http://enterprise.iko.hu/
Re: TVC64emu
« Reply #75 on: 2016.December.07. 16:12:01 »
Legalabbis bennem ez a kep alakult ki a CRTC mukodeserol :)
Jó ha van neked képed róla, mert én már totál nem értem :oops:

Offline lgb

  • EP addict
  • *
  • Posts: 3496
  • Country: hu
  • æðsta yfirmaður
  • OS:
  • Linux (Ubuntu) Linux (Ubuntu)
  • Browser:
  • Firefox 50.0 Firefox 50.0
    • View Profile
    • http://lgb.hu/
Re: TVC64emu
« Reply #76 on: 2016.December.07. 16:24:31 »
Jó ha van neked képed róla, mert én már totál nem értem :oops:

Bar, nem vagyok egy Istvan :) de azert nemi CRTC emulaciot megprobaltam a magam joval primitvebb emulatoraba eroltetni, szoval ezt a cimkepzes dolgot kozben en is megfejtettem, mondjuk a leiras hasznos (az a TVC hardver pdf), hogy szepen leirta :)

Amugy imho nem nehez megerteni, az a kulcs, amit Istvan is irt, alapvetoen a CRTC by design egy cimgenerator javareszt (oke van 1-2 dolog meg, SYNC, cursor jel - de ez utobbi csak "helper" es nem is kotelezo hasznalni, lasd TVC-n nem is kurzort csinal hanem interrupt-ot ....), viszont alapvetoen karakteres modra terveztek. Ezert a kimeneten a "RA" gondolom a Raster Address lesz, azaz egy karaktersorban levo raster szamat mutatja. Ha CRTC-re epitesz egy karakteres modu cuccot, akkor ez pl cimezheto a font adatokban a megfelelo parametert. Voltakeppen, ha a max_RA=1 lenne (illetve 0, mivel a 9. regiszter - ha jol remlik talan az? - a tv sor / karakter minusz egyet jelenti), akkor kb egy bitmap modnak megfelelo cucc jonne ki. Azert kell ennyire megkeverni, mert sajna arra gondolom nem szamitottak, hogy masra is hasznaljak, igy aztan a karakter sorok szama tul alacsony (8 bit, vagy 7, most tudomisen ...), ami karakter sor = raszter sor eseten eleg gyengus. Ugye ezert trukkoznek valahogy minden gepen ami CRTC-t hasznal, hogy a RA meg a generalt memory address (MA) kimenetekbol valami nagyobb fuggoleges felbontast leheto tevo bitmap szeru mod jojjon ki.

Ezek mellett meg a masik kulcs, amirol ma szo volt, hogy a CRTC semmifele pixel adatot NEM allit elo. Azt neked kell megoldani kulon aramkorben. Szoval azert annyira mas a szin/felbontas/akarmi lehetosegei az egyes gepeknek, amik amugy ugyanugy CRTC-t hasznalnak.


Bocs a sok rizsaert, csak hatha segit, ha leirom ...

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 50.0 Firefox 50.0
    • View Profile
Re: TVC64emu
« Reply #77 on: 2016.December.07. 18:17:27 »
TVC-n egyébként valóban 314 sorosnak kell lennie a képnek? A CRTC regiszterek alapján a ROM ezt állítja be (78 karakter + 2 sor), de meglepő, hogy nem 312.

Offline lgb

  • EP addict
  • *
  • Posts: 3496
  • Country: hu
  • æðsta yfirmaður
  • OS:
  • Linux (Ubuntu) Linux (Ubuntu)
  • Browser:
  • Firefox 50.0 Firefox 50.0
    • View Profile
    • http://lgb.hu/
Re: TVC64emu
« Reply #78 on: 2016.December.07. 18:28:32 »
TVC-n egyébként valóban 314 sorosnak kell lennie a képnek? A CRTC regiszterek alapján a ROM ezt állítja be (78 karakter + 2 sor), de meglepő, hogy nem 312.

Ezt nem ertettem en se ... En ugy tudom PAL eseten 312 es egy fel (??), vagy valami hasonlo lenne egy felkep, de van a "kiegeszito sorok szama" es ott 2 van a regiszterben ...

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13521
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Firefox 50.0 Firefox 50.0
    • View Profile
    • http://enterprise.iko.hu/
Re: TVC64emu
« Reply #79 on: 2016.December.07. 19:54:36 »
A DOS cartridge (IS-DOS) üzemmód, és az UPM már működik.

Viszont az SD-ből még mindig kiakad a DOS parancsra :oops:
Ha jól nézem az a gond, hogy a cartridge-t, azaz jelen esetben az SD illesztőt belapozza a 0. lapra, de az ott üresnek látszik... talán az SD emuláció most csak 3. lapos címekkel működik? :oops:

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13521
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Firefox 50.0 Firefox 50.0
    • View Profile
    • http://enterprise.iko.hu/
Re: TVC64emu
« Reply #80 on: 2016.December.07. 21:05:29 »
Néztem a DEMO4-et, most tényleg egy iciripicirevel gyorsabb mint a valódi gép. (De lehet, hogy egy még jobb SD kártyával behozná a különbséget.)
Még ehhez:
Quote
A sebesség függ a fájlrendszertől, a klaszter méretétől, a fájl töredezettségétől.
És valóban, csináltam egy 32 megás VHD-t, ott visszaesett a sebesség 8.14-re, emun és valódi gépen is.

A DEMO5, ezen 32 megás partíción, első résznél:
Valódi gép: 243.22 sec, 24.2 kép/s
Emu: 243.22 sec, 24.2 kép/s

Második:
Valódi: 96.86 sec, 12.5 kép/sec
emu: 96.86 sec, 12.5 kép/sec

Harmadik:
Valódi: 150.78 sec, 12.5 kép/sec
Emu: 150.78 sec, 12.5 kép/sec

Ezek elég jó eredménynek tűnnek :smt038

Memória időzítések, Z80 órajel nyújtás meg ilyesmi is emulálva van már? Ha jól sejtem igen, különben nem jönne ki olyan pontos eredmény :ds_icon_cheesygrin: 



Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 50.0 Firefox 50.0
    • View Profile
Re: TVC64emu
« Reply #81 on: 2016.December.07. 21:15:39 »
SDEXT lapozás javítva (most egyébként a debuggerben 7-es szegmensként jelenik meg), és az írható ROM is.

Memória időzítések, Z80 órajel nyújtás meg ilyesmi is emulálva van már?

Elvileg igen, nem biztos, hogy teljesen pontos, de VRAM hozzáférésnél fél ciklus egységekben 0.5-2 ciklus várakozás van a hardver könyv 20. ábrája alapján, egyéb memóriánál és I/O-nál pedig nincs várakozás.
« Last Edit: 2016.December.08. 22:00:11 by IstvanV »

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13521
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Firefox 50.0 Firefox 50.0
    • View Profile
    • http://enterprise.iko.hu/
Re: TVC64emu
« Reply #82 on: 2016.December.07. 21:31:18 »
Elvileg igen, nem biztos, hogy teljesen pontos, de VRAM hozzáférésnél fél ciklus egységekben 0.5-2 ciklus várakozás van a hardver könyv 20. ábrája alapján
Ezzel szerintem már a legpontosabb TVC emu lett :smt038
WInTVC: "- CRTC emuláció nem teljes
- clock stretching nincs implementálva"

PCZ80TVC: "- CRTC emuláció nem teljes
- clock stretching nincs implementálva"

A többi meg még egyszerűbb javás, vagy régi DOS-os emulátor.

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13521
  • Country: hu
  • OS:
  • Unknown Unknown
  • Browser:
  • Opera 9.80 (Opera Mini 7.6.40234) Opera 9.80 (Opera Mini 7.6.40234)
    • View Profile
    • http://enterprise.iko.hu/
Re: TVC64emu
« Reply #83 on: 2016.December.08. 00:52:04 »
Egyébként a TVC videó memória sebesség hogyan viszonyul az EP-shez?

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13521
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 50.0 Firefox 50.0
    • View Profile
    • http://enterprise.iko.hu/
Re: TVC64emu
« Reply #84 on: 2016.December.08. 10:43:50 »
Konfig fájlok kapcsán: ahogy említettem sok BASIC program (vagy BASIC-be bújtatott gépi kódú rész) használ direkt memória címzést, ezért vagy az 1.2 vagy a 2.2 rendszert szeretik, ezért szereltek a valód gépekbe is ROM átkapcsolást. Vagyis mindkét variációból kéne DOS-os és SD-is.
A fájlok nevébe automatikus kerül a memóriaméret? Mert lehet, hogy a TVC-sek jobban örülnének a jól ismert TVC32, TVC64, TVC64+ (TVC64P? TVC64Plus? A + jel nem biztos, hogy szerencsés fájlnévben.) neveknek :oops:
Vagy esetleg mivel a ROM variációk miatt úgyis elburjánoznak a konfig fájlok, ahogy EP-nél is van több könyvtár, lehetne itt is, és akkor azoknak lehetne ez a neve.
A cartridges teljes VT-DOS-ból elég szerintem 2.2-es 64+ variáció, és a UPM-ből is. Ezeken CP/M (jellegű) programok futnak, nem érdekli őket a BASIC különbözőség.

Amúgy ha jól nézem nagyobb feladatnak már csak egy esetleges FILEIO ROM lenne?
Az Operációs rendszer könyvben írnak a MOPS eszköz kezelőkről, elég hasonló a téma az EXOS-éhoz.

SDEXT lapozás javítva (most egyébként a debuggerben 7-es szegmensként jelenik meg)
A 4-5-6 lehetne még bővítőkártya ROM (8K), ide mehetne a FILEIO ha lesz, a maradék meg fejlesztéshez tartalék.
Egyébként itt a TVC-sben elég SD-nek hívni az SD-t. (Az EP-sben azért lett SDEXT, mert a :SD parancsot már használja az EPDOS, így ki kellett találni valamit :-) )

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 49.0 Firefox 49.0
    • View Profile
Re: TVC64emu
« Reply #85 on: 2016.December.08. 10:44:15 »
Egyébként a TVC videó memória sebesség hogyan viszonyul az EP-shez?

Rövidebbek a várakozások, de a CPU órajele lassabb, ezért nem nagy a különbség:

Ciklus      TVC (us)        EP (us)         CPC (us)
--------------------------------------------------------
  3         4 (1.28)       4.5 (1.125)       4 (1)
  4         6 (1.92)         9 (2.25)        4 (1)
  5         6 (1.92)         9 (2.25)        8 (2)
  6         8 (2.56)         9 (2.25)        8 (2)
  7         8 (2.56)         9 (2.25)        8 (2)
  8        10 (3.2)       11.8 (2.95)        8 (2)
  9        10 (3.2)       13.5 (3.375)      12 (3)
 10        12 (3.84)      13.5 (3.375)      12 (3)
 11        12 (3.84)      13.5 (3.375)      12 (3)


A CPC minden memória és I/O műveletet lassít, a TVC pedig csak 3.125 MHz-es, ezért normál RAM használatakor az EP a leggyorsabb a várakozások tiltásával.

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 49.0 Firefox 49.0
    • View Profile
Re: TVC64emu
« Reply #86 on: 2016.December.08. 11:12:44 »
A fájlok nevébe automatikus kerül a memóriaméret?

Nem, bármilyen nevük lehet. Ezek például megfelelőek lennének?

TVC_32k_V12.cfg
TVC_32k_V22.cfg
TVC_64k_V12.cfg
TVC_64k_V22.cfg
TVC_64k_V22_SDEXT.cfg
TVC_64k+_V12.cfg
TVC_64k+_V12_SDEXT.cfg
TVC_64k+_V12_VTDOS.cfg
TVC_64k+_V22.cfg
TVC_64k+_V22_SDEXT.cfg
TVC_64k+_V22_VTDOS.cfg          (* alapértelmezett)
TVC_64k+_V22_VTDOS_CART.cfg


Quote
Amúgy ha jól nézem nagyobb feladatnak már csak egy esetleges FILEIO ROM lenne?

Talán egy későbbi verzióban :oops:, ha jól látom, a TVC-s programok általában egyébként is .DSK formátumban tölthetők le.

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13521
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 50.0 Firefox 50.0
    • View Profile
    • http://enterprise.iko.hu/
Re: TVC64emu
« Reply #87 on: 2016.December.08. 11:22:35 »
Nem, bármilyen nevük lehet. Ezek például megfelelőek lennének?
Igen.

Quote
ha jól látom, a TVC-s programok általában egyébként is .DSK formátumban tölthetők le.
Vagy .CAS :-)
Van minden emulátorban "direkt .CAS betöltés", ami ha jól sejtem direktben hackeli be a memóriába. Ennél a nálunk megszokott FileIO szebb lenne, ráadásul akkor menteni is lehetne.

Offline lgb

  • EP addict
  • *
  • Posts: 3496
  • Country: hu
  • æðsta yfirmaður
  • OS:
  • Linux (Ubuntu) Linux (Ubuntu)
  • Browser:
  • Firefox 50.0 Firefox 50.0
    • View Profile
    • http://lgb.hu/
Re: TVC64emu
« Reply #88 on: 2016.December.08. 11:27:30 »
Talán egy későbbi verzióban :oops:, ha jól látom, a TVC-s programok általában egyébként is .DSK formátumban tölthetők le.

Ja, mert eddig nem volt kifinomult emulatoruk, mint a tied :D :D :D

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13521
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 50.0 Firefox 50.0
    • View Profile
    • http://enterprise.iko.hu/
Re: TVC64emu
« Reply #89 on: 2016.December.08. 11:38:16 »
Ja, mert eddig nem volt kifinomult emulatoruk, mint a tied :D :D :D
Így van! A több fájlosokhoz kellett az a DSK szórakozás, mert a direkt CAS betöltés csak az elsőt vágja be a memóriába.