[abc80] Högupplösningsgrafik på ABC806

Erik Isaksson exon at lysator.liu.se
Tis Jan 23 14:46:51 PST 2018


Kul att det rör på sig! Jag hoppas jag har fått rätt funktion på sakerna 
i emulatorn, bra om du kan verifiera med en riktig maskin om jag gjort 
rätt :-)

Bit 3 (P) i palettvärdet bestämmer väl dessutom om text eller grafik ska 
synas givet en viss färg; börjar man blanda borde det bli riktigt 
psykedeliskt!


/ E


On 2018-01-23 23:33, Andreas Gustafsson wrote:
> Tack Ola och Erik!
>
> Med hjälp av port 6 för att mappa in vilket minnesområde jag peta på 
> samt visa på skärmen, port 35 för att aktivera 32kb-mappningen samt 
> port 7 för att sätta upp paletten så har jag nu fått igång 
> hires-grafik, funkar fint!
> Intressant lösning att den lägger sig ovanpå det vanliga 
> text-grafiken, det här öppnar upp för skojiga effekter!
> Har massor av idéer på vad man skulle kunna göra, men ska försöka 
> hålla mig lite i skinnet tills jag har en riktig maskin på plats också 
> så att man kan verifiera allt till 100% :)
>
> /Andreas
>
>
>
> 2018-01-23 19:22 GMT+01:00 Erik Isaksson <exon at lysator.liu.se 
> <mailto:exon at lysator.liu.se>>:
>
>     Det finns visst tre olika sätt att komma åt grafikminnet (128k) på
>     806:
>
>     - 30k-blocking: 30k kopplas in på 0x0000--0x7800 vid exekvering av
>     kod på adress 0x7800--0x7fff
>
>     - 32k-blocking: 32k kopplas in på 0x0000-0x8000 vid aktivering av
>     DART ChB DTR
>
>     -4k-blocking: godtyckligt 4k-block kan kopplas in på "godtycklig"
>     plats i minnet, aktiveras av EME i MISC-registret (out 54,128)
>
>     Känns ju som enklaste sättet om man kör från egen assembler är
>     32k-blocking...?
>
>
>     mvh Erik
>
>
>
>     On 2018-01-23 00:07, H. Peter Anvin wrote:
>
>         On 01/22/18 09:50, Andreas Gustafsson wrote:
>
>             Ja, nu är jag igång och spammar stackars ABC80-listan igen!
>
>             Nu har jag hyfsad koll på hur textmode/attribut-färger
>             etc. fungerar, och
>             med Eriks hjälp har jag även lyckats vänta på VSYNC så att
>             mina
>             uppdateringar sker en gång per frame, vilket man givetvis
>             vill för att få
>             mjuk och fin animation.
>
>             Nu skulle jag vilja börja leka med hiresgrafiken! Finns
>             den beskriven
>             någonstans?
>             Har förstått så mycket som att man kan switcha in block av
>             Video-RAM nere
>             på 0000->7800 på något sätt, men hittar inte någon
>             dokumentation på hur man
>             gör detta (antar att det är någon OUT-port som styr det).
>             Sedan vill jag även enabla grafikmoden på något sätt, och
>             välja vilken av
>             de fyra bitmapparna som får plats i VRAMet som ska visas
>             inte heller detta
>             har jag hittat hur man gör.
>             I servicemanualen finns det lite exempel, men de använder
>             bara tråkig
>             BASIC, jag vill ju koda rätt "to the metal" i assembler!
>             I värsta fall kanske man kan ge sig på att disassemblera
>             basic-kommando för
>             att hitta vad de gör?
>
>         Bit för bit beskriver grafiken för ABC800C/M, men tyvärr inte
>         ABC806 som
>         kom ut senare.  Tyvärr är kretsschemat inte så användbart heller,
>         eftersom ABC806 använde en hel del PAL-kretsar, som då hade blivit
>         tillgängliga.
>
>         Det finns troligen något i ABC-bladen och/eller ABC-klubbens
>         MSG, och
>         kanske i någon annan manual.  Det kanske går att hitta en manual
>         och/eller simulator som klurat ut det, med, och tracea vad ROMmen
>         faktiskt gör.
>
>         ABC800C/Ms HR-grafik var rätt annorlunda; den kopplades
>         automatiskt in
>         på 0-16K plus ett PROM på 30-32K om CPUn började köra kod på
>         de senare
>         addresserna (M1 + MREQ användes för att klocka en vippa som
>         lagrade
>         A[15:11] = 01111).  ABC806 hade ju 128K, dock.
>
>         ABC802 hade RAM på 0-32K som kunde kopplas in via en
>         statussignal från
>         en av SIO-kretsarna (lite som A20 på PC kontrollerades via
>         tangentbordskontrollern.)  Jag vet att det interfacet stöddes
>         också på
>         ABC806, men jag tror också att det gick att kontrollera i
>         finare detalj.
>
>                 -hpa
>
>         _______________________________________________
>         ABC80 mailing list
>         ABC80 at abc80.org <mailto:ABC80 at abc80.org>
>         http://www.abc80.org/mailman/listinfo/abc80
>         <http://www.abc80.org/mailman/listinfo/abc80>
>
>
>     _______________________________________________
>     ABC80 mailing list
>     ABC80 at abc80.org <mailto:ABC80 at abc80.org>
>     http://www.abc80.org/mailman/listinfo/abc80
>     <http://www.abc80.org/mailman/listinfo/abc80>
>
>



More information about the ABC80 mailing list