Av: Kristoffer Eriksson <5357> 1985-12-23 05.21.37 OPTLOAD.INF +--------------------------------------------------------+ ! OPTLOAD, ST[LLPAR.BAS - Laddning av Addopt-filer. ! ! F|r ABC800-serien. ! ! 1985-07-10 Av Kristoffer Eriksson ABC-klubben <5357>! ! F}r kopieras fritt f|r ickekommersiella syften. ! +-------------------------------------------------------+ OPTLOAD g|r det m|jligt att med hj{lp av en ADDOPT-fil ladda REL-filer utan att g|ra reset. I st{llet g|r man CHAIN eller RUN till programmet OPTLOAD. 1. H{mtning fr}n monitorn. Programmet OPTLOAD.BAC ligger i bin{rform, och m}ste h{mtas med kommandot "GET,H OPTLOAD.BAC" eller "TYPE,H OPTLOAD.BAC". D{refter ska den |verf|rda hex-filen konverteras tillbaks till bin{rform med hj{lp av programmet HEXTOFIL, som ocks} finns i monitorn. Du b|r ocks} h{mta ST[LLPAR.BAS som anv{nds f|r att st{lla in parametrar i OPTLOAD.BAC om du inte redan har den. 2. Anv{ndning. OPTLOAD laddar ADDOPT.ABS som i sin tur laddar en ".REL"-fil, vanligtvis ISAMOPT.REL, OPTROSH.REL, TERMOPT.REL, eller n}gon kombination av dessa. Det {r allts} minst tre steg i denna kedja, det blir d{rf|r ett flertal inst{ll- ningar som m}ste g|ras innan man kan utnyttja det hela. F|rslagsvis g|r du kopior av ADDOPT.ABS och OPTLOAD.BAC med andra namn, ifall du vill ha flera olika varianter p} samma diskett. 3. Exempel. I det h{r exemplet visas hur man g|r i ordning ett program med namnet ISAMOPT.BAC som laddar ISAM. G|r en kopia av ADDOPT.ABS (finns p} systemskivan) och kalla den f|r ADDISAM.ABS. G|r ocks} en kopia av OPTLOAD.BAC och kalla den f|r ISAMOPT.BAC. Nu m}ste ADDISAM.ABS st{llas in s} att ISAMOPT.REL laddas av den. Detta kan g|ras med programmet CONFIG som funnits p} ABC-kassett/diskett nr 16, men d} m}ste det {ndras s} att det behandlar den kopian av ADDOPT.ABS och inte origi- nalet. Det {r kanske enklare att "g|ra det sj{lv". P} systemskivan finns ett litet program som heter SETOPT.BAC som man l{tt kan {ndra i s} att den bearbe- tar r{tt fil (ADDISAM.ABS i detta exempel) och anger r{tt REL-fil (ISAMOPT.REL h{r). L{gg m{rke till att REL-filens filnamn ska anges med exakt 8 tecken och filtypen med exakt tre, |verblivet utrymme ska fyllas med blanktecken ("ISAMOPT REL" h{r). H{rn{st m}ste ISAMOPT.BAC st{llas in s} att den laddar ADDISAM.ABS. Det g|r man genom att k|ra programmet ST[LLPAR. Ange ISAMOPT.BAC som svar p} fr}gan om filnamn. D} visas nuvarande inst{llningar, varefter dessa kan {ndras. Som "Ad- doptfil" ska anges "ADDISAM ABS". [ven h{r anges filnamnet med exakt 8 tecken och filtypen med tre, sammanlagt 11 tecken. Ingen punkt mellan filnamn och filtyp. Dessutom kan man ange namnet p} ett BASIC-program som ska startas efter inladdningen. H{r anges filnamnet p} normalt s{tt. Till det h{r exemplet beh|ver inget namn anges h{r. Sen ska inst{llningarna sparas. Nu {r det bara att provk|ra. G|r det med RUN ISAMOPT. Om man nu provar att skriva ISAM READ #1 A$ ska maskinen svara med felkod 32 (filen ej |ppnad) och inte 220 (f|rst}r ej). Detta visar att ISAM har blivit inladdat. 4. Anv{ndning tillsammans med egna program. Den st|rsta nyttan med OPTLOAD {r nog att man n{r som hellst kan ladda in en REL-fil utan att beh|va plocka fram en s{rskild diskett och trycka reset. Man kan g|ra iordning kopior f|r alla olika REL-filer man brukar anv{nda. Men det g}r ocks} att anropa OPTLOAD fr}n andra program: Det finns tv} s{tt att anv{nda OPTLOAD tillsammans med egna programsystem. Man kan med ST[LLPAR st{lla vilken ADDOPT-fil som ska laddas och vilket BASIC-- program som ska CHAIN:as en g}ng f|r alla, men om man i st{llet skriver in bara blanktecken som ADDOPT-fil och en tom str{ng (noll tecken) som CHAIN-fil, kan dessa saker variera fr}n g}ng till g}ng. Med f|ljande programsnutt i det program som CHAIN:ar OPTLOAD (eller en kopia d{rav) g|rs de inst{llningar som beh|vs: FOR I=1 TO LEN(Chainfil$) POKE 63746+I,ASC(MID$(Chainfil$,I,1)) NEXT I POKE I,255 POKE 63767,Addoptdev FOR I=1 TO LEN(Addoptfil$) POKE 63767+I,ASC(MID$(Addoptfil$,I,1)) NEXT I POKE I,255 CHAIN "OPTLOAD" d{r Chainfil$ skulle kunna inneh}lla "N[STA.BAC" och Addoptfil$ "ADDISAM ABS". Addoptdev {r enhetsnumret p} den diskettdrive d{r addopt-filen finns. 255 ger s|kning p} alla enheter. I programmet N[STA kan man avl{sa hur laddningen gick. Om PEEK(64512) ger 255 gick laddningen bra s} l}ngt OPTLOAD kan avg|ra. 5. Utnyttjat minne. OPTLOAD utnyttjar dosbuffertar ganska flitigt. POKE-historian som beskrevs ovan hamnar i dosbuffert 4. OPTLOAD ligger delvis och tidvis i buffert 6, och delvis i botten av det lediga RAM-minnet. ADDOPT l{gger sig i buffert 3 och 4 samt utnyttjar 1 och 2. Naturligtvis anv{nds {ven buffert 0. "Resultat-byten" 64512 ligger i buffert 7. Lycka till /Kristoffer Eriksson