Welcome, Guest. Please login or register.


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

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13534
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 20.0 Firefox 20.0
    • View Profile
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #480 on: 2013.May.04. 20:15:19 »
Quote from: Z80System
Van mondjuk kb. 2000H üres terület az FF szegmens alsó végén ?
Nincs.

Offline lgb

  • EP addict
  • *
  • Posts: 3497
  • Country: hu
  • æðsta yfirmaður
  • OS:
  • Linux Linux
  • Browser:
  • Chrome 27.0.1453.73 Chrome 27.0.1453.73
    • View Profile
    • http://lgb.hu/
Re: Assembly programozás
« Reply #481 on: 2013.May.04. 20:17:40 »
Quote from: Z80System
Alapból kb. mennyi hely van szabadon hagyva az FF szegmensből aza exdos által ? Tehát ha nem nyitottunk meg különösebben semmit, csak úgy elindult a gép, esetleg egy exdos vagy epdos épp fut ?Van mondjuk kb. 2000H üres terület az FF szegmens alsó végén ?

Tipp: exos 22-es funkcio? Az megmondja, bar ha jol tudom akkor az FF "elfogyasa" eseten folytatodik masik szegmensben a dolog, es akkor a boundary ott ertelmezett, az FF szegmens meg ugye total foglalt. Amugy is, emlekezven Zozo intelmeire: nem illik csak ugy system szegmensbe irni, hanem az exos boundary dolgokra illene odafigyelni. Ezt mondjuk nem tudom, hogy mi van, ha meg lenne szabad szegmens, de en a shared szegmensnek hasznalnam megis pl az FF-et, mert nem akarok "elpazarolni" egy uj szegmenst, hogy allokaljam, ha csak kis terulet kell. Mert ha jol ertem, set exos boundary nem engedelyezett, ha nincs shared szegmens :(

Probaltam osszeszerencsetlenkedni egy ilyen kis egyszerut, ami vegulis az exos 22 es 20 hivas eredmenyet jeleniti meg. Lehet, nincs sok ertelme (vagy akar el is szurtam vmit) de legalabb gyakorlok :)
« Last Edit: 2013.May.06. 16:30:44 by lgb »

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 26.0.1410.64 Chrome 26.0.1410.64
    • View Profile
Re: Assembly programozás
« Reply #482 on: 2013.May.05. 12:38:33 »
Á, hát bakker van.

4 byte széles (12 pixel magas) block -ot akarok kimásolni (egy sprite lenne, mindenféle durva megkötéssel, már maga a méret is gyökér, pláne hogy csak simán kimásolni fogom, így majd nem mehetnek 3 pixelnél közelebb egymáshoz), szóval 4 X 12 bájtos block -ot akarok kimásolni a képre, és próbáltam gyorsítani pop/push -al, gyakorlatilag pont ugyanannyi lett, semmit nem gyorsult ... :(

Szóval lehet hogy a pop/push gyorsít, de nem ilyen rövid szakaszokban másolva.

A fenti példában a sima ldi tartja vele a lépést.

Közben a scanline -jaimat meg 100H -s határra tettem a függőleges (scanline) címszámítás egyszerűsítéséhez/gyorsításához, ami azt eredményezi, hogy a scanline -jaim között viszonylag sok "üres" byte van, ahova a sprite/grafikus adatokat szándékozom tenni, viszont így most azok is a video memóriában vannak, tehát a videó memória lassítása a grafikus adat olvasásakor is benne van a képletben, nem csak a képre íráskor.

Komoly overhead lehet a video memória lassítása ... ? Az csak ilyen 10%, vagy pedig videó memóriából fele sebességgel olvas, mint sima memóriából ?

Persze mindíg az a legjobb, ha az ember kipróbálja, de ki tud olyan sok verziót kipróbálni ...
Z80 System

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 18.0 Firefox 18.0
    • View Profile
Re: Assembly programozás
« Reply #483 on: 2013.May.05. 12:44:13 »
Quote from: Z80System
Komoly overhead lehet a video memória lassítása ... ? Az csak ilyen 10%, vagy pedig videó memóriából fele sebességgel olvas, mint sima memóriából ?
Több egymást követő LDI utasítás átlagos sebessége:
- normál RAM -> normál RAM: 16 ciklus
- normál RAM -> video RAM: ~18 ciklus
- video RAM -> video RAM: ¬22.5 ciklus

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 26.0.1410.64 Chrome 26.0.1410.64
    • View Profile
Re: Assembly programozás
« Reply #484 on: 2013.May.05. 13:05:09 »
Kemény volt ez a mikrovilág ... Egyenlőre úgy tűnik, hogy az 50 Hz -es keretekbe majd mondjuk 6-10 ilyen 13X13 ( :) ! ) pixeles ellenség, egy főhős, néhány lövés, meg pár csillag (olyan kevés, hogy még nem is tudom lesz -e csillagfüggöny hatása, vagy csak pár kóricáló pixel lesz) fog kb. beleférni. Max ...

Pedig mindenképp olyan vackot akartam volna, ahol tetszőlegesen beállítható a frame szám, mert képes 50 Hz -en is menni ...

Lehet két edition kell majd belőle, egy olyan ahol fenti paraméterekkel tetszőlegesen állítható az FPS, és egy olyan amit mondjuk 25 FPS -ről indulva lehet csak lassítani majd, de abban akkor már lehet is valami a képen ...

És akor még sehol nincsenek a hangeffektek, pláne hogy valami (nagyon rossz minőségű), de digi hangokat (nem zenét, csak lövéshangok, ilyesmik) gondoltam volna, de ha ezt még beszaggatom valami mittudomén 1- 8Khz -el, hogy valami rekedtmedve hangok lehessenek, azzal sztm le is zúznám ezt a maradékot is ...

Hájjájjájj ... :)
« Last Edit: 2013.May.05. 13:33:10 by Z80System »
Z80 System

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 26.0.1410.64 Chrome 26.0.1410.64
    • View Profile
Re: Assembly programozás
« Reply #485 on: 2013.May.05. 13:26:43 »
Na így állunk ...

A kék sáv a "sprite" ideje, ami már tartalmazza a törlést is, meg a kimásolást is.
Z80 System

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 26.0.1410.64 Chrome 26.0.1410.64
    • View Profile
Re: Assembly programozás
« Reply #486 on: 2013.May.05. 13:29:45 »
Az az okkeros, sárgás szín meg a billentyűzetbeolvasás 10 port irása/olvasása ... :) Szánalom, komolyan mondom ...
Z80 System

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 26.0.1410.64 Chrome 26.0.1410.64
    • View Profile
Re: Assembly programozás
« Reply #487 on: 2013.May.05. 14:47:22 »
Na, de azért fog ez működni ... majd valahogy összetvíkelem.
Z80 System

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 26.0.1410.64 Chrome 26.0.1410.64
    • View Profile
Re: Assembly programozás
« Reply #488 on: 2013.May.05. 15:32:42 »
Érdekes, hogy régről nem emlékszem erre az érzésre, ami most kezd kialakulni a géppel kapcsolatban, hogy az ember (lassan persze, de régen egyáltalán nem) elkezdi érezni, hogy mennyi az a 64Kb, mire elég, mire nem, meg a teljesítmény, meg az egész hardver.

Mikor az ember mikróra programozik az egész vasat használja, ahogy van. Nem csak az ismeretlen nagy teljesítményű rendszer egy kis részét használja 127 áttételen keresztül, egy kisebb feladat megoldására, hanem mint egy citromból, facsarja ki az ember a teljes anyagot, ami benne van.

Ez egész más érzés mint ami most van, és érdekes, hogy régen nem emlékszek erre az "átlátásra", egyrészt az info kevesebb volt, másrészt az ember mindíg azt hitte, hogy csak ő nem tud megvalósítani ezt vagy azt, valahogy nem látta az ember, hogy a 64 ezer az "pontosan mennyi", az olyan őrült soknak tűnt mindíg, aztán mégsem volt elég soha semmire ... :)

Vagy csak már elfelejtettem, hogy is volt ez ...
« Last Edit: 2013.May.05. 15:47:31 by Z80System »
Z80 System

Offline geco

  • EP addict
  • *
  • Posts: 5431
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 17.0 Firefox 17.0
    • View Profile
Re: Assembly programozás
« Reply #489 on: 2013.May.06. 10:05:09 »
Quote from: Z80System
Az az okkeros, sárgás szín meg a billentyűzetbeolvasás 10 port irása/olvasása ... :) Szánalom, komolyan mondom ...
A sprite kirakásos kék sáv jónak tűnik nagyon, a billentyűolvasásos sárga egy picit soknak.

Offline lgb

  • EP addict
  • *
  • Posts: 3497
  • Country: hu
  • æðsta yfirmaður
  • OS:
  • Linux Linux
  • Browser:
  • Chrome 27.0.1453.73 Chrome 27.0.1453.73
    • View Profile
    • http://lgb.hu/
Re: Assembly programozás
« Reply #490 on: 2013.May.06. 10:57:03 »
Jut eszembe a fentebb mellekelt idetlen "sysinfo" dolgom kapcsan: van EP-re valami komolyabb cucc sysinfo kategoriaban? Mondjuk lehetne benne CPU sebesseg meres esetleg teszt is (CMOS/NMOS, ami ugye EXOS2.3-ban hmm 2.4-ben? is van), memoria, bovitok listaja, esetlegesen I/O sebesseg teszt mondjuk disk read/write cimszo alatt, stb stb stb.

Offline szipucsu

  • EP addict
  • *
  • Posts: 8102
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 23.0 Firefox 23.0
    • View Profile
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Assembly programozás
« Reply #491 on: 2013.August.23. 12:58:39 »
Az ASMON-ban R gombbal betöltünk file-t. Ha nem tudjuk a file hosszát, pl. BFFF-et adunk meg END-nek, és kiírja End of file-lal az utolsó címet. Mentésig még módosítunk ezt-azt, de addigra eltűnik az utolsó cím a képernyőről, tehát fel kell írni. Nincs valami más lehetőség, hogy később visszanézzük az utolsó címet, hogy meddig kell menteni az S-sel?

(Nem tudom, ebbe a topikba illik-e ez leginkább.)
SOUND SOURCE 3,STYLE 16,LEFT 16,RIGHT 64,SYNC 2
SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 2
SOUND PITCH 25,SYNC 2
Videos

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13534
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 23.0 Firefox 23.0
    • View Profile
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #492 on: 2013.August.23. 13:03:56 »
Fel kell írni egy darab papírra, akkor vissza lehet nézni :-)
Vagy megnézni az eredeti fájl méretét, és akkor ki lehet számolni.

Offline szipucsu

  • EP addict
  • *
  • Posts: 8102
  • Country: hu
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 23.0 Firefox 23.0
    • View Profile
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Assembly programozás
« Reply #493 on: 2013.August.23. 13:14:27 »
Quote from: Zozosoft
Fel kell írni egy darab papírra, akkor vissza lehet nézni :-)
Én így a XXI. században papír helyett Printscreen-t használtam. :ds_icon_cheesygrin:

Azt hittem, az Asmon is vissza tudja nézni. Ezek szerint nem.
SOUND SOURCE 3,STYLE 16,LEFT 16,RIGHT 64,SYNC 2
SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 2
SOUND PITCH 25,SYNC 2
Videos

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 30.0.1599.101 Chrome 30.0.1599.101
    • View Profile
Re: Assembly programozás
« Reply #494 on: 2013.October.26. 18:33:30 »
Hát a kérdésem alig assembly jellegű, de azért ide írom.

Én ugye most PC -n fejlesztek (imitálom), és egy PC fordítóval fordítok EP binárist, majd azt az emulátorba töltve tesztelem.

Namost a fordítóm egy C fordító, ami tud inline assebly -t ugyan, és a kód nagyja abban fog készülni, de a C -t is használnám, a nem sebesség kritikus részekhez.

Csakhogy mintha valami baromi nagy lenne a fordított kód méretet tekintve.

Tud esetleg valaki valami jó kis C->z80 tárgykód fordítót ?
Z80 System