Home
Arnor UTOPIA User Manual
Contents
1. followed by any PROTEXT or MAXAM text The area between End of program and First free location is occupied by BASIC variables The area between Last free location and HIMEM is occupied by BASIC strings Examples status Start of program amp 0170 End of program amp 223C First free location amp 223D Last free location amp A36F HIMEM amp A36F WIDTH setting 132 SYMBOL AFTER 240 Program size 8397 bytes Free memory 31027 bytes 23 TOKENS display expansion strings Syntax TOKENS lt buffer size gt If no parameter is supplied the strings associated with all the expansion tokens are listed The tokens 150 to 159 are set by UTOPIA To set your own definitions using the BASIC command KEY it may be necessary to clear space in the expansion string buffer To do this use the command NOKEYS If a parameter is supplied with the TOKENS command a new expansion string buffer is created of the specified size and the UTOPIA expansion strings are initialised lt buffer size gt must be at least 49 If insufficient space is allocated as many of the expansion strings as will fit are set up This provides an alternative to INOKEYS to allow a program to set up its own definitions e g TOKENS 300 provides a 300 byte buffer for expansion strings Note On initialisation UTOPIA causes the expansion tokens 141 149 to be associated with keys SHIFT f1 to SHIFT f9 and the tokens 150 159 with CTRL f0 to CTRL f9 So to define
2. permission of the copyright holder Software piracy is theft The UTOPIA program was developed using the MAXAM assembler ROM This manual was written on the PROTEXT word processor MAXAM and PROTEXT are both available in ROM from Arnor Arnor Ltd 611 Lincoln Road Peterborough PEI3HA 1 INSTALLATION UTOPIA is supplied in a 16K EPROM which can be fitted into any available ROM expansion board You may find that the legs of the EPROM will need straightening a little in order to fit it Do this with extreme care by holding the EPROM in the centre avoid touching the legs and pressing the side of the legs against a flat surface Keep the EPROM away from sources of electrostatic charge such as the monitor screen ROM numbers Each ROM when installed must have a unique ROM select number so that the firmware may access it UTOPIA is a background ROM which means it provides facilities that can be used by other ROMs such as BASIC The number associated with a background ROM must lie between 1 and 15 with the 1 0 firmware as on the CPC464 it must be between 1 and 7 UTOPIA may be installed with any valid select number except 7 but for the best use the select number should be less than 7 This is because AMSDOS occupies ROM 7 and UTOPIA must have a lower number in order to intercept some of the AMSDOS commands Similarly UTOPIA should have a lower select number than that of MAXAM if fitted If you have the Arnor AD 1 or AD 2 cartridge
3. Pressing SHIFT with the cursor up and down key swaps between the two halves of the sector The left part of the screen shows the hexadecimal representation and the right part shows ASCII Each can be edited simply by overtyping the displayed values Use CTRL with the cursor keys to move between sectors as shown below When you have finished editing a sector you will need to write the sector to the disc This is not done automatically so if the alterations are displayed on the screen and you move to a new sector the disc will not be changed To save the changes press CTRL COPY The current sector as it is displayed on the screen is copied to the disc The next sector is then read and displayed Corrupted discs etc If a read error occurs the message Unable to read sector move to new sector or press ESC is displayed This usually means that DEDIT was trying to read a non existent sector this will happen it you enter a sector number corresponding to a different disc format or it you are trying to access a protected disc If neither of these are the case then you probably have a corrupted disc It may be that there is just one bad sector though in which case you can use the commands below to move to another sector or track Before consigning the disc to the bin reset the machine completely and try again also try other discs in the case the drive is faulty DEDIT offers the following commands TAB switch between hex and ASCII editing SHIF
4. changed from RUN to RUN DISC This allows the use of an auto boot facility with disc Save a BASIC program called DISC which performs any required action e g running a BASIC or machine code program setting and paper colours then in future you just need to insert the disc and press CTRL ENTER 2 Expansion tokens 150 to 159 are associated with the keys fO to f9 0 to 9 at the right of the keyboard when CTRL is pressed 3 Expansion tokens 141 to 149 are associated with the keys f1 to f9 1 to 9 at the right of the keyboard when SHIFT is pressed 4 The expansion tokens 150 to 159 have strings assigned to them The effect of 2 and 3 is to define the following function keys CTRL f0 INK 0 13 INK 1 0 BORDER 10 CTRL f1 LIST CTRL f2 MODE 2 CTRL f3 CAT CTRL f4 JHELP HELPR CTRL f5 TOKENS CTRL f6 JSTATUS CTRL f7 JPROTEXT CTRL f8 M 2 CTRL f9 JERA BAK CTRL f0 produces colours suitable for reading text on a colour monitor CTRL f7 and CTRL f8 are only of use of the PROTEXT word processor and the MAXAM assembler respectively Both of these acclaimed programs are available on ROM and disc from Arnor Note that if you have a program which sets up key expansions the error Improper argument will be displayed This is because the UTOPIA key definitions use all the necessary storage space In this case use the command NOKEYS which cancels the UTOPIA definitions THE COMMANDS IN DETAIL The major part of this manual
5. details each command in alphabetical order The following headings are used though they are not all used in every case 1 Syntax The parameters required by the command are listed on one line but don t forget you can just press ENTER or RETURN after the name to obtain self explanatory prompts for all parameters The following conventions and abbreviations are used in the syntax descriptions lt gt an item enclosed in parentheses is optional 2 Description The use and effect of the command explained 3 Examples Examples illustrating the use of the command and the output produced by the command 4 Technical notes These notes are included for those who are interested They are concerned with how the command works rather than how to use the command They may therefore assume certain knowledge about the workings of the Amstrad computer Don t worry though they can be safely ignored 5 Related commands A list of commands that are either used in association with the command just described or whose description throws some light on its use ACCESS set access attributes disc only Syntax ACCESS lt ambiguous filename gt lt attribute gt Attributes P set file s to Read Only U set file s to Read Write S set file s to SYS status D set file s to DIR status Every file stored on disc has two access attributes The first of these simply says whether the file is protected against alterion or deletion Wh
6. different way to the first version It reads the disc directory and copies files directly by loading disc sectors into memory and writing them out on the destination disc Any previous file of the same name will be renamed with a BAK suffix as you would expect If the operation of COPY is aborted or an error occurs Disc full or directory full the part copied file will be left with the suffix and the original file will remain intact Any files already on the disc that match the ambiguous filename but have a suffix will be deleted Related commands DELETE DISCCOPY DEDIT Disc editor Syntax DEDIT lt drive gt lt track gt lt sector gt DEDIT allows the examination and direct alteration of the contents of a disc If a sector number is specified DEDIT will attempt to read that sector Otherwise it will determine the format of the disc and read the first sector if the required track If no track number is given DEDIT assumes track 0 The top line of the screen will show the drive A or B the track number and the sector number Sector numbers depend on the format of the disc but are always determined automatically For reference though they are as follows System or Vendor format amp 41 to amp 49 9 sectors per track Data only format amp C1to amp C9 9 sectors per track IBM format 1 to9 8 sectors per track Each sector is 512 bytes long and the display shows half of a sector at a time in 80 column mode
7. function keys you need only use the KEY command and not KEY DEF Example tokens 128 0 129 1 130 2 1313 132 4 133 5 134 6 135 7 136 8 1379 138 139 140 RUN DISC 141 142 143 144 145 146 147 148 149 150 INK 0 13 INK 1 0 BORDER 10 151 LIST 152 MODE 2 153 CAT 154 HELP HELPR 155 TOKENS 156 STATUS 157 PROTEXT 158 M 2 159 ERA BAK Related command NOKEYS TYPE type ASCII file Syntax TYPE lt filename gt TYPE will read a file from tape or disc and list the contents on the screen Tab characters are acted upon taking tab positions at every eighth column Note TYPE closes the input file if there is one 24 U execute UTOPIA command Syntax U lt command name gt lt command parameters gt This command is provided for use when another ROM is intercepting a command meant for the UTOPIA ROM It simply causes the UTOPIA command to be executed as if the other ROM were not present Example U ROMOFF 7 Related command XROM VARS display currently defined variables Syntax VARS A complete list of all currently defined variables excluding arrays is produced The variables are listed in the order integer variables real variables string variables Integer and string variables are listed with their current value Integers being shown in decimal and hexadecimal The type of each variable is indicated by the appropriate type marker integer real or string Example vars COUNT 1
8. not been used The type of each array is indicated by the appropriate type marker for real for integer for string Examples Jjarrays VECTOR 9 A 13 6 Related commands FNS VARS C calculate value of expression Syntax C This command always prompts for an expression The expression may contain the following integer constants expressed in decimal hexadecimal prefixed by amp or binary prefixed by and the operators and The result is evaluated modulo 65536 that is the two least significant bytes of the result are displayed The result is displayed in two ways the hexadecimal and unsigned decimal If the result is greater than 32767 the result is also shown in signed decimal form Calculation is from left to right Example The BASIC expression evaluator is unable to cope with certain hexadecimal calculations because it always treats integers as signed numbers The C command avoids this problem C Expression amp 9a15 amp 7858 Value is amp 21BD 8637 CALL Call machine code routine Syntax CALL lt address gt lt a gt lt bc gt lt de gt lt hl gt The routine at the specified address is called using any parameters to set the values of the registers A BC DE HL in that order Some or all of the register values may be omitted in which case those registers are set to zero On return from the routine the register values are displayed Examples This command is useful f
9. 5 amp 000F SCORE 6003 amp 3E83 TOTAL REPLY yes Related commands ARRAYS FNS VERIFY verify file content Syntax VERIFY lt filename gt lt address gt lt length gt The function of VERIFY is to compare the contents of a part of memory with the contents of a file and to list all differences between the two It can be used in three ways i to verify the current BASIC program If just a filename is specified that file will be compared with the current BASIC program ii to verify a complete file Enter a filename and a start address The file will be compared with the contents of memory starting at that address and continuing to the end of the file iii to verity a block of memory Enter a filename start address and length of memory in bytes The complete block of memory will be compared with the file If the end of the file is reached before the end of the block of memory a message to that affect is displayed This option allows the possibility of verifying just part of a file 25 If verification is successful the message Successful is displayed It not the memory addresses where memory and file differ are listed MEDIT can he used to examine those memory locations Examples 1 VERIFY prog compare BASIC program with file prog 2 VERIFY mem amp 3000 560 Compare 560 bytes of memory starting at amp 3000 with the file mem Related commands LOAD SAVE SAVEA VTEXT VTEXT ve
10. COPY copy file or files disc only Syntax COPY lt source drive gt lt destination drive gt lt ambiguous filename gt This is a fast copy for disc users equivalent to the CP M function FILECOPY All files matching the ambiguous filename are copied from the disc in the source drive to the disc in the destination drive the names being displayed as the files are copied If using a single drive system prompts are displayed when a disc needs to be inserted The two discs need not be of the same format the disc formats are detected automatically This can be used to copy an entire disc when DISCCOPY will not work enter COPY A B This command requires approximately 21K of memory to operate If there is not sufficient free memory the user memory will be overwritten before this occurs a warning message will be displayed and you must reply Y to the question Are you sure y n In this case any RSX commands that have been loaded from tape or disc will be lost COPY will do nothing if the destination disc contains a file of the same name which is write protected Note that files larger than 16K will be copied in 16K blocks so the disc will have to be inserted more than once for a single file If COPY is typed with no parameters this version is used if copying from disc to disc otherwise the single file version of COPY is used see above Technical notes This version of COPY works in an entirely
11. INTON turn on printer echo Syntax PRINTON After issuing the PRINTON command all subsequent screen output is copied to the printer In particular it can be used to print the output from commands such as TYPE LIST DUMP MDUMP HELP TOKENS FIND VERIFY VARS FNS and ARRAYS Also the output from BASIC programs can very easily be sent to the printer which can be very useful for debugging Technical note PRINTON works by intercepting TXT WRITE CHAR and TXT OUT ACTION Control codes sent to TXT OUT ACTION are correctly intercepted and not sent to the printer Related commands PRINTOFF SPOOL REN rename file Syntax REN lt new filename gt lt old filename gt This is the AMSDOS command and so is identical in effect and use to that described in the Amstrad manual The command is however intercepted and will prompt for parameters in the usual way thus allowing easy renaming of files from BASIC Note REN will only be intercepted if UTOPIA is fitted with ROM select number less than 7 20 REPLACE find and replace string in BASIC program Syntax REPLACE lt old string gt lt new string gt REPLACE works exactly as FIND to find the old string and then replaces it by the new string Tokenised or ASCII search can be selected just as for FIND In the former case both strings are tokenised The new string can be shorter the same length or longer than the old string BASIC variables remain defined even if the strings are of dif
12. T f move to top half of sector SHIFT move to bottom half of sector SHIFT move to start of line SHIFT move to end of line CTRL t move back one track CTRL move on one track CTRL move back one sector CTRL move on one sector CTRL COPY write sector to disc COPY copy sector to or from memory The prompt Copy to will be displayed Enter a memory address which is the start of a 512 byte amp 200 byte area of memory The current sector will be copied to this address If you press ENTER or RETURN the prompt will toggle between Copy to and Copy from Enter a number when Copy from is displayed and the 512 bytes at that address will be copied into the sector buffer it can then be edited and copied to the disc thus allowing individual sectors to be written ESC finish Examples 1 If a file is accidentally deleted it may with the appropriate knowledge of the CP M filing system be restored using DEDIT 2 If a disc becomes corrupted it may be possible to restore some or all of a file by copying the sectors into memory and then using SAVEA to save the recovered file onto another disc For example if a file consists of 3 sectors and the sectors can all be read by DEDIT copy the sectors to amp 1000 amp 1200 amp 1400 and then enter the command SAVEA file amp 1000 amp 600 If you have MAXAM or PROTEXT you can then edit the recovered file Related commands FORMAT MEDIT DELETE Delet
13. UTOPIA AMSTRAD CPC464 CPC664 amp CPC6128 UTOPIA 16K UTILITIES ROM Amstrad CPC464 CPC664 CPC6128 Introduction Utopia is a collection of useful commands relating to many aspects of Amstrad computing Although sold as single product UTOPIA is really a library of programs all contained on a single ROM chip for convenience Just like a library of books UTOPIA s commands can be classified by subject 1 Commands useful to BASIC programmers These include find and replace move lines and various commands displaying useful information such as the currently defined variables 2 Commands relating to files on tape or disc such as TYPE DUMP VERIFY and COPY 3 Disc user utilities All the essential facilities for the disc users are contained in the ROM With UTOPIA installed there is no longer any need to use your CP M disc to format or copy a disc 4 Commands relating to sideways ROMS and external commands These allow all sideways ROMs and all external commands to be listed and also the switching off of selected ROMs 5 Commands to echo all screen output to either the printer or a file Copyright Arnor Ltd 1985 Issue 2 revised 1986 v1 25 CP M and CP M Plus are trademarks of Digital Research Inc Amstrad is a registered trademark of Amstrad Consumer Electronics plc All rights reserved It is illegal to reproduce or transmit either this manual or the accompanying computer program in any form without the written
14. address in the header 2 JLOAD ascii amp 3000 Load file called ascii at amp 3000 Related commands LINK SAVE VERIFY 17 MDUMP memory dump Syntax MDUMP lt start address gt lt end address gt MDUMP displays the contents of memory in both hexadecimal and ASCII If no end address is specified it will continue to the end of memory amp FFFF Usually MEDIT is more useful for examining memory contents but MDUMP is needed in conjunction with PRINTON to send a memory dump to the printer Example MDUMP amp 170 Lists the memory area containing the BASIC Program Related command MEDIT MEDIT memory editor Syntax MEDIT lt address gt lt bank gt Examination and direct alteration of memory contents are possible with MEDIT When the command is entered the whole screen is used to display an area of memory with the selected address in the centre Hexadecimal and ASCII representations are shown and the contents may be altered simply by overtyping what is shown on the screen Pressing TAB will switch between hex and ASCII editing modes MEDIT offers the following commands TAB switch between hex ASCII editing modes SHIFT f move to top of screen SHIFT move to bottom of screen SHIFT move to start of line SHIFT move to end of line CTRL t move back one screenful CTRL move on one screenful CTRL move to top left CTRL move to bottom right ESC finish Editing the second bank
15. al for integer for string Note that only defined functions are listed so FNS should be used after running a BASIC program Example fns START Line 1000 ENTER Line 1250 Related commands ARRAYS VARS FORMAT format a disc Syntax FORMAT lt drive gt lt format type gt FORMAT does the same as the CP M utility FORMAT The format type is a single letter identifying one of two formats V Vendor Format This is the default and is the same as the System Format except that the CP M system tracks are left blank This format gives 169K per disc D Data Format This has no system tracks and gives 178K per disc The default if neither V nor D is specified is Vendor Format Technical note Discs are formatted in the recommended way with 2 to 1 sector interleave Related commands DISCCOPY DISCTEST 14 GDUMP graphic screen dump Syntax GDUMP A shaded screen dump which can be used in any mode and produces an accurate picture of the screen on the printer In mode 0 16 shades are used to represent the 16 colours on the screen 4 shades are used in mode 1 and black and white in mode 2 GDUMP works on any EPSON compatible printer including the AMSTRAD DMP 2000 all EPSON printers CANON printers and the KAGA TAXAN HELP list sideways ROMs or external commands Syntax HELP lt rom number gt HELP with no parameter will list sideways ROMs All foreground and extension ROMs will be listed Those background ROMs that
16. ble the numbers shown are for a machine with AMSDOS UTOPIA MAXAM and PROTEXT ROMs all initialised UTOPIA COMMAND SUMMARY ACCESS lt afn gt lt attr gt Set access attributes ARRAYS List currently defined arrays C Calculate value of expression CALL lt addr gt lt a gt lt bc gt lt de gt lt hl gt Call machine code routine CAT lt drv gt Catalogue files CDUMP Character screen dump any printer COPY lt fn gt lt fn gt copy file tape or disc COPY lt drv gt lt drv gt lt afn gt copy file disc to disc DEDIT lt drv gt lt track gt Disc editor DELETE lt afn gt Selective file deletion DISCCOPY lt drv gt lt drv gt Copy disc DISCTEST lt drv gt Test disc for read errors RUMP lt fn gt Dump file contents ERA lt afn gt Delete file or files FIND lt str gt Find string in BASIC program FNS List currently defined functions 28 FORMAT lt drv gt lt format gt GDUMP HELP lt rom gt HELPR INFO lt afn gt LINK LIST lt fn gt LOAD lt fn gt lt addr gt MDUMP lt addr gt lt addr gt MEDIT lt addr gt lt bank gt MOVE lt line gt lt line gt lt line gt NOKEYS NORSX PRINTOFF PRINTON REN lt fn gt lt fn gt REPLACE lt str gt lt str gt ROMOFF lt roms gt ROMON lt roms gt Format disc Graphics screen dump EPSON compatible printers List sideways ROMs or external commands List RSX commands Display information about fi
17. dcards are allowed in the string for an ASCII search A wildcard is a character which will match any character in the BASIC program text A wildcard is specified in the string by typing a question mark Any number of wildcards may be used Example FIND f e Finds all 4 character ASCII strings starting with f and ending with e Restricting the search range The search operation can cover the entire program or any section of the program Before searching you will be prompted Start at line and Stop at line To search the entire program just press ENTER or RETURN in response to each otherwise enter the first and last line numbers of the section to which you want to restrict the search The line number where the string occurs is listed each time the string is found FIND is case sensitive that is letters typed on lower case will only match lower case letters in the program and capitals will only match capitals Notes If the string being searched for is very short 1 or 2 characters it may sometimes appear to find the string wrongly In fact it is finding the string in the BASIC text where it is part of a longer token such as a value of a variable Related commands REPLACE FNS List currently defined functions Syntax FNS The names of all functions and the line numbers in which they are defined are listed The type of the function is also indicated by the type marker after the name for re
18. e If the line does not exist the block is inserted at the point where the line would have been After the block has been moved the line numbering will be wrong because the line numbers are not altered So after using MOVE it is essential to renumber the program The RENUM command may not always renumber all references to moved lines Any reference not renumbered will be listed as Undefined line and must be corrected manually Example MOVE 200 340 1200 RENUM NOKEYS Syntax NOKEYS Clears the expansion tokens that UTOPIA defined on initialisation This can be useful at the start of a program that defined function keys because there would otherwise be insufficient room in the expansion string buffer for further definitions CTRL ENTER still gives RUN DISC this is not reset Use CALL amp BBO3 to reset this definition as well Related command TOKENS NORSX disable RSX commands Syntax NORSX All RSX commands i e external commands belonging to programs residing in RAM are disabled This is useful when developing RSX software since it is necessary to disable the commands before re installing them otherwise the command chain is made into a loop Example A loader program for testing RSX software 10 MEMORY amp 7FFF 20 INORSX 30 RUN rsxcode PRINTOFF turn off printer echo Syntax PRINTOFF After issuing the PRINTOFF command screen output is no longer copied to the printer Related command PRINTON PR
19. e file or files disc only Syntax DELETE lt ambiguous filename gt DELETE is similar to the AMSDOS command ERA the difference being that instead of just deleting each file matching the ambiguous filename the filename is displayed and the question Delete y n is displayed If Y is pressed the file will be deleted otherwise it will not If you realise you have made a mistake before DELETE has finished press ESC and no changes will be made Otherwise all the files you marked for deletion will be deleted together after all filenames have been displayed Files set to Read Only may not be deleted Related command ERA 11 DISCCOPY Copy disc Syntax DISCCOPY lt source drive gt lt destination drive gt DISCCOPY will copy a disc using one or two drives The question Are you sure y n will ask you to confirm that the copying is to go ahead If any key other than Y is pressed the copying will not proceed Any format of disc may be copied If the destination disc is unformatted or is of a different format it will be re formatted The use of this command will overwrite user memory and any RSX that has been loaded from disc will be lost Examples 1 Copying with a single drive DISCCOPY A A 2 Copying with a dual drive system DISCCOPY A B It is recommended that you always copy from drive A to drive B and NEVER the other way round and also that whilst copying the source disc is write protected If these precauti
20. e gt lt start address gt lt length gt SAVEA is the same as SAVE except that the block of memory is saved as an ASCII file Only three parameters apply since the ASCII file has no header in which to store the other information This command is provided for use with where only ASCII files may be used such as CP M applications Note SAVEA closes the output file if there is one Related command SAVE 22 SPOOL turn on spooling to file Syntax SPOOL lt filename gt When the SPOOL command is issued the specified file is opened All subsequent screen output is then copied to that file until a SPOOLOFF command is issued Warning the use of some commands cause the output file to be closed and spooling to be turned off These include SAVE SAVE and the BASIC command CAT If this occurs the command SPOOLOFF must still be issued before SPOOL can be used again Note SPOOL closes the output file if there is one Related commands PRINTON SPOOLOFF SPOOLOFF turn off spooling to file Syntax SPOOLOFF The spool output file is closed and screen output is no longer copied to the file Note that this command is essential because the last block of the file is not written until this command is issued Related command SPOOL STATUS display status information Syntax STATUS The status information listed is shown by the example below The memory between Start of program and End of Program is occupied by the current BASIC program
21. en a file is created its access attribute is Read Write that is it is not protected The file can be protected using the ACCESS command with parameter P This sets the file to Read Only In order to save a new file or delete the file first use ACCESS without the parameter P Protected files are marked in the catalogue with an asterisk The second attribute sets the DIR SYS status of file Initially all files are DIR status which means they are listed in the directory If the file is set to SYS status using the parameter S the file is no longer listed by CAT or DIR The parameter D will return the file to DIR status Examples 1 ACCESS myprog P Sets file myprog to Read Only 2 ACCESS BAS P Set all BASIC program files to Read Only 3 ACCESS Set all files to Read Write 4 ACCESS secret s Hide files so they are not displayed by CAT Technical Note Use of ACCESS is equivalent to use of CP M command STAT Related commands CAT COPY DELETE ERA REN ARRAYS list currently defined arrays Syntax ARRAYS Acomplete list of all defined arrays is produces The dimensions of each array are given The arrays are listed in the following order all real arrays in the order they were defined all integer arrays in the order they were defined all string arrays in the order they were defined Only arrays that have been defined by the program are listed not arrays that appear in the program but have
22. er when commands are accessing the disc the computer does not scan the keyboard so it may be necessary to hold the ESC key down for about half a second Filenames If a filename is entered without an extension the AMSDOS convention is followed if the file is not found the suffix BAS is added if this is not found the suffix BIN is tried This applies to the following commands ACCESS COPY DELETE DUMP INFO LIST LOAD TYPE VERIFY VTEXT It does not apply to ERA and REN these work exactly as the AMSDOS command and are merely intercepted to allow easy parameter entry from BASIC The command SAVE creates a file with a BIN suffix if none is given Ambiguos filenames Many commands allow the use of ambiguous filenames An ambiguous filename contains one or more wildcard characters The wildcard characters are a this will match any single character in a filename uh this will match any string of characters in a filename Examples of use of wildcards kk all files BAK all backup files AT all 3 letter filenames ending in AT e g CAT MAT Function keys UTOPIA is present in the machine from the moment you switch on and all the commands are instantly accesible In fact by the time BASIC displays Ready for the first time UTOPIA has already done several things These are 1 It determines whether discs are being used If so the expansion string produced CTRL and ENTER this means the small ENTER key on the CPC464 and CPC664 is
23. es Note ERA will only be intercepted if UTOPIA is fitted with ROM select number less than 7 Related command DELETE FIND Find tokenised string in BASIC program Syntax FIND lt string gt Tokenising The FIND command will search for any string of BASIC text in the current BASIC program In order to use FIND to the best affect it is necessary to understand a little about how BASIC stores programs It would be very simple to search for a string if programs were stored exactly as you type them in but they are not For reasons of speed and compactness BASIC takes the lines of program as you enter them and converts them into a special code This operation is called tokenisation So for example if you enter the command PRINT in a program BASIC does not store the 5 letters of PRINT but instead the single number or token amp BF Similarly every BASIC keyword has a token BASIC also stores numbers and variables that occur in programs in a special way What this all means is that when you enter a string to be found it must be tokenised in exactly the same way before beginning the search ASCII search There are times though when you do not want the string to be tokenised before searching for example to search for string constants or items in REM or DATA lines FIND will carry out an ASCII search if you enter N in response to the question Tokenise y n Any other response will cause a tokenised search Wil
24. ferent lengths Care must be taken when replacing single character strings see note under FIND The old string may contain wildcards if the strings are not being tokenised see FIND The search may be restricted to a section of the program see FIND Example JREPLACE f flag Renable variable f to flag Related command FIND ROMOFF turn off all or selected ROM Syntax ROMOFF lt list of rom numbers gt ROMOFF causes the machine to be reset initialising only selected background ROMs If no parameters are given no background ROMs will be initialised otherwise all ROMs will be initialised except those specified Use the HELP command to determine the ROM numbers Warning ROMOFF will reset the machine completely and destroy memory contents Example JROMOFF 5 7 Turn off ROM 5 and the disc ROM Related Command HELP ROMON reset machine and turn on only selected ROMs Syntax ROMON lt list of rom numbers gt This complements ROMOFF the list of ROMS are those to be initialised This is most useful in the form of ROMON which turns off all ROMs except the disc ROM often useful to be able to run disc software The expansion RUN DISC will still be produced by CTRL ENTER even if UTOPIA was not initialised Warning ROMON will reset the machine completely and destroy memory contents Related Commands HELP ROMOFF 21 RUN load and execute file Syntax RUN lt filename gt This is
25. have been initialised are listed This means that if ROMOFF has been used to turn off some ROMs then only those that are available for use will be listed The information given is ROM select number ROM name version number ROM type and for a background ROM the address of it s upper workspace area This information can than be used to list the commands provided by any background ROM Enter the selected number of the required ROM as the parameter for HELP and all the commands will be listed Technical note The ROM name is taken from the name of the initialisation command that is the first name in the name table The version number is taken from bytes 1 to 3 of the ROM Commands such as the AMSDOS commands CTRL A to CTRL I are not listed Example HELP HELP n lists commands for ROM n HELPR lists RSX commands ROM 0 BASIC 1 10 foreground ROM 1 UTOPIA 1 25 back amp A2F4 ROM 2 PROTEXT 1 00 back amp A3F8 ROM 5 MAXAM_ 1 10 back amp A5FC ROM 7 CPM ROM 0 50 back amp A700 help 5 ROM 5 MAXAM 1 14 back amp ASFC MAXAM ASSEMBLE ASSEM CAT CLEAR FIND HELP M MAXOFF MODE MSH MSL RAMON RAMOFF MCLEAR MFIND MHELP Related commands HELPR ROMOFF 15 HELPR list RSX command Syntax HELPR This lists all external commands provided by RSXs that have been loaded from tape or disc in the same way that HELP n lists external commands provided by background ROMs Related command HELP INFO display information about fi
26. le or files Link BASIC program List ASCII file Load file Memory dump Memory editor Move BASIC lines Clear UTOPIA expansion strings Disable RSX commands Turn off printer echo Turn on printer echo Rename file Find and replace string in BASIC program Turn off all or selected ROMs Turn on selected ROMs SAVE lt fn gt lt addr gt lt len gt lt entry gt lt reload gt SAVEA lt fn gt lt addr gt lt len gt SPOOL lt fn gt SPOOLOFF STATUS TOKENS TYPE lt fn gt U lt command gt VARS VERIFY lt fn gt lt addr gt lt len gt VTEXT lt fn gt X lt rom gt lt command gt XROM lt rom gt lt command gt Save block of memory as binary file Save block of memory as ASCII file Turn on spooling to file Turn off spooling to file Display status information Display expansion strings Type ASCII file Execute UTOPIA command List currently defined variables Verify file contents Verify text Abbreviation for XROM Execute command in specified ROM ambiguous filename i e allows wildcards and Abbreviations lt fn gt filename lt afn gt lt str gt string lt addr gt memory address lt drv gt drive Aor B lt rom gt ROM number 29
27. le or files Syntax INFO tape only INFO lt ambiguous filename gt disc only The information displayed is taken from the file header When used on tape all standard files are listed on disc all files matching the ambiguous filename so in particular INFO will list all files on the disc Note that ASCII files have no header and zeros will be shown The information listed is as follows 1 File type The same characters shown by CAT on tape is ASCII amp binary unprotected BASIC Protected BASIC 2 Load address The address in memory to which the file will be loaded by default 3 Logical length The length of the file as stored in the file header 4 Entry address For machine code programs the address at which execution is to begin after the file has been loaded 5 Disc only Size The actual size of the file on the disc This is listed for all files whether they have a header or not This will be different to the logical length because the size includes the size of the header itself The size is a multiple of 128 bytes the smallest unit CP M handles All these numbers are shown in hexadecimal Note INFO closes the input file if there is one Example info LOAD LOGL ENTRY SIZE A DISC BAS 0170 006A 0000 0100 A DISC BIN amp 9000 2182 9156 2280 A PROG 0000 0000 0000 5E80 A REPORT 0172 7851 0000 7900 Related command CAT LINK link BASIC program Syntax LINK BASIC s internal p
28. mat entry of external commands Many of UTOPIA s commands can be used from within a BASIC program but it should be noted that such a program will not then run on a machine which does not have UTOPIA fitted Note for CPC464 users On the CPC464 it is not possible to enter string parameters on the same line as the command as shown in the manual Either let UTOPIA prompt for all parameters or use the commands from MAXAM or PROTEXT The HELP command can be used to list all UTOPIA s commands on the screen HELP lists all sideways ROMs including UTOPIA together with their ROM numbers Then HELP n where n is UTOPIA s ROM number will list all the external commands that are available HELP also displays the UTOPIA version number which should be quoted in any correspondence If you have ROMs produced by different companies you may find that there is a conflict of command names Where two or more ROMS each have a command with the same name the command in the lower numbered ROM will normally take priority UTOPIA includes a feature to override this if another ROM is intercepting a command meant for UTOPIA To do this type the command U You will then be asked for the command name after which the command will be executed as normal As far as possible UTOPIA follows BASIC in the use of the ESC key So for virtually all commands pressing ESC once causes the command to pause and a second press aborts the command another key resumes it Howev
29. of memory CPC6128 or RAM expansion The second parameter of MEDIT specifies a bank select request The 4 extra 16K blocks of memory on the CPC6128 are denoted 4 5 6 and 7 lt bank gt may be between 4 and 7 and causes the specified block to be switched in at amp 4000 and for the duration of the MEDIT command e g MEDIT amp 4000 7 to edit block 7 If you have a RAM expansion fitted that is compatible with the CPC6128 bank switching then MEDIT will also read this The bank select request in this case can be any number from 4 to 63 depending on the amount of RAM that you have fitted Note if a number less than 4 is used as a parameter then 4 is added to it before switching the memory Thus MEDIT 1 does the same as MEDIT 5 Related commands DEDIT MDUMP 18 MOVE move BASIC lines Syntax MOVE lt first line gt lt last line gt lt destination line gt It is often useful to be able to move a section of a BASIC program when reorganising or tidying up your program MOVE takes three parameters all of which are BASIC line numbers The first two line numbers define the block which is to be moved The line numbers specified need not exist if the first number does not exist the block is taken to start at the first line after that specified if the second number does not exist the block is taken to end at the last line before that specified The destination line determines where the block is to be moved to The block is inserted after the lin
30. ointers are set up correctly for the program in memory BASIC variables are cleared This can be used to recover programs that you have protected by mistake Example LOAD filename ILINK Related command LOAD LIST list ASCII file Syntax LIST LIST will read a file from tape or disc and list the contents on the screen numbering the lines Tab characters are acted upon taking tab positions at every eighth column Note LIST closes the input file if there is one Technical note If the file in of type ASCII LIST stops at a soft end of file amp 1A Related commands DUMP TYPE LOAD load a file into memory Syntax LOAD lt filename gt lt load address gt This LOAD command has much greater use than the equivalent BASIC command which only operates with binary files and only allows files to be loaded at an address greater than HIMEM Here there is no restriction on either file type or address and the command is of particular use in MAXAM for loading machine code or other files The file is loaded at the specified address or if the address is omitted to the load address from the file header In the case of ASCII files there is no header so an error message will be given if no load address is specified The load address to not checked in any way so ill chosen addresses may cause a system crash Note LOAD closes the input file if there is one Examples 1 JLOAD binary Load file called binary at the
31. ons are not followed it is almost inevitable that you will at some time copy the backup disc onto the working disc Related commands COPY DISCTEST FORMAT DISCTEST Test disc for read errors Syntax DISCTEST lt drive gt DISCTEST simply reads every sector of the disc in the specified drive If the disc is badly formatted or corrupted a Read Fail will occur at some point If this occurs try re formatting the disc If DISCTEST succeeds the message Successful is displayed The operation of DISCTEST is carried out automatically by DISCCOPY and FORMAT Related command FORMAT DUMP Dump file contents Syntax DUMP lt filename gt DUMP will read a file from tape or disc and display the contents of the file on the screen Both hexadecimal and ASCII representations are shown Note DUMP closes the input file if there is one Technical note When used on disc DUMP treats soft end of file amp 1A as a character in the file and continues to the hard end of file that is the end of a 128 byte block Related commands LIST TYPE ERA Erase file or files DISC only Syntax ERA lt ambiguous filename gt This is the AMSDOS command and so is identical in affect and use to that described in the Amstrad manual The command is however intercepted and will prompt for parameters in the usual way thus allowing easy deletion of files from BASIC ERA will also warn you if you attempt to delete all files as CP M but not AMSDOS do
32. or investigating the effect of machine code routines specially the firmware routines without the need to assemble any code This is not usually possible from BASIC because the BASIC CALL command does not allow values to be returned 1 CALL amp BBA5 241 Returns with HL containing the address of the character matrix for the ASCII code 241 2 CALL amp BB2A 68 Returns with A containing the character or token that the TAB key is translated to 68 is the key number of the TAB key 3 CALL amp BB87 0 0 0 amp 908 Checks whether the position row 8 column 9 is in the current window and alters HL if it is not CAT catalogue files Syntax CAT lt drive gt CAT is almost exactly the same as the BASIC command CAT the main advantage for disc users is that the drive to be catalogued may be specified allowing the cataloguing of drive B without altering the default drive The drive may be specified as A or B or as 0 or 1 Note CAT will use the AMSDOS commands A and B as necessary to select the required drive and afterwards restore previous setting Thus if the currently selected drive has no disc in it an error will occur in this case press C to cancel and note that the default drive will have changed Examples 1 CAT Catalogue current drive 2 CAT 1 Catalogue drive B Technical note The BASIC command CAT calls CAS INABANDON and CAS OUT ABANDON thus abandoning any open tiles This is not necessary though so CAT onl
33. rify text Syntax VTEXT lt filename gt VTEXT is a special verify command for users of PROTEXT or MAXAM The current text in memory is compared with the file VTEXT does not list all differences but stops at the first This is because it is likely that any difference was caused by text being inserted or deleted and in that case most of the subsequent bytes would give an error Example VTEXT letter Related command VERIFY XROM execute command in specified ROM Syntax XROM lt rom number gt lt command gt lt parameters gt XROM is provided for use when more than one background ROM has a command of the same name When this occurs the command in the lower numbered ROM is normally executed XROM allows the command in the higher numbered ROM to be called Use HELP to determine the ROM number you require XROM may be abbreviated to X Example XROM 5 CLEAR Related command U 26 27 APPENDIX Memory map RAM Address 0 firmware workspace 40 Background ROMs lower workspace area not used by Arnor ROMs 40 BASIC input buffer 170 BASIC program area BASIC variable storage PROTEXT MAXAM text area free memory BASIC string storage HIMEM 1 free memory if HIMEM altered A2F0 user defined characters A2F0 Background ROMs upper workspace including UTOPIA workspace 256 bytes ACOO BASIC workspace B100 firmware workspace C000 screen memory Addresses given in brackets are varia
34. roughly equivalent to the BASIC command RUN it loads a binary file at the address stored in the header and jumps to the execution address stored in the header or the start of the file if there is no execution address The file must be binary otherwise the message Cannot run file will be displayed and the file will not be loaded IRUN has two main advantages over the BASIC command RUN First it can be used from other programs such as PROTEXT and MAXAM Second the BASIC command causes a complete reset on return from the code so cannot be used to load RSXs etc RUN returns cleanly to the calling program Related commands CALL LOAD SAVE save block of memory as binary file Syntax SAVE lt filename gt lt start address gt lt length gt lt entry addr gt lt load addr gt Any block of memory can be saved and is specified as in the BASIC command SAVE by start address and length Again as in the BASIC command the fourth parameter is optional and specifies the entry address for machine code programs The fifth optional parameter is an addition to BASIC end allows the setting of a load address different to the address from which the file was saved This latter option is only available to disc users because the cassette firmware does not allow the load address to be set Note SAVE closes the output file if there is one Related commands LOAD SAVEA VERIFY SAVEA save block of memory as ASCII file Syntax SAVEA lt filenam
35. with MAXAM or PROTEXT that will take ROM 5 Select one of the remaining numbers for UTOPIA this will be done by choosing an appropriate socket and possibly fitting a link Refer to the documentation accompanying your ROM board for details When your UTOPIA ROM is installed switch on and type HELP This will list all ROMs If UTOPIA is listed then all is well and all the commands are ready for use if not or if the message Unknown command is displayed check that you have not chosen a ROM select number already occupied by something else USING UTOPIA Command entry UTOPIA s facilities are all available from BASIC MAXAM or PROTEXT as external commands They can also be used with other well written programs The commands are entered by typing a vertical bar followed by the command name The symbol is produced by holding down SHIFT and pressing Most of the commands take one or more parameters such as filename string to find These parameters can be entered in one of two ways i after the command name separated by commas ii by pressing ENTER or RETURN after the command name in which case UTOPIA will prompt for all required parameters Method ii allows a command to be used if you ve forgotten what parameters it takes The other advantage is that it allows the entry of string parameters easily from BASIC Method i can be very quick and convenient especially if used with MAXAM or PROTEXT which allow free for
36. y calls CAS IN CLOSE for tape and does not affect either stream for disc CDUMP character screen dump Syntax CDUMP Any text on screen will be copied to the printer Graphics will be ignored CDUMP will work on any printer COPY copy file tape or disc Syntax COPY lt new filename gt lt old filename gt This will copy a file from the current input filing system to the current output filing system If lt new filename gt is emitted the new copy will be given the same name as the old file If copying from tape both names may be omitted the first file will then be copied It copying from tape to disc the name will he truncated if it is too long Any type of file may be copied Note COPY closes any open files Examples 1 Copying from tape to tape or disc using the same name TAPE IN ICOPY 2 Copying a named file from disc or tape to tape TAPE OUT COPY progfile 3 Copying a file and renaming it COPY newname oldname 4 Copying file from drive A to drive B COPY b maxam a maxam Technical notes COPY copies the file byte by byte using CAS OUT CHAR It is requires 2K of free memory If copying onto tape the load address of the file will be lost This is because the firmware does not permit the setting of the load address field in the file header This does not APPLY if copying onto disc because AMSDOS allow the load address field to be set Related commands DELETE LOAD SAVE
Download Pdf Manuals
Related Search
Related Contents
Simon Hantaï - Académie de Toulouse IR-EXT-050C Rallonge IR par CAT5 Sony 530P Camcorder User Manual TYPE 26 - Rodania NEXT STAGE TSC TTP-345 label printer 「グン太君」 マニュアル - 株式会社エコ花と緑のネットワーク Bantam - Satloc Benutzerhandbuch Copyright © All rights reserved.