Welcome, Guest. Please login or register.


Author Topic: Assembly programozás (Read 147052 times)

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13521
  • Country: hu
  • OS:
  • Java Platform Micro Edition Java Platform Micro Edition
  • Browser:
  • Opera 9.50 (Opera Mini 4.0.8993) Opera 9.50 (Opera Mini 4.0.8993)
    • View Profile
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #60 on: 2007.October.28. 17:02:31 »
Most igy hirtelen azt javasolnám,hogy az ep.homeserver.hu oldalon nézd meg a Spectrum programok átirása cikksorozatot (SpV-bol), ott jol el van magyarázva a dolog.
Amugy a B5H portrol van szo.

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Microsoft Internet Explorer 7.0 Microsoft Internet Explorer 7.0
    • View Profile
Re: Assembly programozás
« Reply #61 on: 2007.October.28. 17:05:25 »

Megvan, koszi ... De vajon ez exos konyvbol miert maradt ki,
es vajon akkor mikrol nem tudunk meg ???

Vagy hol van egy reerencia szintu hw leiras ep- rol ? Azt hittem az exos konyv szolgal erre a celra is ...
Z80 System

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Microsoft Internet Explorer 7.0 Microsoft Internet Explorer 7.0
    • View Profile
Re: Assembly programozás
« Reply #62 on: 2007.October.29. 00:57:00 »

Egy furcs jelenseget tapasztaltam az LPT tablam felvetelekor.

Ha 16 szinu grafika mellett 44 "karakternel" (ami 16 szin mellett egyebkent 176 pixel), szelesebbre alitom az LPB bejegyzeseimet (bal margo: 9, jobb margo: 53), akkor a ket szelen (bal/jobb oldal) nem rajzolodik ki a videomemoria tartalma, hanem valoszinuleg 0- as szinnel rajzolja ki, pontosan nem tom mert a palettam osszes szine ugyanarra van allitva scanline- onkent, de biztosan egyertelmuen nem border szinnel, es nem is azzal amit a videomemoria tartalmaz.

Emellett a 44 "karakter" (exos terminologia: "slot") mellett meg jo, de ha ennel nagyobbra veszem pld. 46 (bal margo: 8, jobb margo: 54) vagy ennel nagyobb, akkor fellep a jelenseg! Leharapja a nick a kep ket szelet ?

Ismeritek ezt, vagy csak az emu hibaja ?

Z80 System

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13521
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 2.0.0.8 Firefox 2.0.0.8
    • View Profile
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #63 on: 2007.October.29. 09:21:58 »
Vagy hol van egy reerencia szintu hw leiras ep- rol ? Azt hittem az exos konyv szolgal erre a celra is ...
Sok dokumentáció nem jutott el hozzánk, legalábbis a "nép" körébe...
Mióta ez a fórum létezik, külföldi barátainknak hála több ilyen is elõkerült, pl az Enterprise Application Notes címû sorozat.
Van amit még ma is keresünk, pl az EXDOS technikai dokumentációja, ami igen jól jönne a vinyó projekthez...
És biztos vannak olyanok is, amikrõl még nem is tudunk :-(

Konkrétan a billentyûzetrõl ebben az anyagban írnak, amit a játékprogram készítõ cégeknek csináltak, hogy ki tudják adni programjaikat EP-re is. Ha jól sejtem ez az anyag képezte az SpV cikk alapját is :-)

Ennek ellenére szerintem az EP a nagyon-nagyon jól dokumentált gépek közé tartozik! Amikor pl CPC-vel ismerkedtem, volt nagyon sok doksi, de rohadt érthetetlen, kusza halmaz az egész...

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13521
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 2.0.0.8 Firefox 2.0.0.8
    • View Profile
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #64 on: 2007.October.29. 09:27:03 »
Emellett a 44 "karakter" (exos terminologia: "slot") mellett meg jo, de ha ennel nagyobbra veszem pld. 46 (bal margo: 8, jobb margo: 54) vagy ennel nagyobb, akkor fellep a jelenseg! Leharapja a nick a kep ket szelet ?
46-nál többet már a dokumentáció alapján se tud a Nick :-)
44-et elvileg tudnia kéne, de a fene se tudja, mert egy átlag tv/monitor jó esetben tudja a 42-t... anno az új tévénkhez azért hívtuk rögtön a szerelõt, hogy az EPDOS 42 karakter széles képe beférjen a képernyõre :-)

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Microsoft Internet Explorer 6.0 Microsoft Internet Explorer 6.0
    • View Profile
Re: Assembly programozás
« Reply #65 on: 2007.October.29. 09:40:24 »
A 46 az mar nem okes pedig, a 44 meg jo ( az ep128emu2- ben, igazi ep- m ugye meg nincs ... :( :) )

Mellesleg a jozan paraszti esz azt gondolna, hogy akkor ott vagy border colort, vagy esetleg blank feketet jelenit meg, ez meg valamelyik paletta szint jeleniti meg a 44 karakteren kivul eso reszeken, mert szepen rasztercsikos, ahogy beallitottam a palettat. De ha a vidmembe irok valamit, akkor az nem latszik ott meg, csak a 44 es azon belul eso reszeken.


Z80 System

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13521
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 2.0.0.8 Firefox 2.0.0.8
    • View Profile
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #66 on: 2007.October.29. 09:53:38 »
Rakd fel ide a progit, aztán megnézzük igazi EP-n.

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Microsoft Internet Explorer 6.0 Microsoft Internet Explorer 6.0
    • View Profile
Re: Assembly programozás
« Reply #67 on: 2007.October.29. 10:09:05 »

Van olyan monitorod amivel latszik a teljes szelesseg ? Ha van akkor este felrakom.

Hol van info arrol, hogyan lehet ide feltolteni ?

Z80 System

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13521
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 2.0.0.8 Firefox 2.0.0.8
    • View Profile
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #68 on: 2007.October.29. 11:12:49 »
Van olyan monitorod amivel latszik a teljes szelesseg ? Ha van akkor este felrakom.
Még sose próbáltam mit lehet betekerni :-)
Csináld úgy, hogy mondjuk 5 karaktersor 40-es, 5 sor 42-es, 5 sor 44-es, 5 sor 46-os, aztán meglátjuk.
Hol van info arrol, hogyan lehet ide feltolteni ?
MrPrise, van az újoncoknak valami fórum használati tankönyv? :-)

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux (Suse) Linux (Suse)
  • Browser:
  • Firefox 2.0.0.6 Firefox 2.0.0.6
    • View Profile
Re: Assembly programozás
« Reply #69 on: 2007.October.29. 12:07:54 »
Az ep128emu valóban levágja a 44 karakternél szélesebb képet (pontosabban a <9 és a >= 53 területet), mert ezt a TV-ken általában nem lehet látni, és sok demóban a vízszintes scrolloknál ezen a területen "szemét" jelenne meg. Egyébként a NICK valóban 46 karaktert tud megjeleníteni (8...53), és az ezen kívül eső részeken a NICK adatbuszon található adat jelenne meg (0 és 7 között az aktuális LPB, amit minden sorban újraolvas, 54 és 56 között pedig DRAM frissítés van, de az utolsó byte, ami a DRAM frissítés előtt a buszon volt, lesz látható). Egyébként nem lenne nehéz ezeket pontosan emulálni.

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Microsoft Internet Explorer 6.0 Microsoft Internet Explorer 6.0
    • View Profile
Re: Assembly programozás
« Reply #70 on: 2007.October.29. 19:54:24 »

Ki tudja hol talalhato informacio olyan dolgokrol mint pld. a ra midozitesek ? Tehat ha valami referenciaban azt olvasom hogy egy ld a,(hl) az pld 3 orajelciklusnyi ido(nem biztos hogy annyi csak valami iylesmi ertekek remlenek), akkor az egy elmeleti minimum ertek, ehhez hozza fog jonni a ramok kesleltetese miatt X orajelciklus, memoriatipusok (video,sima,rom) szerint kulonbozo merteku, de hogy igazabol ezek mekkorak ?

Es hogy meg mik befolyasolhatjak a futasi idot, pld. emlexem amigan az sem volt mindegy hogy milyen kepernyouzemmod volt bevaltva, ilyesmikre gondolok, hogy EP- n ezek mik ?



Z80 System

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux (Suse) Linux (Suse)
  • Browser:
  • Firefox 2.0.0.6 Firefox 2.0.0.6
    • View Profile
Re: Assembly programozás
« Reply #71 on: 2007.October.29. 20:11:26 »
Ki tudja hol talalhato informacio olyan dolgokrol mint pld. a ra midozitesek ? Tehat ha valami referenciaban azt olvasom hogy egy ld a,(hl) az pld 3 orajelciklusnyi ido(nem biztos hogy annyi csak valami iylesmi ertekek remlenek), akkor az egy elmeleti minimum ertek, ehhez hozza fog jonni a ramok kesleltetese miatt X orajelciklus, memoriatipusok (video,sima,rom) szerint kulonbozo merteku, de hogy igazabol ezek mekkorak ?

Normál (nem video) RAM és ROM között szerintem nincs különbség, és az ezekhez való minden hozzáférésnél 0 vagy 1 Z80 ciklus késleltetés van a 0bfh I/O port beállításaitól függően. Az utasítás első  (vagy ha van CB, DD, ED, vagy FD prefix, akkor az első két) byte-jának az olvasása "M1" hozzáférés, aminél a késleltetést külön lehet szabályozni. Az "ld a, (hl)" normál RAM-ban futva és az alapértelmezett késleltetésekkel 8 ciklus, mert 4+1 az utasítás, és 3 az adatbyte olvasása. A video memória és a NICK I/O portok (080h-08fh) elérésekor a NICK busz órajeléhez kell szinkronizálni (~890 kHz), és ez 1 és 5 Z80 ciklus közötti késleltetést jelenthet; a 0bfh portnak ilyenkor nincs jelentősége.

Quote
Es hogy meg mik befolyasolhatjak a futasi idot, pld. emlexem amigan az sem volt mindegy hogy milyen kepernyouzemmod volt bevaltva, ilyesmikre gondolok, hogy EP- n ezek mik ?

Ennek az EP esetén nincs jelentősége, azaz nem lesz gyorsabb a gép (a video RAM hozzáférés sem) ha az egész képernyőn csak keret van.

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13521
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 2.0.0.8 Firefox 2.0.0.8
    • View Profile
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #72 on: 2007.October.29. 20:17:33 »
A Dave chip leírásában (BFH port).
Az EXOS alapban azt állítja be, hogy minden utasításnál 1 várakozás. Be lehet azt is állítani, hogy minden memória hozzáférésnél legyen 1 várakozás. Saját programban az a célszerû, hogy ne legyen várakozás :-)
A videó RAM-ról nincs pontos adat, az úgy mûködik, hogy a Z80-nak elsõbbségadás kötelezõ táblája van :-)

A Nick minden üzzemódban ugyanannyit olvas, kivétel ha LORES grafikát használsz, akkor feleannyi pixeladat kell.

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13521
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 2.0.0.8 Firefox 2.0.0.8
    • View Profile
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #73 on: 2007.October.29. 20:44:06 »
azaz nem lesz gyorsabb a gép (a video RAM hozzáférés sem) ha az egész képernyõn csak keret van.
Hmm... az egyszerûség kedvéért a Nick akkor is olvas, amikor nem kell neki az adat?
És mi történik, ha a Nick 83H portjának nullázuk a 6-os bitjét? (b6  Set for normal operation. Clear to inhibit clocking of the line parameter counter.)
Azonkívûl, hogy ilyenkor nincs kép :-) vajon gyorsabb-e a video RAM?

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux (Suse) Linux (Suse)
  • Browser:
  • Firefox 2.0.0.6 Firefox 2.0.0.6
    • View Profile
Re: Assembly programozás
« Reply #74 on: 2007.October.30. 00:46:02 »
És mi történik, ha a Nick 83H portjának nullázuk a 6-os bitjét? (b6  Set for normal operation. Clear to inhibit clocking of the line parameter counter.)
Azonkívûl, hogy ilyenkor nincs kép :-) vajon gyorsabb-e a video RAM?

Egy egyszerű teszt alapján úgy tűnik, ilyenkor sem gyorsabb.