Welcome, Guest. Please login or register.


Author Topic: Tegyük rendbe az EP programokat! (Read 377223 times)

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Tegyük rendbe az EP programokat!
« Reply #555 on: 2010.August.28. 00:45:47 »
Ennek nem biztos, hogy van jelentősége, mert a képfrissítés helye egyébként is folyamatosan elcsúszik a 37.5 Hz miatt, az pedig talán nem lényeges, hogy például a hang lejátszás a képernyő melyik pontján történik :) De ha mégis fontos a megszakítások helye, akkor egyszerűen csak egy LPB-ben kell engedélyezni a megszakítást, és ezt az LPB-t váltogatni a megszakítási rutinból. Ez a művelet még mindig gyorsabb, mint az 1 kHz-es megszakítás.

A szinkronizálásra esetleg az is megoldás lehet, hogy a 3 megszakítás közül 2 csak egy sor hosszúságú az LPT-ben, egy viszont 103 soros (a megszakítás a lefutó élnél történik, azaz amikor az LPT-ben a mód byte 7. bitje már nincs beállítva). Így a "nyújtott" megszakítás LPB(k) előtt csak 1 olyan sor van, ahol a megszakítás bit nincs beállítva, és ha a rutin elég lassú (pl. SOUND: hívása), akkor a B4h port 4. bitjének a tesztelésével fel lehet ismerni, melyik megszakítás történt. Tehát az LPT-ben ez van:
  - 1 sor megszakítás
  - 103 sor nem megszakítás
  - 1 sor megszakítás (ez lesz a "fő" 50 Hz-es megszakítás, illetve ahol a SOUND: hívása történik)
  - 1 sor nem megszakítás
  - 103 sor megszakítás
  - 103 sor nem megszakítás
A megszakítási rutin pedig egy 3-ról indított számlálót csökkent; ha ez lefutna 0-ra, akkor végrehajtja az 50 Hz-es megszakítást (SOUND:, stb.), majd teszteli a B4h port 4. bitjét: ha ez 1, akkor a számláló szinkronban van, és 3-ról indulhat újra, egyébként 2-ről.
Nem tudom, hogy ez a gyakorlatban mennyire használható megoldás (én még nem használtam), illetve amint említettem, lehet, hogy a szinkronizálás valójában nem is fontos.
« Last Edit: 2010.August.28. 00:51:54 by IstvanV »

Offline Ferro73

  • EP lover
  • *
  • Posts: 980
  • Country: hu
Re: Tegyük rendbe az EP programokat!
« Reply #556 on: 2010.October.17. 19:35:59 »
Kijavitottam nagyábol a birds and bees-t csak nem tudom az externállokat ellenörizni még nem jöttem rá.
irjátok meg mit kellene javitani rajta
3 változatot csináltam 1 sima 128-as verziot és 2 E64-es változatot de azok mintha lassuak lennének
mellékelem a betöltök .asm -jét is. Ha valaki rájön a hibára ossza meg velem.

Offline Lacika

  • EP addict
  • *
  • Posts: 3198
  • Country: hu
    • http://www.ep128.hu
Re: Tegyük rendbe az EP programokat!
« Reply #557 on: 2010.October.17. 21:54:20 »
Kijavitottam nagyábol a birds and bees-t csak nem tudom az externállokat ellenörizni még nem jöttem rá.
irjátok meg mit kellene javitani rajta
3 változatot csináltam 1 sima 128-as verziot és 2 E64-es változatot de azok mintha lassuak lennének
mellékelem a betöltök .asm -jét is. Ha valaki rájön a hibára ossza meg velem.

Milyen hibák lettek kijavítva?
A két Ep64-es változat miben különbözik?

Offline Ferro73

  • EP lover
  • *
  • Posts: 980
  • Country: hu
Re: Tegyük rendbe az EP programokat!
« Reply #558 on: 2010.October.18. 06:01:10 »
Igazság szerint ujra lett átirva ZX-röl hang, irányitás, attributum, cheat egyszoval minden a betöltö és az EXT joy /benne van kikell probálni/  kivételével 100%-os lehet

a 2 db E64-es abban különbözik hogy az LPT SYNC más arra gondoltam,hogy igy talán gyorsithatom a programot mivel a 128-as gyorsabb mint az E64-es. A 128-as és az E64 pedig csak a betöltöben különböznek ha azt rendesebben meglenne irva talán valamivel gyorsabb lenne, csak én nem jöttem rá hol hibáztam.

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9928
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Tegyük rendbe az EP programokat!
« Reply #559 on: 2010.October.18. 15:01:54 »
Arra gondoltam, a kis egyszerû Hungry Creature címû játékomat is ki lehetne javítani, túl sok pontszámnál átvált a pontszám elõjele minuszra (a Zzzip egyik sajátossága miatt).
Megpróbáltam az eredeti basic programot elõkeresni, de csak olyat találtam, ami Zzzippelve nem teljesen azonos az ep128.hu-n levõvel. Bár a méretre teljesen azonos vele, de vannak eltérések a fájlokban (de lehet, hogy csak egy eltérés). (De az is lehet, ezek az eltérések azért vannak, mert az újrafordításkor más konfigot használtam?)
Mellékelem most a két Zzzippelt programot, amik között nem tudom, mi a különbség (EREDETI.RAR és NEM EREDETI.RAR, elõbbi van az ep128.hu-n is). Ezekbõl a programokból kimaradtak a SET CHARACTER és ENVELOPE NUMBER utasítások, hogy a Zzzipbe beleférjenek (ezek nélkül "furcsa" a kép és nincs hang), ezeket egy külön betöltõben adtam meg, a betöltõt is mellékelem (LOADER.BAS), amihez a végén még meg kell adni a következõ file nevét (vagy pedig EPfileIO confignál egyszerûen csak kiválasztani). Ha valaki rájönne, mi a különbség a két lefordított zzzipes program között, szóljon!
(A zzzippelt változatoknak a .zip fájlja az elsõ.)

Ja, és mellékelem a "zzzippeletlen" basic változatot, amit megtaláltam (HUNCREA1.BAS); ebbõl fordítottam, ami a NEM EREDETI.RAR-ban van. Ezt majd kielemezhetnénk a BASIC topikban, hogy mit lehetne benne jobban megcsinálni...

Ami a program kijavítását illeti: kérdés, hogy hány pontot kapjunk egy pogácsa befalásáért. Eddig 10 volt, ami sok volt. Legyen helyette 5? vagy 1? vagy 2? És egyébként lehet, hogy a pályánként 500 pogácsa, amit meg kell enni, kicsit sok, bár az utolsó szintek meg túl könnyûek lennének, ha kevesebb lenne.

Mondjuk nem tudom, rajtam kívül valakit érdekel-e ez.
« Last Edit: 2010.October.18. 15:14:28 by szipucsu »
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Tegyük rendbe az EP programokat!
« Reply #560 on: 2010.October.18. 16:14:44 »
Nem tudom, ennek hasznát lehet-e venni, de itt egy próbálkozás EXOS és EP64 kompatibilis átiratra:
  [ Guests cannot view attachments ]
  [ Guests cannot view attachments ]
  [ Guests cannot view attachments ]
  [ Guests cannot view attachments ]
  [ Guests cannot view attachments ]
  [ Guests cannot view attachments ]
  [ Guests cannot view attachments ]
  [ Guests cannot view attachments ]
« Last Edit: 2010.October.18. 17:47:04 by IstvanV »

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9928
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Tegyük rendbe az EP programokat!
« Reply #561 on: 2010.October.18. 16:40:52 »
Ki akartam javítani a Hungry Creature-t, de listázás közben egyszer csak megállt, egy üres sor az utolsó, amit kiírt. Ez mitõl lehet  :?: Valami IS-BASIC bug? Néha mintha nem szerette volna az IS-BASIC a nagyon hosszú basic programokat...

Ha kiadunk pl. egy LIST 8620- parancsot, kilistázódik a többi is, de itt valami nem stimmel...  :(
Pedig éppen kijavítottam, hogy szintenként 500 helyett csak 400 bogyót kelljen megenni és hogy bogyónként csak 2 pontot kapjunk 10 helyett. Van egy sejtésem, hogy a belejavítás okozta a galibát.
Snapshot mellékelve. [ Guests cannot view attachments ]
« Last Edit: 2010.October.18. 16:44:35 by szipucsu »
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Lacika

  • EP addict
  • *
  • Posts: 3198
  • Country: hu
    • http://www.ep128.hu
Re: Tegyük rendbe az EP programokat!
« Reply #562 on: 2010.October.18. 18:02:00 »
Ha valaki rájön a hibára ossza meg velem.

A külső botkormányok nem mennek, csak a billentyűzet és a belső joy.

Offline Lacika

  • EP addict
  • *
  • Posts: 3198
  • Country: hu
    • http://www.ep128.hu
Re: Tegyük rendbe az EP programokat!
« Reply #563 on: 2010.October.18. 18:15:20 »
Nem tudom, ennek hasznát lehet-e venni, de itt egy próbálkozás EXOS és EP64 kompatibilis átiratra:

Ez késznek számít? Berakjam az Ep64 kompatibilis programokhoz?

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14734
  • Country: hu
    • http://enterprise.iko.hu/
Re: Tegyük rendbe az EP programokat!
« Reply #564 on: 2010.October.18. 18:23:54 »
Ki akartam javítani a Hungry Creature-t, de listázás közben egyszer csak megállt, egy üres sor az utolsó, amit kiírt. Ez mitõl lehet  :?:
Ha nem szándékosan POKE-ltál bele a programkódba, akkor megsérült a fájl.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14734
  • Country: hu
    • http://enterprise.iko.hu/
Re: Tegyük rendbe az EP programokat!
« Reply #565 on: 2010.October.18. 18:32:14 »
Nem tudom, ennek hasznát lehet-e venni, de itt egy próbálkozás EXOS és EP64 kompatibilis átiratra:
Jól néz ki! A beszélõkéjét fel lehetne deríteni? Currah MicroSpeech-et használ, aminek ugyanaz a procija mint a SpeakEasy-nek!

Offline Ferro73

  • EP lover
  • *
  • Posts: 980
  • Country: hu
Re: Tegyük rendbe az EP programokat!
« Reply #566 on: 2010.October.18. 19:46:43 »
IsvanV a / birdsbee.s /-t  mivel forditod ****.COM -á

akkor javitom az EXTJOY-t, hogy tudom ellenörizni. Esetleg a keyboard map joy irány és kétszer a kivánt billentyü?

Tudja-e valaki miért lassabb az E64 mint a 128-as program ugyan az a programkód.

A ZXjáték elején a zene alatt van border villogás én azt nem raktam bele de még belerakhatom.


Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Tegyük rendbe az EP programokat!
« Reply #567 on: 2010.October.18. 20:03:52 »
IsvanV a / birdsbee.s /-t  mivel forditod ****.COM -á

sjasm kell hozzá, ez egy PC-s assembler, amely megtalálható például a letöltéseknél az "EPvideoconv" csomagban (Windows és Linux verzió is). A használata egyszerű:
  sjasm birdsbee.s birdsbee.com
Ez a parancs a fordítás mellett létrehoz egy "birdsbee.lst" file-t is, ami hasznos lehet a hibakereséshez.
A fordításhoz kell egyébként a zxchrset.bin file is, amelyre a forráskód (incbin direktívával) hivatkozik.

A teljes fordítás (azaz .prg file létrehozása is) így történik:
  - lefordítani a birdconv.s file-t birdconv.bin-re
  - az ep128emu-t Spectrum módban indítani, és a "Working directory"-t (Alt+F) beállítani arra a könyvtárra, ahol az előbb létrehozott .bin file van
  - a debuggerben betölteni és elindítani a birdconv.lua file-t
  - megnyitni és betölteni a .tzx file-t
  - amikor automatikusan megjelenik a debugger ablak, akkor - ha nem volt hiba - kész van a .scr és .prg file

Quote
akkor javitom az EXTJOY-t, hogy tudom ellenörizni.

Az 1Fh I/O port olvasását kell megkeresni (valójában a joystick 00h és 1Fh között minden porton megtalálható Spectrumon, de ez a "szabványos" port, és a programok általában ezt használják), és pédlául a birdsbee.s-ben található "scanJoystick" rutin hívásával helyettesíteni:
Code: ZiLOG Z80 Assembler
  1. scanJoystick:
  2.         push  bc
  3.         ld    bc, 0500h
  4. .l1:    ld    a, 5
  5.         sub   b
  6.         out   (0b5h), a
  7.         in    a, (0b6h)
  8.         rrca
  9.         rl    c
  10.         ld    a, 10
  11.         sub   b
  12.         out   (0b5h), a
  13.         in    a, (0b6h)
  14.         or    0feh
  15.         and   c
  16.         ld    c, a
  17.         djnz  .l1
  18.         pop   bc
  19.         xor   1fh
  20.         ret

Quote
Tudja-e valaki miért lassabb az E64 mint a 128-as program ugyan az a programkód.

EP64-en az egész RAM video memória (FCh-FFh szegmens), ami lényegesen lassabb a normál RAM-nál (a legrosszabb esetben akár több, mint kétszer).
« Last Edit: 2010.October.18. 20:09:01 by IstvanV »

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9928
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Tegyük rendbe az EP programokat!
« Reply #568 on: 2010.October.18. 22:07:41 »
Ha nem szándékosan POKE-ltál bele a programkódba, akkor megsérült a fájl.
Hát ez rendkívül érdekes... Betöltöttem az eredeti fájlt és kilistáztam, nem volt gond.
Majd módosítottam két sort, megint kilistáztam és újra elakadt.  :shock:

Szerintem próbáljátok meg Ti is: Töltsétek be ezt [ Guests cannot view attachments ] , listázzátok ki a 8600-ás sortól, elõször rendben kilistázza. Még egyszer listázzátok ki a 8600-ás sortól, és a 8610-es sornál leáll. De csak akkor, ahogy látom, ha a listázás gyorsítására az ALT+W-t használjátok az emulátorban, hogy teljes sebességgel menjen. Akkor ez emulátor hiba lehet? Vagy a PC hibája? Eddig még sosem okozott hibát az ALT+W.

UI: De mégsem az ALT+W okozza, vagy nem csak az okozhatja. Kipróbáltam, ha a 370-es sorban az 500-at átírom 400-ra, valamint a 3730-as sorban a LET SCO=SCO+10-ben a 10 helyett 2-t írok és utána listázom a 8600-ás sortól, akkor is elakad a listázás.
UI2: Tovább próbálgattam, a hiba akkor jelentkezik, ha egyszer már végig kilistáztam a programot.
« Last Edit: 2010.October.18. 22:17:33 by szipucsu »
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14734
  • Country: hu
    • http://enterprise.iko.hu/
Re: Tegyük rendbe az EP programokat!
« Reply #569 on: 2010.October.18. 22:24:07 »
Szerintem próbáljátok meg Ti is:
Nálam semmi baja  :oops: