[abc80] Abc80-fpga: skriva till direktfiler på PRB:

H. Peter Anvin hpa at zytor.com
Sat Aug 8 12:24:03 PDT 2009


Hej!  Tyvarr sa ar direktfiler I ABC80 implementerade I DOSet och inte I enhetssystemet, sa de funkar bara pa skivfiler.  Daremot finns det stod I enhetssystemet for sekvensiella binarfiler (t.ex. BAC-filer)... det finns dock inget BASIC-interface dar.  Vi behover alltsa ett specialprogram for att kopiera till/fran PRB.  Eftersom precis samma problem galler CAS ar det mojligt att det gar att anvanda ABC-klubbens CASDISK-program, mojligen med modifikationer, men det ar ocksa mojligt att CASDISK ar helt specialiserat.

juhasz at abc.se wrote:

>Hejsan hpa och alla ni andra på listan!
>
>Jag har lekt lite mer med den förträffliga fpga-abc80:n. Tänker kolla lite
>på z88dk C-kompilatorns Abc80-target (jo det finns en sån, kolla in
>z88dk.org). Då är det ju perfekt att kunna köra abc80-fpga och sedan
>seriell länk med PRB: och direkt ladda över grejerna med det.
>
>För övningen ovan krävs ju att man läser in den genererade koden som en
>direktfil. För att testa detta gjorde jag ett litet testprogram för att
>skriva direktfiler (och sedan läsa dem igen med ett annat program). Jag
>hade glömt hur man gör på ABC80, och här stötte jag på ett problem:
>- Finns det stöd i PRB: för att skriva direktfiler?
>
>Jag körde följande lilla program som funkar fint med filer på tex HD0:
>eller UFD:, men på PRB: får jag felmeddelande "LOGISK FIL EJ ÖPPEN LINE
>75". Kör jag på PRA: så får jag "EJ TILL DENNA ENHET LINE 70", men det är
>ju logiskt eftersom det är en printer....
>
>Undrar om detta är en bugg eller feature....? På mac:en ser jag att filen
>skapas, men i skrivrutinen går det fel....
>
>Hälsningar
>
>Robert
>
>- som för övrigt tycker att abc80-fpga är det coolaste som hänt på
>abc80-scenen det senaste 20 åren! ;)
>
>Här är programmet:
>
>10 PRINT "Filhantering"
>20 PRINT "Fil:"; : INPUT F$
>30 PREPARE F$ ASFILE 1
>40 REM OPEN F$ ASFILE 1
>50 FOR I=0 TO 24
>55 A=ASC("A")+I
>60 Q0$=STRING$(253,A)
>65 PRINT Q0$
>70 Z=CALL(28666,1)
>75 Z=CALL(28670,I)
>80 PRINT A,Z
>90 NEXT I
>100 CLOSE 1
>
>
>
>


More information about the ABC80 mailing list