Welcome, Guest. Please login or register.


Author Topic: Quadrillion (Read 42739 times)

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 58.0 Firefox 58.0
    • View Profile
Re: Quadrillion
« Reply #195 on: 2018.May.22. 16:38:35 »
Tömörebb szöveg formátum:
* quadcbm2.zip (27.57 kB - downloaded 65 times.)

Ez a csomagolt program méretet ugyan növeli, viszont néhány száz byte-ot megtakarít futás közben, ha az esetleg hasznos lenne. Talán még hátrány lehet, hogy az üzeneteknél először csak egy fekete téglalapot rajzol, majd arra írja a szöveget, bár nem tudom, ez mennyire észrevehető különbség. Lehetnének még csak a szóközök RLE tömörítettek, a megtakarítás nagyobb részét egyébként is az adja.
« Last Edit: 2018.May.22. 16:44:40 by IstvanV »

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 58.0 Firefox 58.0
    • View Profile
Re: Quadrillion
« Reply #196 on: 2018.May.22. 17:02:09 »
a másikon meg hasonlóan a tiedhez, beépítve, azt reméltem, hogy az ilyen pályaadatot jobban tömöríti, de vagy elszúrtam valamit, vagy nem tudom, de nagyobb lett az így csomagolt adat, mint az eredeti +4 formátum.

Ez a tömörített formátumtól függhet:

                                                    | Plus/4 RLE | Tömörítetlen
----------------------------------------------------+------------+-------------
b90l,0011223344556677,34,3456789a,3456789a          |   746 byte |     841 byte
bg0l,123456789abcde,0123,01234567,0123456788888888  |   761 byte |     755 byte
fg1l,123456789abcde,23,23456789,456789ab            |   756 byte |     767 byte
-m4                                                 |   746 byte |     733 byte
----------------------------------------------------+------------+-------------


Tehát csak az elsőnél éri meg igazán a Plus/4-es formátum, figyelembe véve, hogy bonyolultabb kód is kell a kezeléséhez. Bár az is lehet, hogy a nagyobb de egyszerűbb pálya adathoz opitimális kódolás ront a program többi részének a tömörítésén. Mindenesetre ha fontos a memória futás közben, akkor egyértelműen az RLE-s módszer a jobb, 3200 helyett 1305 byte. :)
« Last Edit: 2018.May.22. 17:26:27 by IstvanV »

Offline geco

  • EP addict
  • *
  • Posts: 5431
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Firefox 60.0 Firefox 60.0
    • View Profile
Re: Quadrillion
« Reply #197 on: 2018.May.22. 18:03:31 »
Köfi mindent :)

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 58.0 Firefox 58.0
    • View Profile
Re: Quadrillion
« Reply #198 on: 2018.May.22. 18:34:16 »
Még egy próbálkozás pálya csomagolásra, minden pálya (160 byte) külön tömörítve -m6:b90l,123456,i,l,07 formátumban. Természetesen hatékonyabb lenne több pálya egy csomagban, de így is összesen 840 byte lett. Hátránya, hogy kell hozzá egy külön rutin, az alábbi példa 78 byte, de talán még lehetne egy keveset javítani rajta:

* lvdecomp.s (1.72 kB - downloaded 70 times.)

A pálya címek táblázata is foglalna némi helyet, mivel most már nem fix a méret. Még azt lenne érdemes tesztelni, hogy megérné-e a levelBlockBuffer formátumában tárolni a pályát, és esetleg a bontható téglák számát is beépíteni az adatba. Valószínűleg egyik sem jelentene számottevő különbséget.

Offline geco

  • EP addict
  • *
  • Posts: 5431
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Firefox 60.0 Firefox 60.0
    • View Profile
Re: Quadrillion
« Reply #199 on: 2018.May.22. 18:49:10 »
Még egy próbálkozás pálya csomagolásra, minden pálya (160 byte) külön tömörítve -m6:b90l,123456,i,l,07 formátumban. Természetesen hatékonyabb lenne több pálya egy csomagban, de így is összesen 840 byte lett. Hátránya, hogy kell hozzá egy külön rutin, az alábbi példa 78 byte, de talán még lehetne egy keveset javítani rajta:

A pálya címek táblázata is foglalna némi helyet, mivel most már nem fix a méret. Még azt lenne érdemes tesztelni, hogy megérné-e a levelBlockBuffer formátumában tárolni a pályát, és esetleg a bontható téglák számát is beépíteni az adatba. Valószínűleg egyik sem jelentene számottevő különbséget.
Hm, egyelőre még magam se tudom mi legyen ;) , egyelőre az RLE visszaállítása szimpatikus, és ha nagyon megszorulok, akkor csomagolt adat, és akkor jó lenne ugyanazt a csomagolást használni mindenhol, de ez egyelőre csak az elképzelésem, még az is lehet, hogy durvulás lesz a vége, mint a Bricky Prise-ban, ahol két csomagolási mód is van aktívan használva :)

Megtaláltam a két említett hibát, meglepően gyorsan ment :)
A tégla tologatása nem az ért volt rossz, mint amikre tippeltem, hanem azért, mert kifelejtettem a második tégla mozgás ellenőrzésénél az LD A,(HL)-t az OR A előtt, így az első téglát ellenőrizte ott is :ds_icon_cheesygrin: , ahogy tesztelgettem 2-nél több nem mozog egyszerre, viszont ha már ott jártam, megszüntettem a második adatkupac mozgatását.
A pixel hiba a sarokban is igen triviális volt, a képernyő törlése egy bájttal rövidebb volt, így a pixel mód utolsó bájtjára a szöveges mód első törlőbájtja került :ds_icon_cheesygrin:

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 58.0 Firefox 58.0
    • View Profile
Re: Quadrillion
« Reply #200 on: 2018.May.22. 19:03:30 »
és ha nagyon megszorulok, akkor csomagolt adat, és akkor jó lenne ugyanazt a csomagolást használni mindenhol

Az valóban elegánsabb, bár a külön csomagolt pályákon (ha az nem is feltétlenül ideális) a "normál" formátumok nem túl hatékonyak, a Bricky Prise-nál is több mint 1 KB lenne megtakarítható egyedi m6-os megoldással.

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 58.0 Firefox 58.0
    • View Profile
Re: Quadrillion
« Reply #201 on: 2018.May.22. 20:15:20 »
Csak azért fontos egyelőre, hogyha esetleg digi hang is kerül be ( nem tudom bele fog-e férni a sebességbe a végén, még tervezek pár lassító eksönt :D ), akkor legyen hely számára a fixen belapozott szegmenseken, egyelőre úgy néz ki, hogy erre legesélyesebb a page0.

Szerintem digitális hang helyett lehetne fejleszteni a DAVE effektusokon, ami most van a programban, az 4K mérethez készült, tehát meglehetősen kezdetleges. Lehetnének bonyolultabb és/vagy jobb minőségű (akár 1 kHz-es) burkológörbék, vagy akár több csatornás effektusok ha nem lesz játék közben zene, az még mindig kevesebb CPU-t és memóriát fogyaszt a hangminta lejátszásnál.

Offline geco

  • EP addict
  • *
  • Posts: 5431
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Firefox 60.0 Firefox 60.0
    • View Profile
Re: Quadrillion
« Reply #202 on: 2018.May.22. 21:14:43 »
Az valóban elegánsabb, bár a külön csomagolt pályákon (ha az nem is feltétlenül ideális) a "normál" formátumok nem túl hatékonyak, a Bricky Prise-nál is több mint 1 KB lenne megtakarítható egyedi m6-os megoldással.
Az 1k jelentős mennyiség lehet, abba sok apróbb dolog beleférhet, simán lehet az a vége, hogy két m6 mód lesz használatban, számomra most nem fontos, hogy a betöltendő fájl mérete legyen a lehető legkisebb, a lényeg (egyelőre :D ) az, hogy ne pazaroljak majd helyet betöltés után.
Szerintem digitális hang helyett lehetne fejleszteni a DAVE effektusokon, ami most van a programban, az 4K mérethez készült, tehát meglehetősen kezdetleges. Lehetnének bonyolultabb és/vagy jobb minőségű (akár 1 kHz-es) burkológörbék, vagy akár több csatornás effektusok ha nem lesz játék közben zene, az még mindig kevesebb CPU-t és memóriát fogyaszt a hangminta lejátszásnál.
Teljesen jó ötlet, 1KHz-es burkológörbével durva dolgokat lehet varázsolni, no meg Szipucsu is hozott ki olyan hangokat Dave-ből "Midizés" közben, hogy csak lestem, és le merem fogadni, hogy valami már motoszkál is a fejedben :D

Ennyi mára:
Az említett hibák javítva, a 3 karakterkészlet a kis felbontáson is megvalósítva, igaz váltás után a számok nem frissülnek, csak akkor ha ott változás is történik, nekem ez nem tűnt zavarónak, de ha az, befrissítem azt is, ja és a középső nagy doboz tartalma se frissül váltáskor, csak a legközelebbi kiíráskor.
A raster átmenet befeketíti a hátteret, a másiknál egyelőre csak sötétítettem, ha zavaró így is, akkor csökkentem a használt színeket 7-ről 6-ra, vagy olyan árnyalatokat keresek, amik jól működnek feketével, egyelőre ez utóbbi a szimpatikusabb. Szerintem ennyi.

Attachment removed
« Last Edit: 2018.May.26. 10:57:23 by geco »

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 58.0 Firefox 58.0
    • View Profile
Re: Quadrillion
« Reply #203 on: 2018.May.22. 22:53:02 »
Hátránya, hogy kell hozzá egy külön rutin, az alábbi példa 78 byte, de talán még lehetne egy keveset javítani rajta:

Most már 74, de ez sem tűnik tökéletesnek:
* lvdecomp2.s (1.74 kB - downloaded 64 times.)

Offline szipucsu

  • EP addict
  • *
  • Posts: 8102
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 60.0 Firefox 60.0
    • View Profile
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Quadrillion
« Reply #204 on: 2018.May.22. 23:41:22 »
Hú, én ezt már alig tudom követni, pörögnek ezerrel a topikok itt, Banana, midizés, meg ez is. Azok az 1KHz-es hangok biztos érdekesek lehetnek. A C64-es játék közben "fúj a szél", ilyet a zajcsatornával a 11 (vagy akár 15, 17) bites polinomszámlálóval mi is tudnánk csinálni, sztereóban. De variálni is lehet akár a polinomszámlálókat, mint a cintányéroknál, pl. amikor kicsit elhalkul, kisebb polinomszámláló jönne. És emellett még 3 csatorna szabadon maradna. Az effektekhez pedig lehet gyűrűmodulálni egymással különböző torzításokat, torzított hangot tiszta hanggal, stb.
Kíváncsi lennék, 1KHz-es burkológörbével mennyivel lehet többet kihozni.
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 geco

  • EP addict
  • *
  • Posts: 5431
  • Country: hu
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 52.0 Firefox 52.0
    • View Profile
Re: Quadrillion
« Reply #205 on: 2018.May.23. 08:41:22 »
Kíváncsi lennék, 1KHz-es burkológörbével mennyivel lehet többet kihozni.
Szerintem annyival, hogy lehet érdekes hangokat kicsiholni a gyorsan változó hangerővel, pl ki lehetne próbálni azt is, hogy nagyon rövid envelope-okkal milyen hang jön ki, vagy nagyon rövid envelope, és annak a pozíciója 20ms-on belül változó helyen van, no meg nem mellesleg finomabb lépésenként lehet állítani a hangerőt. Ezek jutottak eszembe,

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 58.0 Firefox 58.0
    • View Profile
Re: Quadrillion
« Reply #206 on: 2018.May.23. 09:19:48 »
Tulajdonképpen elég lenne alacsonyabb frekvencia is, például 300 Hz, csak azon nehezebb megszakítást generálni. De ha nincs zene a játék közben, akkor az egyik hanggenerátor felhasználható ilyen célra.

Offline geco

  • EP addict
  • *
  • Posts: 5431
  • Country: hu
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 52.0 Firefox 52.0
    • View Profile
Re: Quadrillion
« Reply #207 on: 2018.May.23. 09:26:32 »
Tulajdonképpen elég lenne alacsonyabb frekvencia is, például 300 Hz, csak azon nehezebb megszakítást generálni. De ha nincs zene a játék közben, akkor az egyik hanggenerátor felhasználható ilyen célra.
Nem lenne jobb az 1KHz-es?  Még érdekesebb hangzásokat lehetne kicsiholni.

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 58.0 Firefox 58.0
    • View Profile
Re: Quadrillion
« Reply #208 on: 2018.May.23. 09:40:42 »
Nem lenne jobb az 1KHz-es?  Még érdekesebb hangzásokat lehetne kicsiholni.

Természetesen a magasabb mindig jobb, csak elég lehet a néhány száz Hz is, és kevesebb CPU-t fogyaszt. Ki kell próbálni. 50 Hz-nél mindenesetre jól hallható például a téglák bontásánál, hogy nem folyamatosan változik a frekvencia mint a Plus/4-es verzióban, hanem nagy lépésekben, mintha 4 rövid zenei hang lenne. De ez akár előnyös is lehet. :) Viszont ha nem magas a burkológörbe frekvencia, akkor az effektusokat regiszter mentésként is lehet tárolni.

A több kicsomagoló rutinnal kapcsolatban talán még említést érdemel, hogy a readBit és hasonlók megoszthatók lehetnek közöttük, különösen ha RST-ként használhatók.

Szerk.: az LPT-ben egy-két kisebb javítási lehetőség: a megszakítás lehetne a VBLANK helyett az alsó keret előtt, így több idő lenne rajzolásra sprite villogás nélkül. Széles képernyő módban pedig a függőleges pozíciót (alsó/felső keret mérete) igazítani lehetne, mert most el van tolódva a kép lefelé.
« Last Edit: 2018.May.23. 10:16:33 by IstvanV »

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 58.0 Firefox 58.0
    • View Profile
Re: Quadrillion
« Reply #209 on: 2018.May.23. 11:02:39 »
Ezeknek a ditherelt háttereknek lehetne hasznát venni?

21037-0

21039-1