na innen vannak a kb fél évvel ezelőtti font módosító programok: https://enterpriseforever.com/programozas/basic/1200/Hol? Én nem találtam.
Hol? Én nem találtam.Én sem.
Úgy lenne érdekes a verseny, ha a nyertes FONT-ban kapná a díjazást.Módosítottban? :D
Leteszteltem, Basic-ben a karakterdefiníció sok helyet vesz igénybe, csak egy karakterdefiníció, és egy print több, mint 100 bájt volt fájlméretben, legalább 512 bájtot javasolnék, de egy jobb teszt kéne hozzá, lehet kell az 1k is,
Ilyen méretű programban elsősorban az eredeti EXOS karakterkészletet lenne értelme módosítani valamilyen algoritmussal.Igen, de azt meg gondolom direkt pókolással, azért gondoltam a Basic fájlméret növelésre, hogyha esetleg valaki generálni szeretne, és legalább egy SET CHARACTERt használni, akkor az már maga közel 100 bájt.
lehet hogy nálam mást mutat a fórum link?A hozzászólásnak mi a száma? Mindegyik hozzászólásnak van száma a topikokban. 1-től indul felfelé, mindig eggyel nagyobb, nem meglepő módon. Az enyém most pl. a 10-es itt:
« Válasz #10 Dátum: Ma - 16:24 »
A hozzászólásnak mi a száma? Mindegyik hozzászólásnak van száma a topikokban. 1-től indul felfelé, mindig eggyel nagyobb, nem meglepő módon. Az enyém most pl. a 10-es itt:lehet a hozzászólás száma lett elírva, mert Basic-en belül a 2162 a legkisebb, Endi meg az 1200-at vágta be.
16 byte exos file header
amúgy érdekes lenne a gracha módra kiterjeszteni a versenytAz elég vagány lenne, ha bekapcsolás után rögtön gracha képernyőn jelentkezne be a basic! De nem biztos, hogy célszerű lenne, pl. biztos lassabban menne minden. De mondjuk az exdos parancsértelmezője futhatna akár sokszínű karakteres módban, ott a sebesség nem annyira központi kérdés. Jó, mondjuk az se jó, ha a :DIR parancs kétszer annyi ideig tart.
Az elég vagány lenne, ha bekapcsolás után rögtön gracha képernyőn jelentkezne be a basic! De nem biztos, hogy célszerű lenne, pl. biztos lassabban menne minden. De mondjuk az exdos parancsértelmezője futhatna akár sokszínű karakteres módban, ott a sebesség nem annyira központi kérdés. Jó, mondjuk az se jó, ha a :DIR parancs kétszer annyi ideig tart.
Belegondolva nem is lenne rossz basic-hez a gracha mód. Kisebbek lennének a karakterek, több elférne belőlük (ha jól tudom, kisebbek, de lehet, hogy nem), mégse lenne olyan olvashatatlan, mint a text 80-as mód.
Itt még lehet néhány byte kód, ha nem is elegáns megoldás. :) Talán a reset rutin is megtakarítható, attól függően hogy mennyire fontos az EXOS kompatibilitás.igen, ha nagyon kell a hely, sokkal elegánsabb, mint a következő ötletem, amivel a kód felé felszabadithato :-D
amúgy érdekes lenne a gracha módra kiterjeszteni a versenyt, lásd c64:az is ugyanolyan karakteres mód ;-)
http://csdb.dk/release/?id=163052
az a baj hogy a c64 verseny után már nehéz újat csinálni.
hát öö... ennyi erővel random is lehetett volna :)Persze inkább csak vicc jellege volt ennek a "fontkészletnek", de random nem lett volna jó, mert az minden futtatásnál mást adhat. Kivéve, ha nincs randomize, vagy be van lőve, hogy honnan induljon a véletlenszám generálás. Annyiból felel meg az elvárásnak, hogy egy fix fontkészletet generál. Írta is valaki, hogy nem a minőség számít. :D
A zip fájlban vannak a források, és a snapshotok, és a futtatható fájlok is.
Kilépésnél még lehetne egy kevés helyet megtakarítani az LD C, 40H és EXOS 0 törlésével. A programok nem foglalnak le szegmenst, bár elvileg előfordulhat, hogy a betöltésük előtt már volt foglalt memória.Köfi, nem tudtam, hogy ez a kombó a memóriafelszabadítás :)
milyen számítássorozatokkal lehet egy karaktersor pixeleit arrébb tolni.
de szerintem tudod, csak kicsit gondold át, bináris szám ábrázolás :)Igen, az oké. Ha pl. 2+4+8-ból lesz egy eltolással 1+2+4, vagy 4+8+16-ból 2+4+8, akkor hogyan lehet matematikailag előállítani egyik számból a másikat, úgy, hogy bármi van ott eredetileg, jobbra csússzon eggyel. Basicben mindezt 10-es számrendszerbeli műveletekkel hozni össze. Binárisan még könnyű.
Igen, az oké. Ha pl. 2+4+8-ból lesz egy eltolással 1+2+4, vagy 4+8+16-ból 2+4+8, akkor hogyan lehet matematikailag előállítani egyik számból a másikat, úgy, hogy bármi van ott eredetileg, jobbra csússzon eggyel. Basicben mindezt 10-es számrendszerbeli műveletekkel hozni össze. Binárisan még könnyű.
még egy kicsit gondolkodj :)Na, most ki is számoltam ezeket a bonyolult matematikai műveletek.Tényleg nagyon egyszerű, csak feleződnek ezek a számok, nem semmi. Én mindig valami bonyolultra gondolok, ne is foglalkozzatok velem. De attól még lehetne ezekről a karakterdöntögetős/vastagítós/vékonyítós stb. módszerekről írni az Enterpressben akár.
Jó lett az Edgefont :)
Újabb változat az edge2.com, ez kisebb is:Ez az edgefont (az első) nagyon jó!
Még egy nem tudom milyen verzió :D
Ebből lehetnének animálva hullámzó karakterek.Jó ötlet, pont erre nem jutott eszembe, viszont animált karaktereket terveztem csinálni :)
még egy karakter anim:
jók ezek.Azt is lehet, ha belefér 128 bájtba :)
lehetne olyan hogy van egy ferde vonal / jel-szerű, vagy kicsit ditherelt hasonlóan ferde minta, ami végigmeny a karakteren, mintha megcsillanna
ez nem egy nagy szám, de kicsit eredeti talánjópofa :)
Ez ugyan nem csillan, hacsak a csillanás nem fekete :D , de végigmegy a karakteren :)
lehet hogy más fázisban kéne lennie karakterenként?Vagy nem karakterenként kellene működnie, hanem végigfutni a teljes készleten. (Még nem néztem meg.)
lehet hogy más fázisban kéne lennie karakterenként?Sztem az nem lenne jó.
Nagyon jók az animált karakterek, és még így is csak 128 byte. :)Köfi :), biztos lehetne kisebb is, és akkor talán EXOS LPT kompatibilis.
na ez talán nem is rossz, meg ilyet még asszem nem láttamNem rossz, még egész olvasható is.
(Attachment Link)
fontmod.comEz is király!
Ez jó ötlet!Szerintem is :)
Össze lehetne gyűjteni a karakterkészleteket egy nagyobb programba, ahol például billentyűvel választható, hogy melyik jelenjen meg.Van hasonló az util programcsokorban (http://ep128.hu/Ep_Util/Util.htm), Povi készítette 2003-ban, Character (char3.bas) névvel. Lehetne ehhez hasonló.
És a létrehozó kódokat, nem direkt a karakterkészleteket, nem?
Az lenne az ideális, természetesen módosítani kell a kódon, hogy nagyobb programból rutinként lehessen hívni, illetve a BASIC demókat átírni.Lehet hétvégén nekiállok, először a sajátokat, úgy gondoltam, hogy az összeset 100h-s címeken tárolnám, akkor lehet nem kell módosítás.
ez úgy lenne jó hogy az adott algoritmust nyomná rá a fontra, hogy mixelni lehessen őket.úgy gondoltad, hogy akár több algoritmust rátolni a fontra egymás után?
esc mondjuk reset vagy undo.
úgy gondoltad, hogy akár több algoritmust rátolni a fontra egymás után?
nem tudom volt-e már ilyen, olvashatatlan, de talán új :)Lefogadom, direkt nem tetted be magát a programot, sőt már le is törölted. Hogy a kép alapján kelljen nekünk a programot kikövetkeztetni.
nem tudom volt-e már ilyen, olvashatatlan, de talán új :)Ez tetszik, 4 pixel széles karakterek. Resampling nélküli 50%-os resize :-)
Ez egyelőre 1438 byte, az 1K-s demótól messze van. :oops: Valamivel kisebb lehetne, ha az eredeti program nem 100h kezdőcímre lenne fordítva, de így is nagyobb maradna 1400-nál.Arra gondoltam, hogy pár karakterkészletet kiszedésével lehet egy 1k-s verziót is csinálni. :)
(Attachment Link)
A fordítási címen is lehet alakítani.
Ez ORG 0160H-t tételez fel:Hm, végigpróbáltam az összes módot, az m1 lett a legkisebb, az alap m6 24 bájttal több. 1329 bájt, aztán játszottam az M6 különbüző beállításával, de 1348 bájtot sikerült elérnem :D , és a te beállításaiddal 1322 lett, szuper.
(Attachment Link)
Az elején törölni lehetne még a DI-t, vagy az LD SP, 0100H-t (az utóbbi esetben a program az EXOS vermet használná, de ez nem tudom, mennyire "EXOS kompatibilis").
Az 1K-snál ez a megoldás nem lenne jobb, de azon is lehetne még egy keveset javítani. Talán azzal is, ha a karakterkészleteket generáló rutinokat nem külön CALL utasítások hívnák, hanem ha egyébként is közvetlenül egymás után vannak, akkor a RET utasítások törlésével összefűzhetők. Így lehet, hogy még egy elférne. :)Nagyon jó ötlet,sőt akár 2 kisebb is talán :)
na ez tök jó. pl egy kicsinyítés és egy körvonal tök jó eredményt adÉn fordított sorrendben próbáltam :)
Én fordított sorrendben próbáltam :)
amúgy ha az elején nem resetelné a karaktereket akkor más karakterkészletekre is rá lehetne nyomni ezeket az effekteketPéldául karakteres képernyőn futó Hamika vagy Pacman megváltoztatná a karakterkészletét, amikor bónusz powerupot vesz fel. Ezt a karakteres átírós effektet egész jól lehetne használni ilyen játékokban! (Már ha egyáltalán említésre méltó ez a "kétszínű" karakteres képernyő.) Bár ott nem kell feltétlen az összes karakterre alkalmazni, és lehetnek teljesen egyedi átmeneti karakterek is.
Kisebb probléma lehet még, hogy eredeti EXOS ROM esetén a program indításakor engedélyezett a megszakítás, ezért lefagyhat DI és LD SP nélkül. Ezt az EXOS 0 hibája okozza (C=10h vagy 20h használatakor), amit Zozosoft javított a 2.32 verzióban, de az emulátor csomagjában a régebbi változatok is tartalmazzák a javítást. Azonban DI utasítással is pontosan 1024 byte a CHRSET1K.COM. :) Bár ezzel a csomagolással még sikerült 1021-re faragni (gyakorlatilag véletlenszerű, hogy melyik lesz néhány byte-tal kisebb):Áhá, ezt nem tudtam, azért is vettem ki a DI-t mert alapból tiltott megszakítással indult a program, az 1024 meg pont jó :D , gyanúsan lehetne még pár bájtot nyerni átrendezéssel, és call-ok megszűntetésével, nem tudom lehetne-e egy újabb karakterkészletet nyerni.
asszem ilyen lapos még nem voltJól néz ki, nem volt még ilyen, ha jól látom ,csak összenyomod a karaktereket felülről 1 pixelsorral, és alulról 1 pixelsorral.
Áhá, ezt nem tudtam, azért is vettem ki a DI-t mert alapból tiltott megszakítással indult a program, az 1024 meg pont jó :D , gyanúsan lehetne még pár bájtot nyerni átrendezéssel, és call-ok megszűntetésével, nem tudom lehetne-e egy újabb karakterkészletet nyerni.
992 byte (szerk.: ezzel (https://enterpriseforever.com/enterprise-devcompo/verseny-otlet/msg70227/#msg70227) 989) a memadd1 remélhetőleg helyesen működő optimalizálásával, a program elejét a HIBA rutinhoz hasonlóbbra módosítva, a HIBA áthelyezésével, és még egy kisebb változtatással:Coool :) A végén az összes belefér :D , szép ez a 32-35 byte rövidülés.
Nem értek hozzá, de pl. a HIBA rutin neve lehetne csak H vagy HI, azzal a pár betűvel is lehet spórolni 1-2 bájtot. (De biztos nem úgy tárolja, szóval mindegy lehet a hossza.)A címkék nem foglalnak helyet, fordítás után egy hexa szám lesz az értéke, és a címkére mutató utasítások arra a hexa címre ugranak, onnan olvasnak, vagy oda írnak.
A címkék nem foglalnak helyet, fordítás után egy hexa szám lesz az értéke, és a címkére mutató utasítások arra a hexa címre ugranak, onnan olvasnak, vagy oda írnak.Akkor viszont lehetne olyan címkeneveket adni meg, melyek jól tömöríthetők, pl. AAA1, AAA2. :D Ha annyira a méretcsökkenés a fontos. De befejezem a belekontárkodást inkább.
Akkor viszont lehetne olyan címkeneveket adni meg, melyek jól tömöríthetők, pl. AAA1, AAA2. :D Ha annyira a méretcsökkenés a fontos. De befejezem a belekontárkodást inkább.
Egy kisebb hibát találtam: :oops: a CHRSMOD.COM elején nincs DI vagy LD SP, ezért eredeti "gyári" EXOS ROM használata esetén (például valódi gépen) lefagyhat. Bár magnóról és cartridge nélkül úgy látom, működik azzal is.Hm, azt hittem csak az 1K-sból vettem ki, de lehet később az 1K-s loaderét használtam, javítom majd, köfi.
grafikus módban is ilyen trükköketTényleg, annak nincs valami módja, hogy gracha üzemmódhoz könnyen lehessen olvasható karaktereket előállítani a meglévő karakterkészletből? Lehetne egyszínűt is, és színesebbet is. Az utóbbi biztos bonyolultabb, több helyet foglalhat a programban a rutin hozzá.
Tényleg, annak nincs valami módja, hogy gracha üzemmódhoz könnyen lehessen olvasható karaktereket előállítani a meglévő karakterkészletből? Lehetne egyszínűt is, és színesebbet is. Az utóbbi biztos bonyolultabb, több helyet foglalhat a programban a rutin hozzá.
Érdekes, mert ebben a verzióban már az -m6:bg0l,g,,23456789,23456789 verzió volt jobb :)
Ha jól látom, a loader4.s (-m6:b90l,0011223344556677,34,3456789a,3456789a) kisebb lenne az 1K-s és a mod változatnál, bár nincs különösebb jelentősége.A batch file-omban csak az 1-es, és a 2-es verzió kerül fordításra még :oops: ,de a loadereket lementettem, és használatba is kerülnek majd :)
legfrissebb Endi chrset beéptve, és a CHRSMOD-ban egy hiba javtva.
Érdekes, mert ebben a verzióban már az -m6:bg0l,g,,23456789,23456789 verzió volt jobb :)
kicsit bugos mert az újak kiválasztásával másikak aktiválódnakmegnézem.