· Text 1409 · w6 · inlagg
Jag har i tidigare inlägg nämnt om hur man ska göra för att skicka över
textfiler, eller .BAS-programm.
Vad jag nyligen upptäckt, må redan vara gjort av andra kanske, är den
verkligt stora skillnaden på INPUT/PRINT och GET/PUT.
För att verkligen begripa hela sammanhanget bör en del saker förklaras.
Ett filslut anges med 6 st 0 (CHR¤(0)), när således dessa träffas på
får man fel från INPUT/INPUT LINE, error 34 'Slut på filen'.
Men notera att GET inte bryr sig ett smack om detta, när man läser en
fil med GET får man felmeddelande 38, 'Sektor nummer utanför filen' vilket
beror på att man försökt läsa ytterligare en sektor, som inte finns.
Vidare markeras i slutet av varje sektor att nästa sektor skall läsas
in, detta görs med ascii 3 (rätta mej om jag tar fel). Jag tror att GET
tar notis om detta, eller enbart hoppar över. För jag har inte lyckats
läsa denna kod. Däremot så läggs inget "Read next sector" in i filen
när man använder PUT. Vilket medför att man bara kan läsa EN sektor,
med INPUT sedan. Däremot sköter PRINT om denna funktion.
Det kan vara möjligt att GET/PUT från BASIC sköter om det där med att
läsa ny sektor, och markera ny sektor inläsning, däremot görs det INTE
i maskinkod. (I de rutiner som finns i tolken)
Till slut:
För att få maskinen och fatta att filen är slut måste således 6 st ascii
0 skickas från den andra maskinen om man gör LIST/LOAD V24:VSA40B24.55.
Uppgifterna kan även vara bra vid blandad skrivning/läsning med INPUT/PRINT
GET/PUT osv. Man kan vidare också markera filen slut tidigare än vad
den är.
Vad jag sedan undrar om det inte finns någon slags markering av filen
slut vid GET, om man vill skicka BAC-filer, det är väl iofs inte så svårt
att skicka med antal tecken först men ändå.
Hoppas det är någon till nytta eller nöje.
Moss / Patric