Uitleg over MSX turbo R FS-A1GT en MSX DOS 2.31 door A. Wulms (c) 1992 XelaSoft, 20-5-1992 Aangepast op 27-7-1993 (1) DE KNOPPEN EN LAMPJES OP DE TURBO R GT De GT heeft een aantal nieuwe knoppen op het front panel zitten, deze zijn van links naar rechts: Autofire : verschuif deze naar rechts om de autofire aan te zetten. De autofire werkt op vuurknop A van joystick poort 1 en joystick poort 2 en tevens op de spatie balk. Bij schietspellen hoef je nu niet meer snel op je vuurknop te drukken om snel te schieten maar kun je hem gewoon blijven vasthouden. Boot drive : Als je de msx computer aan zet kijkt hij altijd of er een zogenaamde autoboot floppy in de disk drive zit. Een normale msx computer kijkt hiervoor altijd naar de A-drive. De GT heeft echter ook een ingebouwde rom disk (een rom geheugen dat is ingedeeld als een floppy disk, met een aantal programma's erop). Met deze knop kun je nu instellen van welke drive de GT moet opstarten: -in de LINKER stand start hij op vanuit de ROM drive. -in de RECHTER stand start hij op vanuit de A drive. Reset knop : Met dit kleine grijze knopje reset je de computer. Naast deze knoppen zitten een aantal status lampjes, deze zijn van links naar rechts: Power : Brand altijd als de computer aan staat. Caps : Als deze brand heb je caps (hoofdletters) aanstaan. Kana : Dit lampje geeft aan dat de computer op Japanse KANA stand staat. In deze mode kun je Japanse letters intypen. Er zijn in feite 2 kana modes: - Zet kana aan door op de Kana toets te drukken (de letter met japanse kriebeltjes naast de pauze toets): Nu pakt de computer direct de Japanse tekentjes zoals ze ook op de toetsen staan gedrukt. - Zet kana aan door op de shift en de Kana toets tegelijk te drukken (dus alsof je een hoofdletter Kana zou willen maken als dat ging): Nu staat de computer in de shift kana stand. Je kunt dan gewoon met normale letters typen zoals je het uitspreekt. Zodra de computer een legale klank combinatie tegenkomt zet hij automatisch het goede Japanse symbool op het scherm. Pauze : Als dit lampje brand staat de computer in de pauze mode. Turbo : Aan dit lampje kun je zien dat de computer in de turbo mode staat. (Aan = Turbo mode, Uit = (trage) z80 stand). FDD in use : Is aan als de diskdrive in gebruik is. Waarschuwing: als dit lampje brand mogen de volgende acties niet worden uitgevoerd: - Floppy uit de drive halen. - Computer uitzetten. - Op de pauze toets drukken. - Op de reset knop drukken. (Als de computer is vastgelopen en de diskdrive tikt verder ook helemaal niet, dan kun je de floppy er eventueel wel uithalen en de computer uitzetten. Dit mag wel pas als laatste remedie als voor de rest niets helpt). Dan zijn er beneden aan het toetsen bord ook nog een paar extra toetsen. Deze bevinden zich op de rij van de spatie balk: Nee knop : dit is de knop direct LINKS van de spatie. Hij wordt alleen door de ingebouwde tekstverwerker gebruikt en betekent iets dergelijks als Nee of Annuleren of Niet doen. Ja knop : deze zit direct RECHTS van de spatie. Ook deze wordt alleen door de ingebouwde tekstverwerker gebruikt en betekent zoiets als Ja of Voer maar uit, en zo. Kana knop : hier zet je de kana stand of de shift kana stand mee aan en uit. Je kunt bij mijn weten niet direct vanuit kana naar shift kana stand omschakelen. Als je wilt omschakelen moet je dus eerst de kana stand uitzetten door op de kana toets te drukken en dan de goede mode kiezen door nogmaals op kana te drukken of door op shift en kana tegelijk te drukken. Pauze : Hier zet je de computer mee in de pauze stand. Als de computer in de pauze stand staat, zijn tevens het geluid en de autofire uit. Er bestaan sommige turbo-r spellen/programma's die deze toets (gedeeltelijk) omzeilen. Bij xak-3 blijft het geluid bijvoorbeeld aan staan, en bij xak-2 werkt de pauze toets helemaal niet. (2) DE EXTRA MOGELIJKHEDEN VAN MSX DOS 2.31 In de GT zit msx dos 2.31 ingebouwd. Deze versie van msx dos heeft een aantal extra mogelijkheden t.o.v. msx dos 2.20 en msx dos 2.30. Ik zal alle mij bekende extra mogelijkheden t.o.v. dos 2.20 behandelen, dit doe ik omdat een complete beschrijving van dos 2.xx een compleet boekwerk in beslag neemt en er boeken over msx dos 2.20 te verkrijgen zijn in het Nederlands/Engels. De belangrijkste veranderingen aan msx dos 2.31 zijn: - Beter gebruik van disk buffers. - De environment variabele: expert. - Het kunnen uitlezen van de zogenaamde environment variabelen. - Het voorwaardelijk kunnen uitvoeren van commando's. (2.1) Beter gebruik van disk buffers. In alle versies van dos 2.xx wordt alles dat via floppy gaat gebufferd. Dit betekent dat de computer een sector die hij inleest meteen opslaat in een extra stukje ram geheugen. Als de computer dan weer die zelfde sector zou moeten inlezen, hoeft hij dat niet meer vanuit schijf te doen maar kunnen de data direct uit dat stuk ram worden gehaald. Aangezien de computer bij diskbewerkingen relatief vaak uit de(zelfde) directory moet lezen levert dit een gigantische tijdwinst op, vooral bij het kopi‰ren van veel kleine bestanden. Dit gebruik van disk buffers brengt echter wel een risico met zich mee: als je de disk zou verwisselen en de computer merkt dit niet, dan zou de computer de (verkeerde) data uit het ram halen. Daarom zet msx dos 2.xx een willekeurig nummer op de disk tijdens het formateren (het volume nummer). Nu kan de computer aan dat volume nummer zien of de disk is gewisseld. Het is bij dos 2.20 echter zo dat de computer altijd eerst naar het volumenummer kijkt voordat hij data uit een buffer haalt, hierdoor krijg je dan dat de disk nog iedere keer moet worden gelezen zodat er uiteindelijk geen versnelling optreedt. Bij msx dos 2.31 (en ik geloof ook bij 2.30) is het echter zo dat de computer bijhoudt of de disk uit de drive is geweest: als je de disk niet uit de drive haalt, kan de computer direct uit de buffers lezen terwijl het volume nummer nog altijd wordt gecontroleerd als je een disk uit de drive hebt gehaald en er dan een (andere) hebt ingestopt. (2.2) De environment variabele expert. Zoals hierboven staat omschreven zet dos 2.xx een volume nummer op de disk tijdens het formateren zodat het zichtbaar is of de disk is verwisseld. Het is echter zo dat dos 1.xx dit nog niet deed, wat dus inhoud dat de computer niet kan zien of je een onder dos 1 geformatteerde disk hebt verwisseld. Nu is msx dos 2.31 zo geschreven dat de computer aanneemt dat er een nieuwe disk in de drive zit zodra je een dos 1.xx disk eruit haalt (en weer erin stopt), zodat er toch niet veel kan misgaan met het gebruik van de disk buffers. Hier is echter een uitzondering op: als het verwisselen gebeurt tijdens het uitvoeren van 1 commando. Vb: je typt DIR in, drukt snel op CTRL-S om de computer te pauzeren, verwisselt de disk en drukt op een willekeurige toets om de computer weer verder te laten gaan met uitvoering van het dir commando. De computer merkt dan niet dat de disk eruit is geweest en gaat dus verder met de inmiddels verkeerde informatie in de disk buffers. Dit kan ook gebeuren als je een programma aan het draaien bent en bijvoorbeeld tijdens het saven de disk verwisseld. Om nu te voorkomen dat er ineens informatie uit een verkeerde disk buffer op disk komt (ook de schrijf operaties lopen gebufferd) weigert dos 2.31 om programma's op te starten vanuit een dos 1.xx disk. Als je nu toch nog programma's wilt kunnen draaien vanuit dos 1.xx diskettes, dan kun je de computer zeggen dat je een ervaren gebruiker bent en dat je dus niet zomaar de disk gaat wisselen tijdens het laden/saven van data. Dit doe je met het volgende commando: SET EXPERT ON Hiermee geef je de speciale environment variabele EXPERT de waarde ON. Wil je dit weer uitzetten (omdat bijvoorbeeld je onervaren broertje/zusje je computer wil gebruiken) dan kun je iets intypen als: SET EXPERT OFF of SET EXPERT = zonder verder iets erachter. Met dit laatste commando wis je de complete environment variabele EXPERT en ook bij het ontbreken van deze variabele neemt de computer aan dat je onervaren bent. (2.3) Het kunnen uitlezen van de zogenaamde environment variabelen Zoals wellicht bekend kun je environment variabelen al vanaf dos 2.20 bekijken door gewoon SET in te typen (je krijgt dan een lijst van alle ingestelde environment variabelen) of door SET Variabele in te tikken (in dit laatste geval zie je alleen de inhoud van deze ene variabele). Het is vanaf dos 2.31 echter ook mogelijk om een environment variabele te gebruiken in commando's, batch programma's, het path (zoek pad), etc. Dit doe je door een procent teken voor en achter de variabele naam in te tikken. Vb: Eerst heb ik met: SET MijnNaam = Alex de env. variabele 'MijnNaam' aangemaakt en deze de waarde 'Alex' gegeven. Als ik vervolgens intyp: ECHO Hallo %MijnNaam%, hoe gaat het met jouw ? dan zal de computer dit uitvoeren alsof ik had ingetypt: ECHO Hallo Alex, hoe gaat het met jouw ? en dus de tekst: Hallo Alex, hoe gaat het met jouw ? afdrukken. De tekst %MijnNaam% wordt dus intern vervangen door de waarde van de env. variabele MijnNaam. Dit gebruik maken van een waarde van een env. variabele kan overal waar je normaal onder msx dos gewone teksten moet intypen. (2.4) Het voorwaardelijk kunnen uitvoeren van commando's. In msx dos 2.31 zit een nieuw commando ingebouwd: Het IF commando. De exacte syntax is als volgt: IF Voorwaarde Commando (het hoeft uiteraard niet perse in hoofdletters.) Als extra hulpmiddel zijn er nog een paar nieuwe commando's die je als voorwaarde kunt gebruiken: - A == B Vergelijk A en B met elkaar. - NOT A Draai de uitkomst van de voorwaarde A om. - EXIST A Kijk of het bestand A bestaat. Je kunt het gebruik van het IF commando ook combineren met het uitlezen van environment variabelen. Vb1: IF %MijnNaam% == Alex ECHO Hallo schrijver van Fastcopy en Super Music Editor Als je de env. var. MijnNaam de waarde Alex had gegeven zal de computer: Hallo schrijver van Fastcopy en Super Music Editor op het scherm zetten, bij een andere waarde van MijnNaam gebeurt er nu niks. Vb2: IF NOT %MijnNaam% == Alex ECHO Hallo %MijnNaam% Als de env. var. MijnNaam ongelijk aan Alex is, zal de computer: Hallo %MijnNaam% afdrukken. (met op de positie %MijnNaam% de waarde die je in MijnNaam had gestopt). Vb3: IF NOT EXIST H:\TED.COM COPY A:\TED.COM H:\TED.COM Als het programma TED.COM nog niet in de hoofd directory van de ramdisk stond, zal TED.COM vanuit de hoofd directory van de A drive naar de ramdisk worden gekopieerd. Dit laatste voorbeeld is vooral handig als je het in een batchfile gebruikt. Als je bijvoorbeeld veel met ted werkt, kun je een batchfile aanmaken met de naam INITED.BAT met daarin bovenstaand voorbeeld. Deze batchfile zet je dan op dezelfde disk als ted. Als je nu ted wilt gaan draaien maar je hebt net nog iets anders gedaan en je weet niet meer of ted nog op de (snelle) ramdisk staat, kun je intikken INITED. Dan zal ted vanzelf naar de ramdisk worden gekopieerd als hij er nog niet opstond, terwijl het batchprogramma niets doet (en dus zeer snel klaar is) als ted nog op de ramdisk stond. (3) DE ROM DRIVE EN DE SRAM DRIVE Zoals boven al vermeld zit er in de GT een rom drive die je kunt activeren door de Boot drive knop in de linker stand te zetten. Op deze rom drive staat de ingebouwde software zoals: -MSX DOS 2.31 (msxdos2.sys en command2.com). -De shell van MSX VIEW (De shell is een grafisch systeem met een aantal routines voor de scherm en disk afhandeling van alle msx view programma's, in deze shell zitten tevens een aantal functies die je rechtstreeks kunt gebruiken, zoals kopi‰ren van programma's, formatteren van diskettes, opstarten van programma's, etc. Naar mijn menig is deze shell echter een stuk slechter opgezet als bijvoorbeeld Ease van Philips). -Een aantal karakter sets, printer drivers, en andere bestanden voor msx view. (Let op: bij msx view zitten helaas alleen printer drivers voor de Japanse kanji printers, er worden 4 panasonic printers en 1 sony printer ondersteund. Ondanks het feit dat ik de shell ronduit slecht vindt, is het ontbreken van een driver voor bijvoorbeeld de philips nms serie of de star en epson printers toch jammer. Dit omdat de programma's die onder view draaien, zoals het dtp pakket, de tekstverwerker, etc. best wel uitgebreid zijn). -De kleuren tekst verwerker. Dit is dezelfde tekst verwerker die ook in de turbo-r fs-a1st te vinden is. Hij zit geloof ik ook nog in een paar Japanse msx 2+ modellen. Op de GT kun je deze tekstverwerker onder andere opstarten door hem onder msx view aan te klikken met de muis. Het is het 2-de symbooltje van links (het A4 blaadje) in het grote kader. Behalve deze rom drive zit er in de GT ook nog een sram drive van 16 KB. Deze sram drive is een speciale (kleine) ram drive die zijn informatie ook vasthoud als je de computer uitzet !!! Hiertoe zit er onder in de computer een ruimte voor 2 batterijen. Als je de batterijen verwijdert houdt de sram drive de informatie nog ongeveer 10 seconden vast. Hier kun je gebruik van maken als je de batterijen wilt verwisselen als ze bijna leeg zijn. Als je de batterijen snel genoeg verwisselt gaat er geen informatie verloren !!! Het drive nummer van de rom drive volgt altijd direct op dat van de gewone drive(s). Als je dus met CTRL opstart en maar 1 gewone (logische) drive hebt, zal de rom-drive drive B: zijn. Als je zonder CTRL opstart en dus 2 gewone (logische) drives hebt, zal de rom-drive drive C: zijn. Als je een hard-disk aan je msx koppelt, dan komt deze normaal voor de diskdrives, dus dan schuift dit allemaal op. Als je bv. een hard-disk met 1 partitie hebt (dus opgedeeld als 1 grote drive) dan krijg je de volgende situatie: A: hard disk B: floppy drive 1 C: floppy drive 2 (eventueel logische drive) D: rom disk E: sram disk De sram-drive heeft altijd een nummer dat 1 hoger ligt dan dat van de rom-drive. Als je de computer pas hebt gekocht en er net een nieuwe batterij in hebt geduwd, kan het gebeuren dat er troep in de sram drive zit (net zo als met een ongeformatteerde floppy). Aangezien de ingebouwde software naar de sram drive kijkt (daar kom ik later nog op terug) kan het gebeuren dat de computer dan niet goed opstart vanuit de rom drive !!!!!! Als dit het geval is moet je de computer opstarten met de ESC toets ingedrukt, de sram-drive wordt dan namelijk automatisch helemaal gewist. Dit wissen gebeurt alleen als je de Boot drive schakelaar op de rom-drive hebt staan. De turbo-r GT wist tevens de klokchip instellingen (set screen, set adjust, set prompt en dat soort basic commando instellingen), dit gebeurt ALTIJD, dus ook als je de boot drive op A: had staan. Let op: als je een rom cartridge hebt die je met ESC kunt omzeilen (zoals de Philips Music Module), laat dan de ESC toets direct na de BEEP los. Op dit moment heeft de cartridge de ESC toets al gezien, terwijl de GT opstart routine er dan nog naar moet kijken. Blijf je de ESC toets na de BEEP nog vasthouden, dan wordt de inhoud van alle sram gewist !!!! Probleem met harddisks: De initialisatie software van de Nederlandse scsi interfaces is niet al te best geschreven: als MSX DOS 2.xx in een hoger slot zit dan de harddisk, dan ziet de harddisk MSX DOS 2.xx niet. Om dit probleem te omzeilen is het nodig dat er een EXTRA MSX DOS 2.xx in een lager slot wordt gestopt dan de harddisk, dit kost dus een extra slot. Als je zo'n harddisk met losse (of ingebouwde) DOS 2 hebt, hoef je gelukkig MSX DOS 2.31 niet te missen; MSX DOS 2.31 is namelijk zo geschreven dat een lagere versie van MSX DOS automatisch software- matig wordt uitgeschakeld, zodat dan verder kan worden gegaan met de nieuwste versie van DOS. Het is evengoed jammer dat er een extra slot nodig is, alleen om de harddisk goed te kunnen laten opstarten, maar hier zal (hopelijk) ooit nog wel eens verandering in komen. (3) HET OMZEILEN VAN MSX VIEW Als je de GT nog maar net hebt en je hebt al deze teksten over rom drives met daarop dos 2.31 e.d. gelezen, denk je misschien: het is wel leuk dat ik de GT kan booten vanuit de rom-drive, maar wat heb ik eraan. Altijd als ik dat doe kom ik in die (trage, afgrijselijke ???, ...) msx view terecht. Het gaat veel sneller om te starten vanuit een disk in de A-drive. Dit is in eerste instantie inderdaad waar. Je kunt echter heel snel msx view verlaten door op GRAPH Q (quit) en vervolgens op GRAPH Y (Yes, ik weet super zeker dat ik wil quiten) te drukken. Om nu te voorkomen dat de computer weer opstart moet je een AUTOEXEC.BAT en een REBOOT.BAT batch file op de sram-drive zetten. Het is namelijk zo dat op de rom-drive een AUTOEXEC.BAT staat, die eerst uitzoekt wat het nummer van de sram-drive is en dit in de environment variabele SRAMD zet. Vervolgens voert de autoexec.bat het volgende commando uit: IF EXIST %SRAMD%\AUTOEXEC.BAT %SRAMD%\AUTOEXEC.BAT %1 %2 %3 %4 %5 %6 %7 %8 Dit houdt dus in dat een autoexec.bat op de sram-drive automatisch wordt opgestart (terwijl bij afwezigheid van zo'n autoexec.bat op de sram-drive de autoexec.bat op de rom-drive verder gaat met het opstarten van msx view). Ook de reboot.bat die op de rom-drive staat, kijkt naar de sram-drive om een eventueel daar aanwezig reboot.bat op te starten (zoals wellicht bekend wordt een reboot.bat altijd door dos 2.xx uitgevoerd als je onder basic _system hebt ingetypt). Voor autoexec.bat en reboot.bat kun je bijvoorbeeld de volgende twee programma's gebruiken: (3.1) AUTOEXEC.BAT echo Welkom gebruiker van een XelaSoft batch file ramdisk 336 /d echo De ramdisk is aangemaakt vol h:Ramdisk set expert on set prompt on set vdname=off set help=a:\help path +h:\;%sramd%\;%sramd%\utils\;a:\ %sramd%\reboot %1 (3.2) REBOOT.BAT buffers=15 set time 24 echo echo Typ help voor hulp en uitleg over dos 2.31 echo (c) 1989, 1992 by XelaSoft echo set temp=h:\ h: (4) HET TOCH NOG KUNNEN OPSTARTEN VAN MSX VIEW Als je bovenstaand proces hebt uitgevoerd kun je niet meer zomaar in msx-view komen. Normaal voeren namelijk de autoexec.bat en de reboot.bat op de rom-drive een aantal initialisaties uit die nodig zijn voor een effectief gebruik van msx view. Om nu toch nog msx view te kunnen opstarten kun je de volgende 2 batchfiles op je sram drive zetten: (4.1) DOVIEW.BAT if not %vdname%==on %sramd%\dov2 %vd% buffers=10 set view=%vd%\view set viewdata=%sramd%\;%view% set viewbin=h:\;%vd%\view\bin set viewda=h:\;%vd%\view\da set viewpd=%sramd%\ set viewovl=%vd%\view\ovl set viewfont=%vd%\view\font set home=%vd%\home set clip=%vd%\home\clip set temp=h:\temp set prompt on path -a:\ path +%vd%\utils;a:\; cd %home% view %2 %3 %4 %5 %6 %7 %8 %sramd%\reboot %sramd% (4.2) DOV2.BAT set vdname=on if %sramd%==B: set vd=A: if %sramd%==C: set vd=B: if %sramd%==D: set vd=C: if %sramd%==E: set vd=D: if %sramd%==F: set vd=E: if %sramd%==G: set vd=F: if %sramd%==H: set vd=G: md h:\temp set temp h:\temp %vd%\utils\viewsys %sramd%\doview MSX view kun je nu opstarten door DOVIEW in te typen. Dan is het ook nog zo dat de meeste msx view toepassingen op een losse disk staan. Om snel en soepel met msx view te kunnen werken is het het beste om al deze files in de ram-disk te zetten. Hiertoe kun je de volgende 2 batch files op je msxview schijf zetten. (4.3) INIVIEW.BAT if %sramd%==B: set vd = A: if %sramd%==C: set vd = B: if %sramd%==D: set vd = C: if %sramd%==E: set vd = D: if %sramd%==F: set vd = E: if %sramd%==G: set vd = F: if %sramd%==H: set vd = G: md h:\temp copy a:\view\bin\*.* h:\temp copy a:\view\pd\*.* h:\temp copy a:\view\font\*.* h:\temp %vd%\utils\viewsys a:\doview (4.4) DOVIEW.BAT (deze wijkt iets af van doview.bat voor de sram drive) %vd% buffers=10 set view=%vd%\view set viewdata=%sramd%\;%view% set viewbin=;;h:\;%vd%\view\bin;h:\temp set viewda=;;h:\;%vd%\view\da;h:\temp set viewpd=%sramd%\;h:\temp set viewovl=%vd%\view\ovl;h:\temp set viewfont=%vd%\view\font;h:\temp set home=%vd%\home set clip=h:\temp set temp=h:\temp set prompt on path -a:\ path +%vd%\utils;a:\;h:\temp cd %home% view %2 %3 %4 %5 %6 %7 %8 %sramd%\reboot %sramd% Je kunt nu de volledige msx view initialiseren en opstarten door INIVIEW in te tikken. Op de schijf van msx view staan ook nog een paar (voorbeeld) batch files. Bekijk ook deze eens een keertje ter studie ende vermaak en pas de batchfiles aan/maak eigen batchfiles naar smaak en behoeften. (5) DEZE TEKST INSTALLEREN VOOR HET HELP COMMANDO Deze tekst is zo geschreven dat ze geschikt is voor het msx dos 2.xx help commando (80 koloms pagina opmaak, extensie .hlp). Dit houdt in dat je deze tekst in de directory A:\HELP kunt zetten en dan op je gemak kunt bekijken met HELP TURBOGT. Let wel op dat je de env. variabele HELP dan ook op A:\HELP hebt gezet. Als je deze env. var. liever ergens anders op hebt staan kan dit uiteraard ook, zet dan wel deze tekst in de directory waar HELP naar verwijst. (bijv. met COPY TURBOGT.HLP %HELP% ) Veel succes met je turbo r FS-A1GT A. Wulms