[abc80] musstöd och RPi (Re: abc80sim-2.1)

Abinsium abinsium at gmail.com
Tors Apr 10 13:31:55 PDT 2014


On 2014-04-09 14:31, juhasz at abc.se wrote:
>> On 04/06/2014 02:14 PM, Abinsium wrote:
>>>
>>> Kanske kunde man åstadkomma högupplösande grafik på ABC 80 också. Jag
>>> fick först reda på att äkta högupplösande grafik var möjlig på ZX81 med
>>> enkla modifieringar för några år sedan. Jag hade och har dock ett annat
>>> RAM-pack på 56KiB som denna modifikation kanske ej fungerar på.
>>>
>>
>> Det gick att göra på ABC80 genom att ändra i bildminnet under svepet;
>> det finns ett par demoprogram i ABC-klubbens arkiv för det.
>>
> yep, har kollat dessa ganska nyligen. t ex abc80/hugo/abcrez.txt där man
> ändrar tecken efter varje linje och det är rätt utförligt beskrivet i
> assmeblerkod hur man väntar på linjesynk med HALT och sedan timar allting
> med loopar.
>
> Man kan då få 80x240 upplösning på 40 tecken abc och 160x240 på 80-tecken.
> Sen är "demon" highrez.bac i samma bibl ganska imponerande! Tror den
> funkar med samma teknik.
>
> Sånt funkar ju numera på c64-emulatorer o dylikt men såklart vore det ju
> schysst om abc80sim kunde det i framtiden. Tror dock att man måste räkna
> t-states per exekverad instruktion och sedan knyta det till
> videouppdateringen för att få det att fungera, så det är en del jobb...

Det hade varit roligt att se en video med alla (2?) högupplösande 
program för ABC80. Tyvärr har jag ingen ABC80. Finns det någon emulator 
där den högupplösande grafiken fungerar?

(Det finns en version av xz81 (X emulator för ZX81) som klarar 
högupplösande WRX-grafik 256x192:
z81-2.2.tar.gz från http://rullf2.xs4all.nl/sg/zx81ce.html )

Jag tror emulerarna ofta fuskar genom att man bara behöver detektera om 
t.ex. ett visst grafikbibliotek används och därefter visar man relevant 
del av minnet som högupplösande grafik utan att exakt emulera skärmens 
elektronstråle. Man borde kunna ha ett kodbibliotek som fungerar på 
riktiga ABC80-hårdvaran (eller med enkla modifieringar eller gamla 
tillbehör) och som alla retroutvecklare kan enas om och som fungerar i 
många emulatorer också. Om högupplösande grafik blev standard i 
emulatorerna så skulle det kunna öka intresset för att utveckla nya 
program för ABC80 och ta till vara gamla kunskaper.

Man vill ju ha en emulator som tar så lite av CPU-kapaciteten som 
möjligt. När det gäller ZX81-emulatorer så tar sz81 50% av CPU:n på 
Raspberry Pi, men xz81 tar omätbart lite, kanske 3%. (sz81 använder SDL 
och xz81, X.) När det gäller ABC80 så tar abc80sim-2.1 100% av CPU:n.

> Liknande "cool" feature som är att få högupplöst PIO-interrupt (7 kHz) att
> funka, framförallt för de program som kunde spela samplat och genererat
> ljud med en interruptrutin. Tror abc80 var ganska unik med en så
> högupplöst interruptkälla.

Jag är ännu inte så insatt i ABC80:ns hårdvara, men det verkar ju vara 
en intressant finess.

Det största problemet just nu tycker jag är att INP(56) inte fungerar 
som i den äkta ABC 80 i abc80sim-2.1 i Raspbian och Ubuntu 10.04 LTS 
(tror det är samma fel i alla Linuxar). Jag har inte provat mitt 
testprogram i abc80sim-2.0 men har för mig att jag läst att det inte 
fungerade där heller. Jag provade nu programmet MALARE.BAS i ABCWin2 och 
där fungerade det som vanligt. Man kan hämta programmet här:
http://df.lth.se.orbin.se/~mikaelb/abc/80/malare.bas
MASKEN.BAS fungerar.

När jag försökte installera på Ubuntu 10.04 får jag ett fel.
abc80sim-2.1$ sudo make install
mkdir -p /usr/local/bin
abc80 /usr/local/bin
Invalid Intel-hex file.
make: *** [install] Error 1

Jag får köra det från katalogen där det kompilerades.


More information about the ABC80 mailing list