Home

SOLOS/CUTER User`s Manual

image

Contents

1. The entry point for WRBYT is C010 On entry Register A contains File 1 or 2 Register B contains the byte of data to transferred onto tape On exit Normal return Carry Flag cleared Error return Carry Flag set errors file NOT open or tains 256 followed by a then resets be caused by oe file previously used for reading SUBROUTINES cont Read Byte Routine RDBYT The Read Byte routine reads a single byte of data froma buffer file SOLOS fills this buffer as needed per read request Each time SOLOS fills the file buffer reads a block the CRC character is checked for data accuracy The entry point for RDBYT is COOD On entry Register contains file 1 or 2 On exit Normal return Register A contains data byte Carry and Minus Flags set mean end of file Error return Carry Flag set Errors are caused by file NOT open file previously used for writing CRC character error pressing MODE or Control while actually reading from the tape BwWN Close File Routine FCLOS The Close file routine closes the current file and resets the internal parameters for the next open operation It is very important to close the file after all data transfers are completed Failure to do so could result in lost data and prevent further open operations The entry point for FCLOS is COOA On
2. Escape sequence Function 1B 05 1B 06 1B 07 The third byte is output to the VDM at the current cursor position exactly as is regardless of this byte s value No check is made of this character Being a control character it is only placed into the VDM memory as is and the cursor is advanced one position 1B 08 The display speed is set to the value specified The speed ranges from 00 fastest to FF slowest 1B 09 This functions the same as escape sequence 01 The cursor is positioned to character position of the current display line F Cassette Tape Entry Points to SOLOS SOLOS contains subroutines to handle data transfer to and from two cassette units Both block by block and byte by byte access are available While performing any tape read the user can return to the present calling software program by pressing the MODE or Control key In block transfers each request results in tape movement and a transfer of an information block to or from a location in memory SOLOS uses block by block access to provide the tape commands In byte transfers on the other hand SOLOS buffers the data into 256 byte blocks doing cassette operations only once per 256 transfers BASIC uses byte by byte access for data files Other programs such as editors assemblers or special user written programs can also call the byte by byte routines if
3. SOLOS has four tape commands They are GET name unit addr Get a file from tape to memory SAVE name unit addrl addr2 addr3 Save file XEQ name unit addr Get then execute a file CAT unit Catalog of tape files TAPE COMMANDS cont Tape Commands in Detail Get a file from tape GET name unit addr This command transfers the specified or next tape file into memory If a name unit is given this command will search forward on the cassette until that file is found The addr parameter if given specifies the memory location at which the file will be loaded If the addr is omitted the file will be loaded as specified in the header Example GET TARGT 2 Result Gets the program WARM from tape unit 2 into memory as specified by the tape file header information Returns to SOLOS command mode Get then Execute XEQ name unit addr This command is an extension of the GET command which gets a tape file and executes as specified by the header information The unit and addr are optional and operate the same as with the GET command Example XEQ FOCAL Result Gets then executes a program named FOCAL from tape unit 1 Save a file SAVE name unit addrl addr2 addr3 This command transfers program or data onto a tape cassette file name name starting at addrl and ending at addr2 The na
4. CONSOLE COMMANDS Console Commands in Brief SOLOS has five console commands They are Command Function EXEC addr Begin program execution at addr ENTR addr Enter data into memory starting at addr TERM portin DUMP addrl addr2 portout CUST name addr Console Commands in Detai Dump memory data addrl to addr2 Enter Terminal Mode available under SOLOS only Insert or remove a custom command Execute Command EXEC addr This command begins program execution at memory location specified by addr Example EXEC 200 Enter Command ENTR addr Example ENTR 500 C3 00 01 1000 05 Result Beginning at memory location 500 the follow ing data was entered C3 00 01 The new memory location of 1000 was selected to enter the data 51 The slash terminated the ENTR command and returned to command mode Dump Command DUMP addrl addr2 This command at location displays seg addrl and e Example uential memory data on the screen starting nding with addr2 DUMP C02E C037 Result CO2E El DB FA 2F E6 01 C8 DB FC C9 Dumped the SOLOS keyboard input routine See listing Starting at memory location 02E and ending at memory location C037 Qa Terminal Command TERM CONSOLE COMMAN This by automatically se An omitted proceeds by sending
5. values command causes connection to an external computer or modem DS cont port I port O Available under SOLOS only the Sol system to become a video terminal for This command begins to the specified to 1 Execution then ting the I O pseudo ports port parameter will be set all Sol keyboard entries except cursor control to the specified Ou Input pseudo port tput pseudo port will be processed by Any input available from the the SOLOS display driver TERM Example Result Custom Command When a commands in RAM enter command table ficant When th non SOLOS command is entered will be searched and remove up to six custom command names from the custom Only the first two letters of the name are signi Keyboard data will be sent to the serial port and all data from the serial port will appear on the display screen CUST name addr definition removal a separate table of custom The CUST command is used to 2 to 5 letters specified by the CUST command will specified When th nam end of table nam command is not already in be entered into the When the addr is not specified the beginning address of SOLOS will be used specified on custom command table indicator the custom command table a new custom table having an execute address as the CUST command already e
6. serial a powerful tion set to opt f the inherent computer capabilities of tte configures the Sol 20 and one or stand alone computing built timize the convenience the Sol in hardware Sol 20 I O accessible to external programs from one entry point a standard feature in all future Sol system software produc less memory than would normally be used SOFTWARE INTERFACE permits user defined applications e INDUSTRY STANDARD SETTING CASSETTE I O CONTROL incl methods for loading and saving programs and commands execute programs after automatic e EXCLUSIVE CASSETTE I 0 ROUTINES al accessed on a byte by byte basis as byte b devic y byt appears as normal Thus ts for that will require I O routines routines for custom loading llow cassette files udes that to be though each file were a data transfer to and from cassettes I O and two cassettes can be used simultaneously to assemble and edit programs NEW DISPLAY CONTROL features found only in expensive video terminals including ESCAPE sequences for cursor positioning and character speed control e 19 COMMANDS to access the basic requirements of the Sol 20 control cassett in SOL In this man addr m data m OS ual eans eans file m eans name m eans port m unit m eans eans eans t
7. This command determines character display rate to the screen data 0 Fastest data FF Slo west Input Output Command Parameters The next two SET commands affect SOLOS input and output command paramete Set Out rs Command This command selects the data Un screen port I current der SOLOS COMMAN Under CUTER all n all cases the output pseudo por ou O ou SET O port tpu utp t driver routine to which SOLOS routes D mode text is always sent to the display ut goes to the current Output pseudo tpu t from each command is sent to the V SET COMMANDS cont The Output Pseudo ports command parameter values are 0 Video Display 1 Serial Output Port 2 Parallel Output Port 3 User Defined by SET COUT command Example SET O 1 DUMP 0 2F Result Select serial output port Dump 0 2F would be displayed but the data would go to the serial output port Set In Command SET I port This command selects the input driver routine to SOLOS All future input commands would come from the new selected input pseudo port The Input Pseudo port parameter values are 0 Keyboard 1 Serial Input Port 2 Parallel Input Port 3 User defined by SET CIN command Example SET I 1 Result SOLOS would expect the next command to come from the serial port inpu
8. L register pair as the beginning of the jump table This address is provided for two reasons Ls Third is should b CUTER may be located at any address in memory providing the means for programs to function with CUTER located at any address and the first byte of the jump table for SOLOS is different from the first byte for CUTER providing an easy means of dis tinguishing between SOLOS and CUTER the SOLOS jump table see next page All requests to SOLOS made based on this jump table and not to the actual routine addresses as scattered throughout SOLOS By using only this jump table the user can be assured of maintaining compatibility between SOLOS and CUTER 15 V SUBROUTINES cont JUMP TABLE Address Label Length Function co00 START 1 This byte allows power on reset of SOLOS It is 00 for SOLOS and 7F for CUTER providing an easy means of differentiating the exact operating system in use COO1 NIT 3 This is a JMP to the power on reset C004 RETRN 3 Enter at this point to return control to SOLOS command mode processor C007 FOPEN 3 Enter here to open a tape file COOA FCLOS 3 Enter here to close a tape file COOD RDBYT 3 Enter here to read a byte from an open tape file COLO WRBYT 3 Enter here to write a byte to an open tape file c013 RDBLK 3 Enter here to read one tape block into memory bas
9. M0100 tm soros curerR USER S MANUAL PROCESSOR TECHNOLOGY CORP SOFTWARE TECHNOLOGY CORP 6200 Hollis Street P O Box 5260 Emeryville CA 94608 San Mateo CA 94402 415 652 8080 415 349 8080 C 1977 by Processor Technology Corporation IMPORTANT NOTICE This copyrighted software product is distributed on an individual sale basis for the personal use of the original purchaser only No license is granted herein to copy duplicate sell or other wise distribute to any other person firm or entity This software product is copyrighted and all rights are reserved SOFTWARE WARRANTY Software Technology Corporation warrants this Software Product to be free from defects in material and workmanship for a period of three months from the date of original purchase This warranty is made in lieu of any other warranty expressed or implied and is limited to repair or replacement at the option of Software Technology Corporation transportation and handling charges excluded To obtain service under the terms of this warranty the defectiv part must be returned along with a copy of the original bill of sale to Software Technology Corporation within the warranty period The warranty herein extends only to the original purchaser and is not assignable or transferable and shall not apply to any software product which has been repaired by anyone other t
10. a few specific conventions and calling sequences are followed File Header The file header for SOLOS provides specific attributes to a file These attributes consist of a five ASC character name and a file type File name serves two functions Ts It permits easy human identification of the file and 2 It provides the identification for which SOLOS searches to find the correct file File type is used in SOLOS to prevent certain operations such as automatic XEQ if the file is not of the proper type 19 V SUBROUTINES cont When calling open the register pair HL should point to a memory location that contains the header Following is the layout of a SOLOS file header NAME ASC 12345 A five character name with trailing binary zeroes DB 0 Should always be zero TYPE DB B 80H File type If Bit 7 1 then this is a data file not executable SIZE DW LENGTH Length of file in number of bytes ADDR DW FROM Address at which file is to be read to or from which it is to be written XEQ DW EXEC Auto execute address ignored for data files DS 3 Space not currently used by SOLOS As previously mentioned SOLOS uses the name to find the correct data for the file operations Assume you were about to read data from a file named POTTS for example and you had correctly opened the file with a header pointing to that name SOLOS when y
11. ap See the Definition of Terms recorders and set up speci Quick Command Reference List word address hexadecimal characters range hexadecimal characters a collection of data any one file to five character O FF range al conditions O FFFF identification fora a SOLOS pseudoport from 0 to 3 a number of appropriat recorder tap optional parameters or 2 corresponding to the Only INTRODUCTION the first cont d when ent typ letters in the EXEC COMMAND addr ENTR addr DU addrl addr2 TERM portin DUMP CUST GET SAVE XEQ CAT SET SET SET SET SET SET SET SET SET SET two letters of ring a command the command expressions must be expression The underscored following Quick Command Reference List Quick Command Reference List FUNCTION Console portout name addr Tape name unit addr name unit addrl addr2 addr3 name unit addr unit S data I port O port N data XEQ addr TAPE 0 or 1 TYPE data COUT addr CIN addr CRC data Set Begin program execution at addr Enter data into memory starting at addr Dump memory data addrl to addr2 Enter Terminal Mode Insert or remove a custom command Get a tape file into memory Save a file from memory to tape Get then
12. at certain con ventions be followed to ensure accurate data transfers File Open Routine FOPEN The Open routine sets up certain internal parameters to keep called only track of data requests This operation should be once prior to the first access of the file Th File Header information is the same format as in the Block Access mode and is used in both reading and writing of files If the Byte Accesses are of the Read type SOLOS will search the tape fil the first data byte of the file If the Byte Acc until the correct file name is found as specified by the File Header information On the next Read access SOLOS will transfer sses are of onto the file The entry point for FOPEN is C007 the Write type the File Header information will be transferred On entry Register A contains File 1 or 2 same as tape unit 1 or 2 File Header Registers H amp L contain address of th information On exit Normal return All registers are altered and file is ready for accesses Error return The Carry Flag is set error file already open Write Byte Routine WRBYT The Write Byte routine writes a single byte of da Reason for ta into a buffer file SOLOS stores this data until it con bytes It then writes this block onto the tape CRC character error checking character SOLOS the buffer file for the next 256 bytes of data
13. e character is always followed by one or two hexa decimal values bytes which indicate what expanded function is to be performed The following lists th scape sequences and corresponding results Where a third byte must follow the escape this will be represented by indicating that this third byte actually contains a value being passed to the VDM driver on Driver more powerful DM driver support address CO1C TO are undefined ntry when sent to the cause special functions to Escape sequence 1B 03 1B 04 1B 01 1B 02 Place display line Place play screen the topmost the cursor ont the cursor ont Function 4 HE o output one character to any is assumed to be a binary value pseudo port be output On All other VDM driver be performed than a standard hardcopy ts many expanded functions output to position is in the range 0 to line number is in the range 00 t line being line OO HH of the current 0 3F of the dis OF with Pass back the current cursor line character posi tion in Registers BC Register B is set to the character position 00 3F and Register C is set to the line position 00 0F Pass back the memory address of the current cursor location into Registers BC mor scape sequences V SUBROUTINES cont
14. ecute address addr word into the tape header information when used in conjunction with the SAVE command This address word is used by the XEQ command after load ing a tape file to begin program execution at by tape header information determines if the file is Example SET XEQ 200 Result Custom addr of the auto location specified Note that the xecut typ CTYPE byte The auto execute address of 200 Hex will be written next SAVE command is onto th issued tape header when th Input Output Commands The next SET commands set address pointers to custom input and out put driver routines when custom Set Custom Output Command SET This command informs SOLOS softwar routine specified by a ddr T 3 I O drivers must meet the SOLOS See the SOLOS software listing for model and or wher SET O 3 SET COUT addr th are used These is located I O drivers requirements input routine user defined output dle V SET COMMANDS cont The Custom Output driver requirements are Lg The addr address word in the SET COUT command will equal the starting address of the output routine Az It is the user s responsibility to save registers prior to any modification of the register 29 The B register will contain the data passed from SOLOS for output routine 4 The outpu
15. ed on a header C016 WRBLK 3 Enter here to write one tape block from memory based on a header C019 SOUT 3 Enter here to output the character in register B to the current system output pseudo port This is always an LDA pointing to the byte containing the current system output pseudo port value CO1C AOUT 3 Enter here to output the character in register B to the pseudo port specified in register A COLF SINP 3 Enter here to obtain status character from the current system input pseudo port into register A This is always an LDA to the byte containing the current system input pseudo port value C022 AINP 3 Enter here to obtain status character from the input pseudo port specified in the A register On return register A will con tain the character with the flags set to indicate whether a character is present or not 16 SUBROUTINES cont B System Entry Points There are actually only two system entry points within the SOLOS jump table Entry at these points does not require that any register be initialized The first at either label START or TINIT is used to perform a complete power on system reset As a part of the system reset the system RAM area data used by SOLOS will be cleared The only reason for entering via START or INIT is that the power on circuitry requires a on e b
16. entry Register A contains File 1 or 2 to be closed On exit Normal return Carry Flag cleared Error return Carry Flag set Error is caused by file NOT open 23 VI LOADIN CUTER is available 1 can be loaded at any in ROM at the address C000 tape ROM the procedure is much simpler perfo G amp EXECUTI NG CUTER on cassette tape w memory address from In order to rm the following steps mak When CUTER Applicable to CUTER only ith its own loader which 0200 through F400 or 2 load CUTER from cassette is being used in the sense switches sur are set according to H below prior to executing location C000 Verify that the hardware is connected and functioning proper Enter at loc simila shown 0000 0010 0020 Verify ly the fol ation 0 The following is pre r to that produced by a DUMP every 10 hex bytes 21 40 00 F9 3D C2 OF 00 DB FA A5 CA 45 4D 3E 80 D3 E7 02 03 FE DD 20 00 DB FB C9 that the above bootstrap is Set th loaded memory Sense into m a memo defaul that C that Make s proper the mo machin now pl Execut accomp zero in When completed the CUTER loader program will t I O pseudo ports specified must be between 0200 and F400 tor PLAY sens FA E7 05 C2 14 00 lowing bootstrap routine into memory beginning sented in a forma
17. execute a tape file Catalog tape files Screen character rate Input port to SOLOS Output port to SOLOS Number of NULLS following CRLF Auto execute addr 0 1200 baud 1 300 baud Type byte header Custom output addr Custom input addr Allows ignoring of tape CRC Read Errors With a Sol on performs a rese NTRODUCTI ON user may initiate A SOLOS system reset SOLOS will do mode prompt or Control line to be ignored and ret c ont gt SOLOS input resets the current The MODE or Control most commands both tape machines then awaits processed upon receipt of a Carriage Return key while awaiting a COMMAN turn to COMMAN t selections to the system defa nters SOLOS t keys into COMMAN or CUTER on a Processor Technology GPM board t which causes a SOLOS system reset this system reset anytime by simultaneou pressing the upper case and repeat Th a Carriage Ret I O pseudo port This use of the MODE turn Line Feed the entry of a COMMAND CR D causes the current COMMAND CUTER also key is also used to abort or Control if on and re D mode When CRLF A Pressin D mode turns to COMMAND mode a power e Sol sly in COMMAND followed by a COMMAND is g the MODE Ul ese the execution of key turns off
18. han Software Technology Corporation or which may have been subject to alterations misuse negligence or accident or any unit which may have had the name altered defaced or removed PREFACE This manual describes the use and operation of either tm tm SOLOS or CUTER SOLOS is a program designed to tm be a personality module ina sol y CUTER is a program designed to provide much of the power of SOLOS for the non Sol user Because SOLOS and CUTER have been designed to be compatible operating systems this manual will refer to SOLOS meaning the SOLOS CUTER operating system The few differences between SOLOS and CUTER will be stated explicitly t m SOLOS CUTER and Sol are trademarks of Processor Technology Corporation SOLOS CUTER User s Manual TABLE OF CONTENTS NTRODUCTION Definition of Terms Quick Command Reference List CONSOLE COMMANDS Console Commands in Brief Console Commands in Detail Execute Command Enter Command Dump Command Terminal Command Custom Command TAPE COMMANDS Tape Commands in Brief Tape Commands in Detail Get a File from Tape into Memory Get then Execute Save a File Catalog a File SET COMMANDS SOLOS Ten Set Commands Set Commands in Detail Set Set Set Set Set Set E PERET Ee ok Speed of Display Input Output Com
19. it 765 4 3210 Where X X X X doesn t matter which pseudo port from 0 3 00 11 binary is to be the default input pseudo port OO which pseudo port from 0 3 00 11 binary is to be the default Output pseudo port NOTE Whenever CUTER does a full system reset begins execution at its beginning memory address the sense switches will be accessed to determine the default I O pseudo ports f either Input or Output default is to be pseudo port 3 user written routine verify the following i The appropriate user written routine is in memory ii The address of the appropriate I O routine is entered into the CUTER system RAM area The system RAM area begins exactly 2K 800 hex after the beginning of CUTER The first word of this area is used to contain the address for the user Input routine The second word will contain the address of the user Output routine Addresses ar ntered in lo hi order J Execute location ZERO The CUTER loader will have properly prepared this location to either transfer control to the CUTER just loaded or to indicate an error while loading CUTER If there was no error CUTER will now be in control Remember to turn off the cassette machine and remove the CUTER tape K IF your computer halts again this means one of the following errors has occurred code Error Code in Hex 00 01 02 40 Display memory The error code will be Meaning location ONE to d termin th
20. mands Out Command In Command Tape Command Type Command Execute Command Custom Input Output Commands OOWO WO OHO Or Pw a SOLOS CUTER User s Manual TABLE OF IVe SET Set Set SUBROUTI A Pse Pse CONTENTS cont COMMANDS cont CRC Error Checking Command Number of NULLS Command NES Introduction to SOLOS Machine Language Interfac udo Ports for SOLOS udo Ports for CUTER Def SOL Jum B sys C SOLOS SIN AIN D SOLOS SOU AOU Es SOL F Casse Fil Blo ined Register Usages OS Jump Table Defined p Table tem Entry Points Input Entry Points P P Output Entry Points alk J OS VDM Display Driver tte Tape Entry Points to SOLOS e Header ck Access Rea Wri Byt Fil Wri d Tape Block Routine te Tape Block Routine e Access e Open Routine te Byte Routine Rea Clo VI LOAI d Byte Routine se File Routine DING amp EXECUTING CUTER iii NOP PB J SOLOS is a 2048 by NTRODUCTI two cass ON te program that recorders into CU system and power o tap SOLOS takes advantage of the Sol 20 s peripherals and the 8080 instruct Outstanding features of SOLOS include e STANDARDIZED I O SOFTWARE PROTOCOL which makes all keyboard display parallel and cassel
21. mbined status get character routine is very important when allowing user written input routines D SOLOS Output Entry Points SOUT entry point address C019 This entry point will set register A to the current system out put pseudo port The current system o utput pseudo port is changed by using the SET O command After setting register A this command proceeds by executing an definition AOUT See next 17 SUBROUTINES AOUT cont entry point This entry point is used pseudo port from 0 return registers are as they wer E Because device SOLOS V the V the b DM Register A to 3 indicating the desired output Register B will contain the character the PSW and Register A W Display uilt in V DM is much The following characters pseudo port 0 Hex Character Function 01 Control A SOH Move cursor left wrap mode one position OB Control K VT Clear screen position cursor at home OD Control M CR Clear remainder of line then move cursor to beginning of same line 13 Control S DC3 Move cursor right wrap mode one position 17 Control W ETB Move cursor up wrap mode one lin 1A Control Z SUB Move cursor down wrap mode one lin Th scape key hex code 1B is also a special character to the VDM driver It initiates what is known as an escape sequenc The escap
22. me of the file becomes part of the tape s header information SET TYPE and SET XEQ commands affect the header information on the tape file The optional addr3 specifies the address if different than addrl to be entered in the tape header Example SAVE CHASE 2 0 1FF Result Saves onto tape unit 2 a program named CHASE starting at location 0000 and ending at location 1FF Catalog of files CAT unit This command will start the tape unit specified and list each tape file header information Example CAT 2 Result SLOPE 0500 0200 HUM 0500 OBOO TAPE COMMANDS cont Note A very useful feature of the CAT command is to apply power to the tape units when needed to rewind tape Depressing the MODE or Control key will remove power from tape unit and return to COMMAND mode IV SET SOLOS ha SET SET SET SET SET SET SET SET SET SET COMMANDS s 10 set commands S data I port O port N data XEQ addr TAPE 0 or 1 TYPE data COUT addr CIN addr CRC data Set Commands In Detail Set Spee d of Display The y are Screen character rate Input port to SOLOS Output port to SOLOS Number of NULLS following CRLF Auto execute addr 0 1200 baud 1 300 baud Type byte header Custom output addr Custom input addr Allows ignoring of tape CRC Read errors SET S 0 FF
23. ou first requested a data transfer would read past File 1 and File 2 as shown below and then read data from the POTTS file Beginning position of tape Beginning of file to be read current position 20 Block Access The Block Access method invokes no management by the system Each call to the Read or Write routines performs a complete cassette operation Read and Write routines are used by SOLOS for GET and SAVE commands and serve as examples of the calling conventions for RDBLK and WRBLK routines Read Tape Block Routine RDBLK The entry point for RDBLK is C013 On entry Register A contains Unit and Speed data with bit 5 speed 0 for 1200 baud or 1 for 3 0 baud bit 7 1 for Tape 1 bit 6 1 for Tape 2 and all other bits 0 SUBROUTINES cont Registers H amp L contain the address of file header information Registers D amp E contain the address of where the fil is to be loaded into memory If set to 0 this in formation is taken from file header information on tape On exit Normal return Carry Flag is cleared and data has been transferred into memory Error return On errors or user pressing MODE or Control from keyboard the Carry Flag is set Write Tape Block Routine WRBLK The entry point for WRBLK is C016 On entry Register A contains unit and speed with the same bit values as specified for RDBLK Registers H am
24. p L contain file header address The file header information will be written onto the specified tape unit followed by the data On exit Normal return Carry Flag is cleared and data has been transferred to tape There are no error returns Byte Access Data stored on or about to be stored on a tape should be considerec a file In a SOLOS file data is stored one byte at a time as a string of bytes along the tape with no assumed meaning or structure It is simply a collection of bytes that can be accessed by someone with responsibility for the intelligence of the data When writing to tape SOLOS records the data in a form that allows the data to be read from the tape later When reading from tape SOLOS provides the management to access each byte sequentially SOLOS also provides start and stop control of two units File opera tions view unit 1 as File 1 and Unit 2 as File 2 Thus data in Unit 1 is associated with File 1 and data in Unit 2 is associated with ELLS 2 When using Byte Access two important user management operations are necessary As shown in Figure below the first is to open a file to tell SOLOS you want to access the file The second is to close a file to inform SOLOS you are finished with it 21 22 SUBROUTINES cont SOLOS provides entry points to Open Read Write and Close tape files Each of these routines requires th
25. rror one of the following The specified load address was not within the range 0200 F40 not CUTER A There was no tape read error error checking The file was loaded but or th fil O tap tape read error was detected but it was not loaded was the CRC character was invalid CUTER 25
26. t command with an address C2 OA 00 E7 E9 00 00 00 in memory exactly as presented switches to the address at which CUTER is to be The sense switches will b address with the lo order byt Switches set to 34 hex will ca emory beginning at location 34 ry address should be selected see H UTER occupies 2K of memory and ure that cassette machine control for tape unit one e motor control is attached as ace the machine into PLAY e location zero the bootst lished by allowing a Reset rap that al below the CUTER tape is rewound and placed into The CUTER bootstrap will activate the hi order te zero As use CUTER to 00 hex For convenience so specifies th The address Remember however 1K of RAM beyond byte of the an example be loaded USES the If your cassette tape unit one you may mode yes This can be to specify an address of At this time be certain that mode and is activated the cassette machine is HALT This is not an error condition will also be turned off 24 When complete d the motor control VI LOADING amp EXECUTING CUTER cont Applicable to CUTER only H Via sense switches select the default I O pseudo ports as follows X XXX O O B
27. t 3 not KDR status on por Serial port 1 n Parallel t R tatus on port 0 Ques DIE Oks DA bit 6 port 2 with not P 2 DR status on port 0 bit User written routine Output VDM driver Serial port Parallel Port User written routine utput VDM driver Serial port 1 TBE status on port 0 bait 7 Parallel port 2 with not PXDR status on port 0 bit 1 User written routine SUBROUTINES cont Second are the defined register usages when interfacing at the machine language level with SOLOS Whenever a machine program is executed by SOLOS via the EXEC or XEQ command or via a custom command the stack pointer and HL registers are predefined by SOLOS gt The stack pointer is set such that the user may perform stacking operations which will use the SOLOS stack The SOLOS stack begins at the end of the SOLOS RAM area and works its way down from there Excessive use of RAM a sl The this stack can destroy data maintained by SOLOS within its area The stack is also prepared so that the user may issue tandard RET instruction to return control to SOLOS command mode processor HL register pair is initialized to point to the very beginning of SOLOS It is at this point that the SOLOS jump table begins The user program may then use the address presented in the H
28. t routine The Sol keyboard would have no affect except to simultaneously hit repeat and upper case keys to reset the computer Cassette Tape Parameter Commands The Following SET commands affect the cassette tape parameters Set Tape Command SET TAPE 0 or 1 This command selects one of two standard speeds O 1200 baud high speed 1 300 baud low speed Normally set to 0 10 IV SET COMMANDS cont Set Type Command This comm and sets data SET TYPE data values into the type T byte in the tape header information when used in conjunction with the SAVE command The type byte data is entered as a hexadecimal value but it will appear on the screen as an ASC character when displayed by the GET or CAT command Only displayable characters should be used for type values data The most significant bit of the type value determines if the tape file can be executed automatically by an XEQ command Auto execute 1 Not executable Typing of tape files can be very useful in grouping common files Example SET TYPE 47 47 G character for GAME FILES Sign Bit 0 auto execute SET TYPE 50 50 P character for PROGRAM FILES Sign Bit 0 auto execute SET TYPE C4 C4 D character for DATA FILES Sign Bit 1 non execute Set Execute Command SET XEQ addr This command sets the auto ex
29. t routine will end with a RET instruction or equi valent Set Custom Input Command SET CIN addr This command informs SOLOS software where the user defined input routine specified by addr is located The Custom Input driver requirements are Ta The addr address word in the SET CIN command will equal the starting address of the input routine 2 It is the user s responsibility to save registers prior to any modification of the register 34 The input routine combines actually inputting the character along with STATUS The routine returns either a zero flag indicating no character is available or the character in Register A with a non zero flag The calling program can then take appropriate action based on a zero or non zero condition Set CRC Error Checking SET CRC data This command is used to specify whether or not the standard CRC error checking routines are to be used When a value of FF is specified all further tape reads will ignore CRC errors Any value other than FF indicates standard error checking is to be in effect This command is very useful to allow a tape to be read in which would otherwise not be readable When CRC errors are being ignored it must be remembered that the data read in may not be valid Example SET CRC FF Result CRC error checking will be set to ignore all CRC errors Set Number of NULLS SET N data This command sets the n
30. umber of nulls binary zeroes to be output following a carriage return linefeed CRLF sequence The value is 12 IV SET COMMANDS cont initialized to zero but may be set to any number up to FF hex This command is useful when using output devices requiring a delay following a carriage return Example SET N 3 Result Every CRLF issued by SOLOS will be followed by three nulls 13 14 SUBROUTI The Machine Languag NES Interfac Introduction to the SOLOS Machine Languag Interfac with SOLOS is based on I O ports allowing software compatibility as well as providing an easy device m defined register usage when interfacing with Built into SOLOS are four input and I O requests made to a pseudo port are t either to a specific device a All non tape I O ten routine nade with reference to one of the 1 A predefined set of pseudo means of supporting any I O 2 A syst SOLOS Sie A system jump table of entry points First are the pseudo ports four output pseudo ports converted internally to a request built in routine or a user writ requests made to SOLOS are n following pseudo ports PSEUDO PORTS FOR SOLOS Pseudo Port Input O Keyboard 1 Serial port 2 Parallel Port 3 User written routine PSEUDO PORTS FOR CUTER Pseudo Port Input 0 Keyboard data from parallel por
31. xists in the table entry will be replaced with an Therefore not only will the specified this name b removed but any other custom command names following in the table will also be removed Example CUST BASIC 0 Result CUST ALS8 E060 Two new custom commands are now known ALS8 at location E060 and BASIC at location 0 TAPE COMMANDS Tape commands are used to control the tape cassette recorders In these commands unit selection is optional with a default select ing unit 1 When a unit is specified however it must be separated from the file identification name with a slash and without spaces in between e g TARGT 2 Tape Header At the start of each tape file is header information This informa tion includes the following data name name of file 5 ASC characters or less type number is specified by user at time file is created addr starting address of file size number of data bytes in file XEQ addr auto execute address word See Set Commands Section IV Error Messages Cassette error messages are printed in this format ERROR name type addr size Reasons for an error message are 1 bad read of file tape error or CRC ERROR 2 MODE or Control key used for escaping while reading a tape file 3 XEQ command given to a non executable file Tape Commands in Brief
32. yte instruction to allow various circuits to stabilize The other use of the byte labeled START is to determine if a u ser program is being executed under SOLOS or is CUTER controlled When under SOLOS this byte will be zero When under this byte will be non zero CUTER The other system entry point RETRN is used to return to SOLOS command mode This entry point does not perform a system reset Cs SOLOS Input Entry Points SINP entry point address CO1F This entry point will set register A to the current system input pseudo port The current system input pseudo port is changed by the SET I command After setting register A this command proceeds by executing an AINP See below AINP entry point address C022 This entry point is used to input one character or status from desired any pseudo port Register A on entry indicates th input pseudo port from 0 to 3 Because this entry point is a combination status get character routine it is the user s responsibility to interpret return flags properly When a character is not available the zero flag will be reset and the character will be placed into register A What this means is that if the user wants to wait for a character to be entered simply follow the CALL AINP or SINP with a JZ jump if zero instruction back to the call A co

Download Pdf Manuals

image

Related Search

Related Contents

Conceptronic 2 ports USB pocket KVM Switch with audio  Quick set up NC Forming machine シングル段取りを実現したNC  Onkyo R-805TX User's Manual    Venom Twin Rechargeable Battery Packs  MANUAL DE INSTRUÇÕES  Unold Compact Cooker  (es) Carro de desplazamiento DF y marco de extensión DF  

Copyright © All rights reserved.
Failed to retrieve file