background image

Summary of Contents for MZ-3500

Page 1: ...Business Computer EOS 3 0 MANUAL SHARP ...

Page 2: ... E 0 s Operating System for Personal Computers with a Z80 CPU Version 3 User 1 s Manual ...

Page 3: ...whole or in part s without our express written consent EOS is a registered trademark R of Daeumling Zimmermann Seevetal Federal Republic of Germany zs is a registered trademark R of Zilog Corp Cupertino California USA CP M is a registered trademark R of Digital Research Corp Pacific Grove California USA ...

Page 4: ...EOS User s manual Section A General Introduction Daeumling Zimmermann Page 2 ...

Page 5: ......

Page 6: ...py with Verify Erasing the Most Significant Bit Switch Off Protocol Back Up of Files Copy between User Areas Copy via Devices Data Communications Sending the End of file Sentinel Direct Screen Output Abort Copying Error Messages COPYDSK Copying Entire Diskettes DATE Setting the Current Date DEVICE Defintions of External Devices DIR Drive Directory Options SYSTEM Display System Files ALL Display Al...

Page 7: ...Function Modules Removing Function Modules LOADER Keep Program Loader in Memory COM Concatenating Function Modules PROT Suppress Protocol MODULES List all Active Modules RENAME Alter Filenames SYSTEM Rename System Files only ALL Rename all Files of a User Area USERS Rename Files in all User Areas R 0 Rename also Write Protected Files CONFIRM Selective Renaming DIRECT Rename without Confirm SAVE SE...

Page 8: ...s Storage Units Handling Diskettes The Central Unit Inside the Computer The Bit The Byte The Field The Record Files Operating the Computer Cold Start The Auto Start Command warm Start Changing Diskettes Using the Keyboard BREAK Characters Suspending Screen Output Filenames Unambiguous Filenames File Types Ambiguous Filenames The Question Mark The Asterisk Drives File Attributes User Areas The MZ 3...

Page 9: ...n Editor Command Interpretation Entering Lowercase Letters Special Characters at Line Beginning The Semicolon The Colon The Asterisk File Search Multiple Command Lines Built in Commands USER Changing User Area LIST Switch Printer on off The Menu Program Input with the Menu _Program Programming the Menu Program Menu File Example ii 32 33 33 34 35 36 36 36 36 37 37 38 39 39 40 41 42 43 ...

Page 10: ... oo o BKGR Select Background Colour o o o o o COLR Select Plot Colour o o oo MASK Line Mask Definition oo MODE Set Plot MOde o o o o o o o o o IMG Define Bit Image o o o o o o o o CLR Erase Graphics 0 o o o o o o o o o o SET Set Pixel o o o o o o o RES Reset Pixel o o o o o o o o o LINE Draw Line o o o o o o o TO Continue Drawing Line o o RECT Draw Rectangle o o o FILL Fill Rectangle Area o o o o ...

Page 11: ......

Page 12: ...t to observe to prevent damage to the new apparatus we may continue Right here are some hundred pages of our User s Manual ahead of you You will have to learn much of this material in order to operate your new gear off hands Do not be afraid you will manage it certainly The very best method to get accustomed to your new environment is by hands on experience Just put this manual next to your CRT sc...

Page 13: ......

Page 14: ...are buried deep into the system s interior and only their programmer knows their names and what they are good for To cut a long story short All those programs not directly related to the problem you are working at but indispensable to keep the computer running are operating system programs EOS is an outstanding operating system in many respects It tries to give all advice and messages in plain Eng...

Page 15: ...em being executable on every computer with CP M or a compatible operating system installed on it In some way you may compare the standard to the standardized connection of a turntable to your HiFi set You only have to imagine that this plug has much more connectors Using a computer system with EOS installed on it makes you become a member of a worldwide community of computer users their number cur...

Page 16: ... character oriented device We will encounter this term with some other devices too From the operating system s view the CRT is denoted by the symbolic name CONOUT which is an abbreviation of CONsole OUTput Because the console being the classical input output device transfers the opera tors input to the computer the CRT cannot do without its all time companion A 3 2 The Keyboard Like the CRT the ke...

Page 17: ...UT the output channel You will meet these names again when using the DEVICE utility As a user you will seldom or never be bothered by these terms A 3 5 Mass Storage Units This is a collective name for all those units which let you permanently store data programs texts etc This kind of storing iS one reading the data stored another function of these units A computer system must be equipped with at ...

Page 18: ...Right disk drive B Left disk drive P RAM disk A system with a standard dual floppy drive and two mini floppy drives would look like A Standard floppy right drive B Standard floppy left drive C Mini floppy right drive D Mini floppy left drive P RAM disk A system with a Winchester disk a standard floppy dual drive and two mini floppy drives would have the following configuration A Winchester disk B ...

Page 19: ...y are by handling them carelessly Never touch the exposed areas of the magnetic rface with your fingers Do not use a hard pencil to write on the disk labels It is good practice to inscribe the labels before attaching them to the disk jackets Always store diskettes in a protective envelope Be careful with the magnetic influences of transformers motors loudspeakers TV sets telephones etc Do not expo...

Page 20: ...s the main memory That is all you need to remember for now The Main Memory All you should remember is that the programs are executed from within the main memory EOS also resides here Its capabili ties are related directly to its size As the Z80 can address only 64 Kbytes directly EOS has several memory management mechanisms built in thus being able to make full use of the 128 to 256 Kbytes of your...

Page 21: ...e represented by a bit A bit is the smallest quantitiy the computer can act on Because a bit was somewhat too tiny for human use man concatenated an arbitrary few of them and called this new quantity A 4 2 The Byte Just eight bits form a byte A byte is the smallest quantity the compu ter can refer to in its memory Not disregarding zero these are exactly 256 different states one can count from 0 to...

Page 22: ...e fields name prename street and location together form the record address Whenever your program stores such a record its con tents are determined by the sequence of fields it consists of Characters form fields these form records and the latter ones form A 4 5 Files Simple isn t it Formerly all addresses would have been written on car ds and stored in a car d index box called customer s index Than...

Page 23: ...is the notation of filenames more about that later on One fact to remember Programs are files too Files containing instruc tions for the CPU as opposed to your address data A specific function of your operating system loads these program files to a precisely deter mined location of the main memory and advises the CPU to execute the instructions deposited there EOS User s manual Daeumling Zimmerman...

Page 24: ... system diskette into the slot of the right mini disk drive and close the door Did anything happen No then it was not the correct drive or the disk has been inserted upside down or it just was not the system disk Try to vary a bit When after all you did not succeed you may want to refer to the owner s manual again Four of five troubles at this moment are caused by insufficient information If every...

Page 25: ...tself but by the com mand interpreter SHELL More on that later on What in the world happens during the cold start Your computer is pre programmed for this function Contrary to the programs which can reside on one of the drives the cold start loader IPL or bootstrap program is literally burnt firmly into the memory of the central unit and can never get lost It is very short doing not much more than...

Page 26: ... diately after it has started itself Such commands are entered in a file called PROFILE SU8 11 on drive A If this file is present the command 00 A PROFILE is automatically executed after EOS has started For details on the structure of a SUB file please refer to the description of the 00 utility Just to give a short example You want all menu files what menu files are like can be found in section B ...

Page 27: ...ce of SHELL is no longer nec essary it is even undesirable in order to free up memory space for other programs Hence it is usual that programs simply ignore SHELL and overwrite it After they have finished they call upon the part of EOS which has remained in memory and cannot be renounced to re load SHELL from drive P the RAM disk and pass control to it Therefore the usual SHELL prompt re appears o...

Page 28: ...o a drive if the same data medium is still present there If it detects that the diskette has been changed without having been notified so it refuses to write on this disk and makes known of its indignation by a system error message Due to the large number of programs which may be run under EOS this mechanism is an absolute necessity to maintain data integ ri ty But when you change diskettes as lon...

Page 29: ... use the character sequence ENTER when referring to the ENTER key Whenever you see this term in the text this means that you are expected to press the ENTER key at the place specified Besides the normal and partially somewhat extraordinary characters there is a whole number of characters which cannot be displayed or printed namely the control characters which control screen display and printer ope...

Page 30: ... situa tions A S 6 Suspending Screen Output Many programs do their CRT screen output at such a tremendous speed that no normally gifted man can follow up in reading Therefore it was necessary to define a specific character to stop screen output This is the As Control S character When you press AS screen output is immediately suspended After output has stopped you can choose from several possibilit...

Page 31: ...ses the file type may be omitted We shall deal with them later With a few exceptions all printable characters may be used for con structing filenames Control characters are not permitted neither are the characters listed below Equals sign Less than sign Greater than sign Colon Period Comma Space blank I because they have a special meaning with commands Furthermore a number of programs require file...

Page 32: ...er be used for another purpose than intended by the three characters file types which and which should inventor COM denotes a file which contains an executable program Such programs can directly be started from the EOS command level In section C of this manual we will introduce the utility programs to you which belong to the EOS scope of delivery SUB Files of this type contain command sequences wh...

Page 33: ... good customs to use the same filename for index and data files to make clear the connexion at the first glance These files contain program segments or overlays which are loaded by another program during execution It is usual to denote the relation between the main program and the overlays by accordingly chosen filenames denotes an object module in a specific relocatable format ASSEMBLERS and COMP...

Page 34: ...dapted to ambiguous filenames It is achieved by specifying blind characters or wildcards within the filename The wildcards are the question mark the asterisk and We recommend that you make yourself acquainted with these features by means of the DIR command A 6 2 1 The Question Mark The question mark represents any single character within a filename or file type Let us assume that following files a...

Page 35: ...cifying CUSTMRl we are able enclose the files CUSTMRl DTA CUSTMRl BAK in our command without having to enter eight question marks But it is rewarding to spare just two qestion marks as the following example for using in filename and file type demonstrates K D results in CUSTMRLDTA CUSTMR2 DTA CUSTMR3 DTA A 6 3 The Drive In the previous examples we have been assuming that the files concerned are fo...

Page 36: ... a file Normally file attrib utes are 11 invisible however an option of the DIR command will display file attributes too The SET utility has been created to set and reset file attributes Most attributes are reserved for EOS however three of them can be set and reset by you at will SYSTEM This attribute makes a file globally accessible It can then be read from within other user areas too Furthermor...

Page 37: ...er area with the exception of user area if SYS TEM files i e files with a set SYSTEM attribute allocated to user area 0 are global 11 or 11 public 11 They can be erad from any other user area but they cannot be altered Therefore you can avoid to keep a copy of each program you need in each user area However if you are using the menu program instead of the SHELL command interpreter you have bad luc...

Page 38: ...rent program If the SHELL program is active and you can enter commands E 0 S appears here Field 2 Current drive Field 3 Active user area When you are running programs which are switching between drives and user areas you can follow it up in the status line Field 4 Current keyboard and screen state Field 5 Field 6 Field 7 Field 8 KeyLock Monitor Key Def UsrStat SysStat Graphics Edit Mode Hard Copy ...

Page 39: ...pe before the computer signalizes that it is ready to accept input This facility is called type ahead If you feel that you may have typed nonsense press CTRL 0 and the type ahead buffer is cleared completely The effect of the keys SHIFT and LOCK is interchanged If you have configured your computer to lowercase mode by means of the DEVICE utility you can obtain a normal uppercase mode by aid of thi...

Page 40: ...ay abort anytime by typing CTRL 7 Let us have an example We want to assign the text 11 Insert 11 to the 11 INS key near the upper right egde of the keyboard The procedure looks as follows You type CTRL 7 INS Insert CTRL 8 the computer replies INS Whenever you press the INS key the text 11 Insert 11 will be displayed If you want to re activate the EOS standard key definition press the CMD key inste...

Page 41: ...Ctrl L Ctrl Ctrl Z Ctrl X T Lead in for screen control codes Pass line to EOS Horizontal tabulator Insert character Delete character Monitor mode on off Suspend screen output Abort program Cursor one line up Cursor one line down Cursor one character to the left Cursor one character to the right Cursor to 0 0 home position Clear screen Erase input line Erase to end of line Double Zero Decimal point...

Page 42: ...Section B How to Enter Commands EOS User 1 s manual Daeumling Zimmermann Page 31 ...

Page 43: ......

Page 44: ... have been developed The version delivered with your system disk is called SHELL SYS which accepts and interprets commands as usual The other version called USRSHELL SYS represents a total different approach to starting programs it offers menus from which the desired program is then selected by keystrokes There is no simpler way to go To activate this program as command processor the file SHELL SY...

Page 45: ...board you can move the cursor to any desired place on the write something nice on the screen if you like just press one of You will see that screen You may Of course there is a well thought background with it When you enter a command but make a mistake you are able to correct the mistype with the aid of the arrow keys Two further keys serve for such changes both of them located near the _upper rig...

Page 46: ...e type is OH COM This file is searched for If it could be found it is loaded and executed Furthermore the remainder of the command line is passed to the OH COM11 program WHAT A NICE COMPUTER OH COM could interpret the remainder of the line by itself For examp le it could create the file WHAT and fill it with nothing but 11 ALAS or do some other nonsense But what if there is no 11 0H COM file at al...

Page 47: ...In this case the file OH YES is searched for explicitly on drive B and loaded if present there B l 3 Entering Lowercase Letters There is a number of tricks you may use when entering commands Maybe you feel angry about the fact that all input is con verted to uppercase letters If for some stupid accident a file has been created the name of which contains lowercase letters you are not able to erase ...

Page 48: ... It is interpreted only if the most recent command could be exec uted error free If on the contrary the previous program was termin ated due to an error e g an EOS system error 1 such a line is not interpreted but regarded as a comment line The program error code is set by an internal system function Most currently available programs do not know this new function hence it is possible that a progra...

Page 49: ...ctory listing The SET utility serves for setting and resetting file attributes Furthermore the command search has been extended to include more than one drive By means of the CONFIG utility you may define up to four drives which are to be scanned for a command In its delivery state EOS automatically begins the seek sequence on the RAM disk then continues on the current drive This may be redefined ...

Page 50: ...ow are firmly installed USER LIST Change user area Switch printer on I off The following commands are translated DIR DIRS or DIRSYS ERA or ERASE TYP or TYPE REN or RENAME to DIR to ERASE to TYPE to RENAME The utility programs as listed above and their tasks are DIR Display directory DIRS DIRSYS Display directory of system files has the ERA ERASE REN RENAME TYP TYPE same effect as DIR SYSTEM Erase ...

Page 51: ...nter any nonsense the message reads Only user areas between 0 and 15 permitted For CP M compatibility the commanOs USER and USE have the same effect B l 7 2 LIST Switch Printer on I off You may operate a printer parallel to the CRT screen This command has therefore been implemented To switch the printer on you would enter LIST ON Printer is switched on And here is hOw to switch the printer off you...

Page 52: ...the previous menu When you start a program further specifications may possibly be requir ed In this case a number of fields appears in the right half of the screen Each of the fields contains either a heading or maybe some text You may alter the text or leave it as it is according to your wishes Input fields are marked by underlines Using the cursor keys you can jump to any of these fields The DEL...

Page 53: ...tioned at the first place of a field it jumps to the last character of the previous field Right arrow Move cursor one character to the right If the cursor is positioned at the rightmost place of a field it jumps to the first place of the subse quent field DEL HOME Erase the character just under the cursor If the cursor is at the end of an input line the charac ter left of the cursor is erased Abor...

Page 54: ...nations can be specified A maximum of 50 characters per line will be displayed The auxiliary text will appear automatically on the CRT screen if for some 3 seconds no user input occurs S Submenu If the menu item has been selected a submenu is to be initiated The following text is interpreted as the name of another menu file If the file type misses MNU is appended by default P Start program If the ...

Page 55: ... menu file B 2 2 1 Menu File Example Here is an example of a menu file which generates a test menu with three items The first item causes a submenu to be started the second one starts a program The third one also starts a program but requires additional parameters Menu File of a test menu HTest Menu first menu item start of a submenu MLoad Submenu Help text By selecting this item you will start a ...

Page 56: ...EOS User s manual Section C Utility Programs Daeumling Zimmermann Page 44 ...

Page 57: ......

Page 58: ...er look on both these kinds of utilities C l Menu Programs The first category of utilities are the so called menu programs You call them by just typing their name They then appear with an auxiliary menu on the screen The most essential feature of a menu program is that you can do all your input with the arrow keys between the alphanumeric keyboard and the numerical keypad You see that in most case...

Page 59: ...specify options as the name implies If an option should miss a default is selected automaticaLly Options may appear anywhere within a command line except before the command name i e as the first word You need not type the entire name of the option the first character is fully sufficient For example the command SET SYSTEM ACKUP SET S B has the same effect as What do the plus and minus signs mean We...

Page 60: ... a menu program nor can it be called by a complex c ommand line Rather 1 after typing the command CONFIG there begins a question and answer sequence you can run through For proper operation CONFIG must have access to a system file named 11 SYSVAR SYS This file is always searched for on the disk in the right mini disk drive CONFIG waits until you have inserted the correct diskette normally the syst...

Page 61: ...alphabet C 4 1 Start and Command Input Let s see how to start COPY It is simplicity by itself you just type COPY and immediately the program responds EOS V3 File copy program Help The asterisk is the prompt of COPY Now you can enter your commands to your heart s contents To begin with the simplest facts In the first line COPY displays it tells you that there is some help at hand So just type a que...

Page 62: ...ame as on the source drive you need not fully define the second filename It suffices to specify the drive A COPY COM B If you are already on drive A which means that drive A is indicated in the system status line on the screen you may as well omit the first drive specification COPY COM B That is the shortest way to go But if you suppose that when working on drive B the command line above might as ...

Page 63: ... Of Course you can as well copy single files in such a manner that they get new names on the destination drive for example A COPY COM B COPY OLD Again there is a restriction When you specify an ambiguous the source file but an unambiguous name for the destination on strike This would mean that all files are to receive the on the destination drive thus leaving the file transferred noble solitude na...

Page 64: ...e example of copying all 11 COM files from A to B COPY then would produce a copying protocol which might look like this COPY A COM B EOS V3 File copy program 4 Files found A PROGMl COM 10 KB copied to B PROGMl COM A PROGM2 COM B KB copied to B PROGM2 COM A PROGM3 COM 19 KB copied to B PROGM3 COM A PROGM4 COM 2 KB copied to B PROGM4 COM As you can see COPY indicates with each file transferred the f...

Page 65: ... paragraph is devoted to definitely less pleasing matters namely to errors There are numerous ways to make errors When an error is encountered during copying this is flagged as follows COPY A COM B 0LD 4 Files A PROGMl A PROGM2 A PROGM3 found COM COM COM 10 KB 8 KB 19 KB copied to B PROGMl copied to B PROGM2 Read write error OLD OLD Although the error is indicated after the source file name not ne...

Page 66: ...ROGM3 A PROGM3 COM COM erased 19 KB copied to B PROGM3 COM If there is really no chance to gain more space on disk 1 COPY asks A PROGM3 COM 19 KB Disk full Change disk Y N You may now insert a new diskette and continue If you respond with N to both questions copying is aborted COPY also aborts if a question to change data media is superfluous because the full destination is the harddisk or the RAM...

Page 67: ...OPY works with utmost care First of all it creates a temporary file on the destination drive Only after this has successful ly been filled an old destination file is erased As a consequence disk space may become narrow because two versions of a file may tempora rily exist To prevent this you may activate the option 1 REMOVE11 In this case any existing old destination file is erased before copying ...

Page 68: ... Source Files after Copying If you want to clean up your disk by erasing files after they have been copied you would activate the option ERASE COPY A COM B E EOS V3 File copy program 4 Files found A PROGMl COM 1 KB copied to B PROGMl COM A PROGMl COM 1 KB erased A PROGM2 COM 8 KB copied to B PROGM2 COM A PROGM2 COM 8 KB erased A PROGM3 COM 19 KB copied to B PROG1 13 COM A PROGM3 COM 19 KB erased A...

Page 69: ...ry interesting option It provides for selectively copying only those files which have been altered since the most recent copy process For this purpose COPY evaluates the BACKUP attribute of a file see also SET If COPY finds a file without this attribute this will be copied and afterwards it gets a BACKUP attribute attached If a file is changed later on EOS automatically resets the BACKUP attribute...

Page 70: ...ansfer to and from logical I 0 devices The devices have specific names and are assigned to a pseudo drive X as implemented with COPY Following devices are available X CONTN the keyboard X CONOUT the CRT screen X LSTOUT the printer X AUXTN the input channel of the auxiliary device X AUXOUT the output channel of the auxiliary device X EOF sends a Ctrl Z as end of file character Instead of filenames ...

Page 71: ...n the serial interface to the AUXIN and AUXOUT devices Then you are ready to enter the command COPY filename X AUXOUT to transmit a file and the machine at the other end of the line will receive by COPY X AUXIN filename For the knowledgeable An XON XOFF protocol is used with the AUXIN de vice When the internal buffer becomes full usually after 32 KBytes if there are no function modules loaded COPY...

Page 72: ...device please refer to DEVICE and enter COPY X AUXIN X CONOUT PROT ASCII By 11 PROT the copy protocol is switched off and the option ASCII prevents the computer to terminate COPY after Ctrl Z is encountered C 4 7 Abort Copying Enentually you will mistype commands and would therefore like to abort the copy program You can do this anytime by typing a BREAK character Copying is then immediately abort...

Page 73: ...pecfied an erroneous user number with these options or simply forgot it No target name given You specified only one file designation Verify error During proofreading the file a difference has been detected Occurs only along with an active VERIFY option Directory full A new file could not be created because directory space is exhausted Erase some files or use INITDIR to remove the time stamps if yo...

Page 74: ...itself COPY simply ignores this file Read write error A physical read write error was encountered Device is write protected The destination drive is write protected Remove the write protect label from the diskette and try again File is write protected The R 0 attribute of the destination file has been set by the SET utility Use the same program to remove the attribute Invalid device You specified ...

Page 75: ...in accord with the source disk copying is aborted too After the program has started some kind of scale appears on the screen The scale is composed of dots where each dot represents a track to be copied Two such scales are proQuced one for the source disk the other for one the destination According to the progress of transfer the dots are replaced by letters s System track These tracks might contai...

Page 76: ...parated by colons If one of the parameters should miss or be erroneous new input is interactively requested To set the calendar clock you may as well enter DATE After date and time have been entered correctly the computer waits until you hit any arbitrary key before it sets the clock too Thus you can set the clock as precise as one second Example Set the clock to August 15th 1983 a quarter past tw...

Page 77: ...evices input output i o Input device Output device Input Output device other Ctrl Z The contents of the third column can be changed by you Its first three lines can be selected by means of the cursor keys When you select one of them and press ENTER you will see that the text changes each time offering you another option for that device Following options are at your disposal SCREEN You may choose b...

Page 78: ...til the desired assignment appears Finally you can transfer the device assignment selected ating system For this purpose the rightmost column options into the oper offers three SET transfers the assignment into the operating system where it remains valid until the next cold start SAVE QUIT permanently stores the assignment in the operating system For this purpose the system load diskette must be i...

Page 79: ...ntered DIR or something similar Well you obtain a directory of your disk ordered alphabetically and with the file sizes appended The screen image could look like this Device A TEST DSK 08 16 83 15 3 Access Update stamping Name Type Blcks KB TESTl OAT 10 2 TEST2 OAT 200 26 2 file s 28 KBytes used 334 KBytes remaining System files exist The headline indicates the the data media name the current date...

Page 80: ...ute attach ed You can make those files visible by activating an option If you are not interested in the entire directory you are free to limit the number of files which will be displayed When you specify an ambigu ous filename only those files are indicated which match the name speci fied For example DIR COM displays all files of the COM type DIR displays all files having the same effect as DIR C ...

Page 81: ...ious example Instead of 11 System files exist the message now reads Non System files exist11 The files indicated now would normally be invisible If you are using the SHELL command interpreter the command DIRS or DIRSYS has the same effect as DIR SYSTEM C B l 2 ALL Display All Files We saw how either normal or system files can be indicated If you want to see both kinds of files at the same time ple...

Page 82: ... informations there is a TIME option Let s do a look at an example DIR ALL TIME Device A TEST DSK 08 16 83 15 30 Access Update stamping Name Type Blcks KB Last access Last Update Attributes SYSFILEl COM 23 4 07 31 83 20 20 07 31 83 14 22 sys SYSFILE2 COM 8 2 08 01 83 10 23 sys TEST OAT 10 2 06 14 83 15 55 06 14 83 15 55 TEST2 OAT 200 26 08 01 83 19 41 4 file s 34 KBytes used 334 KBytes remaining T...

Page 83: ... 83 15 55 0 TEST2 OAT 20 26 8 1 83 19 41 5 file s 34 KBytes used 334 KBytes remaining Suddenly there appears one more file in the directory display This file USERNOll is assigned to user area 11 and it is enpty C B l 6 LIST Direct Output to the Printer If you want a neat listing on paper a hardcopy specify LIST as the only option You will then obtain a printed listing in a manner as if you had act...

Page 84: ...0 KB capacity 286 KB free D not ready P RAM disk 48 KB capacity 19 KB free You can see that all drives defined are displayed disks are inserted or not In the above example drive o If there is a disk EOS cannot read this lows D not readable no matter whether there is no disk in is indicated as fol If you are not interested in the complete list you may as well specify the drive you want to be examin...

Page 85: ...e SUB type DO then processes the file replacing some parts of the text inserting control characters and doing some other things Finally the file thus prepared is copied to a temporary file and the keyboard is switched over Calls of DO may be nested You can start DO from within a DO file The nesting level is limited only by the memory available It shall be mentioned that the initial job of DO canno...

Page 86: ...ORD 3 1 Then DO would create a temporary file which looks like This is the 1st word WORD This is the 2nd word WORD2 and the 3rd one THIS IS WORD 3 Up to 9 words can be passed from the command line to the text by speci fying the parameters 1 to 9 Additionally the name of the file just processed can also be inserted by means of specifying 0 11 If y_ou need the dollar sign by itself within the text t...

Page 87: ...GS N so us o SI The control characters as below are precluded Line Feed End of File RS is simply ignored reserved for the end of file sentinel reserved to generate The latter feature enables you to enter the up arrow typing it twice just as the dollar sign 11 11 in the text by C l0 3 Further Control Characters DO knows further characters with a special meaning however these must be placed at the b...

Page 88: ...ing at the next system command 3 The question mark If a line begins with a question mark an input line is expected interactively from the keyboard This facility is available with both the system mode and the program input mode 4 The Semicolon This character is used to mark a comment however this feature is available with system mode only Such a line is not permitted as program input C l 4 Executio...

Page 89: ...input like inside a command file Just bear in mind that such a command must start with a less sign C UiJ 6 Examples Let us assume we have a program called TESTPROG which interactively expects some input lines An empty line will terminate the program After TESTPROG is completed we want to enter a command of our choice Then TESTPROG shall run once more if the command we entered could successfully be...

Page 90: ...y file could not be written to completion Unable to execute name The function medule overlay refused to accept the file as input This error should not normally appear Program input ignored This warning is displayed by the command interpreter to signalize that program input lines have been left over from the most recent program run Execution aborted If you type a BREAK character while DO is fetchin...

Page 91: ...s released 346 Kbytes remaining You see that you are informed of how much space the file occupied before it has been erased and how much space was regained by erasure If the file was not found the message reads No files found Of course you can erase several files at once by specifying an ambi guous filename This might look as follows ERASE COM 3 files found Erase Y N Y A DIR COM HI KB erased A SET...

Page 92: ...isplays the user area instead of the drive of the files erased ERASE COM USERS 3 files found Erase Y N Y 0 DIR COM 10 KB erased 0 SET COM 8 KB r o not erased l PROGRAMX COM 20 KB erased 2 File s erased 30 Kbytes released 376 Kbytes remaining Here the file DIR COM in user area 0 and the file PROGRAMX COM in user area l are erased C ll 4 R 0 Erase also Write Protected Files In the previous examples ...

Page 93: ...not erased A PROGRAM COM 20 KB Erase Y N y A PROGRAM COM 20 KB erased 2 file s erased 30 Kbytes released 376 Kbytes remaining C ll 6 DIRECT Erase without confirm From the previous examples you see that ERASE asks for confirm whenever it finds more than one file to erase As this can be very hindering when executing command files you can suppress the inquiry by activating the 11 DIRECT11 option In t...

Page 94: ...ENTER key will start the formatting process without delay After you selected START a dot scale appears in the middle of the CRT screen Each dot represents a track to be formatted Of course the scale for mini disks has another length than that for standard disks After a track has been initialized the corresponding dot is replaced by an When the formatting phase has run to completion NIT does a seco...

Page 95: ...of the INIT5 program c 12 2 Standard Diskettes As with mini diskettes there are four different formats at your disposal Properly spoken these are not less than eight formats as the formats for single sided disks differ from those of double sided disks The formats are 128 Bytes The shed ge The single sided version of this format has been establi worldwide as the standard format for software exchan ...

Page 96: ...rmatting programs just abort on a proofread error and advise you to deposit the defective diskette After long and careful consideration this method has been declared unpracticable with harddisks Hence defective blocks are collected into a particular file This file then occupies exactly those blocks on the harddisk which lead to verify errors thus locking them for other files T l For people who wan...

Page 97: ...me stamps Time stamps consume about a quarter of the directory space available so when they are activated you can create 75 percent of the otherwise available file entries Usually a directory overflow will not occur However if it should happen you can remove the time stamps from the directory anytime using the command ERASE STAMPS INITDIR further offers a facility to name the diskettes i e the dat...

Page 98: ... definitions to the KEYDEFS KEY file If you want to restore these definitions this is simply done as follows KEYDEFS As with any other option you may abbreviate SAVE as S 11 In the command line you can further specify the name of a file the key definitions are to be written to resp loaded from If you omit the file type the type KEY is generated by default For example key definition transfer to fro...

Page 99: ...n 68 it must be guaranteed that the corresponding function module is available In most cases a function module determines by itself how long it remains in memory After it has done its job it sets a specific flag Then EOS will remove the module from memory after the current program has terminated Function modules are stored in files of the RSX type which is derived from 11 Resident System Extension...

Page 100: ...xisting modules If a module occurring in the list should be present in the COM file it will be replaced by the new one An example You have a file named 11 PROG COM This file contains the modules 11 MOD1 11 MOD2 11 and MOD3 maybe besides the main program Now you enter the command MOD PROG MODl MOD4 This causes the module MODl in the PROG COM file to be replaced by the new module MODl The module MOD...

Page 101: ...ample if you enter the command MOD MOD MOD2 MOD3 COM the modules MODl RSX MOD2 RSX and MOD3 RSX are concatenated to a file named MODl COM This file can be executed like any other program file and does nothing else but activate the modules contained in it C ls s PROT Suppress Protocol U ually you would obtain a loading protocol on the CRT screen which g1ves you informations on the structure of the ...

Page 102: ... active modules Name DO DO PGMLDR Strt E7 6 EC 6 Fl 6 Size 5 5 B3BB In this example a two level nested DO run is in progress Therefore the program loader remains memory The option may also be entered in conjunction with an ordinary command line In this case the mqdules are listed before the command is exec uted When there is no active module the message reads No function modules active EOS User s ...

Page 103: ...is mathemati cal11 notation somewhat circumstantial RENAME allows for another way of calling it RENAME filename old filename new where you specify the old filename first then the new one without an 11 equals sign between the filenames Choose the mode you prefer But that is not all RENAME will accept ambiguous filenames as well The command RENAME COM OLD for instance will rename all your COM 1 file...

Page 104: ...OM 11 KB renamed into DIR CIM A SET COM 8 KB r o not renamed A ERASE COM 8 KB renamed into ERASE CIM For safety in the case of several files found RENAME asks before renaming a particular file whether you want it like that The file SET COM11 could not be renamed because it has been write protected by means of SET However activating an option would have it made possible to rename it too This leads ...

Page 105: ... 3 file s found Rename Y N y A DIR COM 11 KB renamed into DIR A SET COM 8 KB r o renamed into SET A ERASE COM 8 KB renamed into ERASE C l6 5 CONFIRM Selective Renaming CIM CIM CIM Use the COMFIRM option to rename files selectively This will RENAME cause to inquire you at each file if you want this file to be renamed or not RENAME COM CIM CONFRIM 3 file s found A DIR COM 11 KB A DIR COM 11 KB A SET...

Page 106: ...ad to be implemented to provide for saving memory contents to disk before memory is overwritten by the command interpreter Essentially SAVE is nothing else but a function module If you enter the command SAVE the module is loaded into memory directly beneath the EOS system entry where it remains inactive until the next program terminates After the succeeding program has finished e g a debugger SAVE...

Page 107: ...Start address 0100 End address 03FF End Debugger 1 00 The SAVE RSX function module belongs to the EOS scope of delivery Using the MOD utility you may directly link this module to a debugging program thus becoming releaved from the necessity to start SAVE explicitly Internal structure and operation of function modules is discussed in detail in section A of the System Manual EOS User s manual Daeuml...

Page 108: ...ly if a file has been altered Thus files which have not yet been secured can easily be recognized A special mode of COPY only copies files without this attribute R 0 Files with an R 0 Read Only attribute can neither be alter ed nor can they be erased How to set these attributes Just with the corresponding attributes you do not specify attributes they specify the desired filenames along lead in by ...

Page 109: ...s found in the file are automat ically expanded to the current system tab stop setting This means that there is a tab stop every eight columns unless you have changed the setting by means of the CONFIG utility Furthermore SPOOL inserts a form feed every 64 lines You may however activate an option to suppress form feeds There are almost inevitably some disadvantages with SPOOL operating the printer...

Page 110: ...C 19 l l STOP Suspend and Release Printing If you want to stop printing enter the command SPOOL STOP SPOOL then replies Printout stopped To continue printing you would type SPOOL STOP and SPOOL answers Printout continues C l9 1 2 RESTART Restart P inting If you decided differently and want to print from the beginning of the file again you would enter SPOOL RESTART SPOOL then resets and anwers Prin...

Page 111: ...l not insert form feeds by itself C l9 2 Additional Information for Connoisseurs For everyone who wants to know precisely The unction module SPOOL RSX intercepts EOS system calls 1 2 5 9 10 11 and 111 Furthermore the vectors 3 4 5 and 6 in the BIOS jump vector table are altered such a way that programs which do console I 0 directly via the BIOS jump vector are also affected All EOS calls with the ...

Page 112: ... ambiguous file name These files are then displayed in alpabetical order This program too comes along with some nice options C 20 1 PAGE Page Mode Output This is the standard output mode The file contents are displayed on the screen page by page When you press the space bar the next page will appear If you type a BREAK key instead of output is aborted You may inactivate this option by specifying P...

Page 113: ... the character sequence x where x represents the letter associated with the corresponding contrOl character C 20 4 LIST Redirect Output to the Printer If you want a neat listing on paper a the only option You will then obtain feed and a page header every 64 lines reads Press any key to abort listing If you follow the advice the message Listing aborted hardcopy specify LIST as a printed listing wit...

Page 114: ...Section D The Graphics Interpreter EOS user s manual Daeumling Zimmermann Page 102 ...

Page 115: ......

Page 116: ...opped which is invoked via the CRT inter face Sending certain control sequences to the CRT driver activates the graphics interpreter 0 1 Activating the Graphics Interpreter To start the graphics interpreter there are three modes to select from 1 Via the CRT interface When you send the character string ESCAPE I uppercase I to the CRT normal screen display is switched off All screen output is redire...

Page 117: ... Y axis Colour Bit images 0 to 639 0 to 399 0 to 7 Ql to 126 If you omit one or more parameters they are substituted by zero values So do not be surprised to see nothing on the screen when you accident ially forget to specify the colour thus plotting black colour 0 on a black screen Let 1 s have a look at the parameters Graphics are located in the so called second quadrant This means that the coor...

Page 118: ...Section C Utility Programs This page has been left blank for your notes EOS User s manual Daeumling Zimmermann Page 101 ...

Page 119: ......

Page 120: ... 8 bits The IMG11 instruction lets you define up to 8 bytes of 8 bits each for a character matrix For example let s see what the matrix of the letter A11 looks like Byte l 00011000 18H Byte 2 00100100 24H Byte 3 01000010 42H Byte 4 01111110 7EH Byte 5 01000010 42H Byte 6 01000010 42H Byte 7 01000010 42H Byte 8 00 00 0 0 00 00H Another kind of pattern can be used to fill areas Byte l 10 00 10 Hi 88...

Page 121: ... program will plot the coordin ate points on the screen and connect them by lines 1 DIM Y 100 REM Declare array 2 DEF FNY Y 400 4 Y REM Transformation function for Y 10 DIFF 640 100 REM Increment of X 20 REM 30 REM here you would insert the code to set up the Y array 40 REM 1000 1010 1020 1030 HJ40 1050 1060 1070 1080 1090 1100 9999 REM Graphics Output Section PRINT CHR 27 I PRINT NIT PRINT CRT 1 ...

Page 122: ...Mask MODE Set Plot Mode IMG Define New Bit Images CLR Erase Graphics SET Set Pixel RES Reset Pixel LINE Draw Line TO Continue Drawing Line RECT Draw Rectangle FILL Fill Rectangular Area CIRC Draw Circle ARC Draw Arc of Circle TEXT Write Text COPY Perform Hard Copy END Terminate Graphics The Graphics Interpreter Graphics Interpreter ESCAPE uppercase 11 I 11 EOS User s manual Daeumling Zimmermann Pa...

Page 123: ...C 1 11 sequence at the begin ning You will then see all graphic11 instructions as ordinary text on the screen Furthermore it is recommended to get acquainted with the graphics instructions using the special mode of the command interpreter 0 6 1 NIT Initialize Graphics Instruction NIT This instruction resets the entire graphics to its initial should be the first instruction before any other graphic...

Page 124: ...as a l causes graphics and text to be mixed on the screen screen Here you specify whether a colour monitor is connected means that you are using the ordinary green monitor stands for a colour monitor A 0 a nln colour This parameter must lie within the 0 to 7 range which partial colours are to be displayed on the values and their meanings are If specifies screen The 0 No output at all l Display blu...

Page 125: ...ction MASK bit pattern Each line you draw is constructed of a number of image dots or pixels11 The graphics interpreter goes one step beyond it composes lines from multiples of a 16 bit vector Normally all bits in this vector are set to 1 thus creating an uninterrupted line But by redefining the vector you are able to plot also dashed or dotted lines The vector contents are specified as a chain of...

Page 126: ...This instruction has been explained further above n is a number in the 0 to 126 range other values will be replaced by 126 This number corresponds to a character in the ASCII code list Hence to redefine the hit pattern of the letter A you would specify a value of 65 for n as A is character No 65 in the ASCII alphabet The parameters bitl to bitS represent eight vectors of 8 bits each A set bit is m...

Page 127: ...e lower right one Within the area of this rect angle all parts are erased which correspond to the value of 11 colour Colour may assume following values 0 No erasure at all 1 Erase blue parts 2 Erase red parts 3 Erase blue and red parts 4 Erase green parts 5 Erase blue and green parts 6 Erase red and green parts 7 Erase all colours Any other values will cause all graphics to be erased 0 6 9 SET Set...

Page 128: ...ich is determined by the coordinates xl yl and the lower right by coordinates x2 y2 D 6 14 FILL Fill Rectangular Area Instruction FILL xl yl x2 y2 image colour xl y1 denote the upper left and x2 y2 the lower right corner of a rectangular area This area is filled with a bit pattern The parameter image denotes a number between 0 and 126 according to the ASCII alphabet You may fill the area with one ...

Page 129: ...us r is plotted centered at coordinates x y The starting and final angles phil and phi2 respectively must be speci fied in degrees from 0 to 359 The 0 degrees direction points to the right edge of the screen and 90 degrees to the upper edge The angle is counted conterclockwise as usual in mathematics Example Plot a quarter circle around the centre 100 100 with a radius of 50 in the first quadrant ...

Page 130: ...the usual direction a 11 1 a direction to the upper right a 11 2 vertically upwards and so forth If you add 10 to the values desribed above written in italic mode Values from 10 to effect as 0 to 7 with the exception that characters the text will be 17 have the same you obtain italic size Character size which may vary from 1 to 16 The characters are magnified by the factor size as compared to stan...

Page 131: ... Copy blue and red parts 4 Copy green parts 5 Copy blue and green parts 6 Copy red and green parts 7 Copy all colours Any other values will cause all colours to be copied 0 6 19 END Terminate Graphics Instruction END This instruction merely switches the screen back to normal text mode if the graphics mode has been activated by the control sequence ESC I Otherwise it has no effect at all It is howe...

Page 132: ... E 0 S Operating System for Personal Computers with a ZB0 CPU Version 3 System Manual ...

Page 133: ...hole or in parts without our express written consent EOS is a registered trademark TM of Daeumling Zimmermann Seevetal Federal Republic of Germany Z80 is a registered trademark TM of Zilog Corp Cupertino California USA CP M is a registered trademark TM of Digital Research Corp Pacific Grove California USA ...

Page 134: ...e of a function module Function modules an example System variables EOS flags System errors Table of available system calls 3 4 5 7 9 9 10 11 13 14 15 16 18 19 23 24 26 Section B HARDWARE INTERFACE 125 B l B 2 B 3 B 4 B S B 6 8 7 8 8 Preview 126 Invoking hardware functions 127 Hardware interface entry jumptable 128 Hardware error messages 129 Firmly installed drives 131 The skew factor 131 Disk pa...

Page 135: ...butes Set cursor attributes Video on 1 off Activate screen editor Monitor mode Screen hardcopy Mask graphics mode Special screen and keyboard modes Clock display on I off Window scrolling The TV950 mode status line The system status line The user status line Suppressing the status line The keyboard The alpha numerical full keyboard The numerical keypad Free definable function keys Key definition c...

Page 136: ...ication of system calls is definitely no job for novices The manual is divided into four sections The first section contains a description of the EOS system kernel interface System calling mechan isms and the related data structures are dicussed in detail The second section is devoted to the interface to the MZ 3500 computer system hardware describing its system functions and data structures The t...

Page 137: ......

Page 138: ...Section A EOS system interface EOS System manual Daeumling Zimmermann Page 2 ...

Page 139: ......

Page 140: ...ems CP M and DiCOS versions CP M 3 0 and DiCOS l l are supported Furthermore disk drive management including the related data structures and the facili ties to control the system behavior by setting internal system variables are discussed The hardware graphics and CRT interfaces are described in sections of their own EOS System manual Daeumling Zimmermann Page 3 ...

Page 141: ...r register A is loaded with the contents of L and register 8 with the contents of H if not stated otherwise The call itself is performed by a subroutine CALL to address 0005H For example if a character is to be sent to the screen the system call would look like this LD LD CALL C 2 E 5 function code output an asterisk SYSTEM CALL The system maintains a stack area of its own It is thus not necessary...

Page 142: ... Baud rate is software adjustable Bit 3 set Device uses CTS protocol Bit 4 set Device uses XON XOFF protocol All physical I 0 devices except for the disk drives are defined in this table The devices are numbered internally the first table entry is number the second one number l and so forth Each logical device has a 16 bit vector associated for up to 16 physical devices where the most significant ...

Page 143: ...to the screen due to an entry of the Ctrl P character see EOS functions l and 10 and the printer itself is assigned to the CRT terminal no printer echo will take place to inhibit double printing on the screen The following devices have been implemented on the MZ 3500 The SCREEN KEYBD RS232 CENTRO CE332P GRAPH DUMMY the CRT screen the keyboard the built in V24 I RS232 interface the built in Centron...

Page 144: ...h byte are evaluated during directory searches EOS regards the most significant bit as an attribute The attribute bits are partially pre defined Byte 2 fl free for user purposes Byte 3 f2 free for user purposes Byte 4 f3 free for user purposes Byte 5 f4 this file will be erased after despooling resp after execution of all commands contained in it Byte 6 f5 interface bit for system calls Byte 7 f6 ...

Page 145: ... Record number within the extent whose number is stored in bytes 13 and 15 Always less than 129 The total number of records of a file may be computed from extent number 128 this byte Allocation map Here the system enters the numbers of the clusters occupied by the file If an overflow occurs a new directory entry is established Current block number This byte denotes the number of the block within t...

Page 146: ...le name and the file type may be used to assign a name to the data carrier the disk itself The directory label is constructed as follows Byte 1 Bytes 2 11 Byte 12 Bytes 13 24 Bytes 25 28 Bytes 29 32 a value of 32 to denote the directory label Data carrier name The data byte a bit vector carrying following infor mation Bit 6 Perform time stamps on file accesses Bit 5 Perform time stamps on file alt...

Page 147: ...the first 10 bytes bytes 2 to 11 will recieve the time stamps of the first directory entry of the current block the second 10 bytes bytes 12 to 21 the time stamps of the second entry and the last 10 byte group bytes 22 to 31 the ones of the third directory entry The very last byte 32 of the Time FCB is reserved Such a 10 byte time stamp bears the following information Bytes 1 4 Moment of creation ...

Page 148: ...to this function At instruction jump vector Points begin of the function address initiates the the same time the denotes the first byte the user memory reserved for interrupt vectors reserved for EOS to the begin of EOS module loaded last A execution of a system address of this jump occupied by EOS within Number of the drive the current program has been loaded from A 1 corresponds to drive A 2 to ...

Page 149: ...FCB address 06CH is set to zero and the area from 06DH to 077H filled with spaces free for usage as FCB block counter Begin of DMA buffer Contains the number of characters of the succeeding command line remainder Command line tail This is the rest of the command line immediately following the command name Normally the com mand line tail would begin with one or more spaces Before starting a program...

Page 150: ...he console and list I O redirection programs etc The program loader itself is such a function module Normally it removes itself from memory after a successful program load initiated by the command interpreter but it can be kept in memory and its functions made available for an user program if the user program loaded is supplied with a dummy funtion module header A function module remains in memory...

Page 151: ... or bank manager LOADER Prog am loader active function module inactive function module The graphic shows that system calls are passed through all function modules Should two similar modules be loaded both of them intercept ing the same system call the one loaded first is not referred to until the second has terminated its function The file executor makes use of this facility to allow for nested ex...

Page 152: ...It becomes thus possible to keep modules with their termination flag set The subsequent program may use these functions they are removed only after the program run being terminated System call 60 has been defined to communicate with modules This call has several parameters which can be tested by all modules loaded If none of them shows any reaction the EOS system kernel returns 0FFH in A and 00H i...

Page 153: ... starts 0l00H bytes after beginning of the file The base addres is always 0100H so the assembler source of the module has to begin with a pseudo instruction ORG l0 0H The code is immediately followed by a bit table For each byte within the code area one bit flags whether the byte has to be adapted to the current loading address or not The first bit bit 7 of the first byte of the bit table denotes ...

Page 154: ...ump instruction in such a way that it leads into the follwing module resp into the program loader The vector within the loader itself points into the EOS bank manager A pointer to the previous module in the chain The module loaded last has a value of 00SH in this point If this byte is different from zero the module will be erased from memory at the next warm start Module name eight characters When...

Page 155: ... do not remove DB 0 reserved DB LF CR Module name DB 13 13 13 reserved TEST LD A C check system call CP 1 is it function 1 JR NZ BOOS pass if hot so LD SPSAVE SP otherwise save stack pointer LD SP STACK and set up own stack area CALL EOS call EOS LD SP I SPSAVE restore old stack CP 0AH Line Feed JR Z LF if so branch CP 03H Control C RET NZ if not return character LD 13FFH otherwise LD REMOVE A set...

Page 156: ...he variable may be altered by the user or it is 11 read only Offset Name CP M Alter Function 00 H 04H no reserved 05H EOSVERS yes yes EOS version number for function 12 Can be changed by function 72 06H 09H USERFLG yes yes four bytes free for user applicatiops 0AH 0FH no reserved 10 H 11H RETCODE yes yes Program return code for function 108 12H 17H no reserved 1BH 19H FILENR no no The number store...

Page 157: ...n tents of this vector are copied into the login vector CONIN device bit vector CONOUT device bit vector AUXIN device bit vector AUXOUT device bit vector LSTOUT device bit vector reserved Time out constant for output devices May be changed by function 73 Current nesting level of DO execut ions reserved Console mode vector Can be set and read by function 109 Address of the EOS workspace buffer This...

Page 158: ... drive displayed in the status line reserved Current Multisecto r count can be set by function 44 Current error mode can be set by function 45 Drive search sequence for commands used by command interpreter Up to 4 entries are possible where a 11 1 11 denotes drive A a 11 2 11 drive B etc A value of zero refers to the current drive The remainder of the table is filled with zero bytes Drive to be us...

Page 159: ...PA yes no Top of memory actualized by the program loader 64H 65H no reserved 66H DIRLBL no no Directory label of current drive May be read by function 101 67H 69H no reserved 6AH 6BH PH CSV no no Address of checksum vectors of current drive 6CH 6DH PH ALV no no Address of allocation vector of cur rent drive May be read by function 27 6EH 7FH DPB no no Disk Parameter Block of current drive A call o...

Page 160: ...ort the program Instead the break condition is displayed at the screen and the operator is requested to respond This bit has been introduced to provide for a general break facility If it is set EOS checks for break characters on each call If a break character has been recognized the address of the corresponding system call 1s diplayed in conjunction with a break message The Operator is offered var...

Page 161: ...ions 3 An error was encountered when changing the current extent In general this error will occur only when the directory struc ture is destroyed 4 Attempt to with random of logical position to non existing extent read operations Essentially this error 1 Can occur only is an extension 5 Directory full It is not possible to establish another ex tent 6 The random block number specified exceeds the u...

Page 162: ...guous filename and hence refuse ambiguous filenames by re turning with this error code 10 reserved 11 A BREAK character has been recognized Physical errors are returned in register H with register A set to 0FFH A value of 0FFH is however also possible with logical errors in which case H is returned as 11 0 11 With EOS physical errors can be handled in various ways The error handling mode is specif...

Page 163: ... Write random 35 Compute file size 36 Set random block i 37 Reset drives 38 Lock drives 39 Release drives 40 Write random w zero EOS System manual Parameters E char E char E char E char code DE string DE line buffer E drive DE FCB DE FCB DE FCB DE FCB DE FCB DE FCB DE FCB DE FCB DE DMA adress DE FCB E user I 0FFH DE random FCB DE random FCB DE random FCB DE random FCB DE bit vector DE bit vector D...

Page 164: ...e DE 11 S R string delimiter E lll Display block DE 112 Print block DE 115 Invoke graphics DE 152 Construct FCB DE FCB FCB FCB It of blocks 0 0FEH 0FFH drive chain flag vector parameter FCB parameter 0 or 9FFH process It dump vector char 9FFH FCB FCB conto1 code drive version It time interval tab stop BREAK char flag byte FCB dir label drive FCB XFCB date date password destination code I 9FFFFH mo...

Page 165: ...Section A System interface This page has been left blank for Your notes EOS System manual Daeumling Zimmermann Page 28 ...

Page 166: ...M plus none Differences to CP M 2 2 resp DiCOS none The calling program is terminated control is passed to the warm start vector at address 0000H This system call has the same effect as a direct jump to 000H If the calling program has set a program error code see function 108 this will be handled by the command interpreter EOS System manual Daeumling a Zimmermann Page 29 ...

Page 167: ... from the keyboard Printable characters and the ASCII control characters CR LF and BS are echoed back to the console device If a HT tabulation character is received the input position will be moved to the predefined tab stop However should raw screen display mode be selected by function 109 no tabula tion will take place Console output may be interrupted by typing the ASCII control character OC3 C...

Page 168: ...nsole output The printer is switched on off parallel to the screen OLE acts like an on off toggle switch If raw screen display has been selected by function 109 it is not possible to control this kind of hardcopy protocol BREAK character The program is aborted Break character recog nition may also be influenced by function 109 EOS System manual Daeumling Zimmermann Page 31 ...

Page 169: ...errors none Differences to CP M plus none Differences to CP M 2 2 resp DiCOS none The character passed in register E is sent to the console If the printer is switched parallel the character is sent to the printer too The screen control facilities mentioned at function 1 are also available with this function EOS System manual Daeumling Zimmermann Page 32 ...

Page 170: ... errors none Differences to CP M plus none Differences to CP M 2 2 resp DiCOS The Auxiliary device was formerly subdivided into the devices Reader and PUN Punch RDR A character is read in Auxiliary device is mapped may be changed freely from the Auxiliary device Normally the to the serial interface but this definition EOS System manual Daeumling Zimmermann Page 33 ...

Page 171: ...erences to CP M plus none Differences to CP M 2 2 resp DiCOS The Auxiliary device was formerly subdivided into the devices Reader and PUN Punch RDR The character passed in register E is written to the Auxiliary device Normally the Auxiliary device is mapped to the serial interface but this definition may be changed freely EOS System manual Daeumling Zimmermann Page 34 ...

Page 172: ...P M 2 2 resp DiCOS none The character passed in register E is sent to the printer If the printer is not ready to accept a character a message will be displayed after a timeout interval which may be set by system function 73 If a key is pressed now printer output is aborted If the printer has been switched parallel to the screen this mode will be canceled EOS System manual Daeumling Zimmermann Page...

Page 173: ...ues FFH Check keyboard for a pending character If no character has been keyed in a value of 0 is returned in register A otherwise A holds the character typed in 0FEH Check keyboard input register A is set to 0 state If there is a character ready for A is set to 0FFH if there is no character FDH Read character from keyboard The system waits until a character is typed then returns it in register A o...

Page 174: ...n to read the IOByte at address 3H Because the device assignment mechanisn has been substantially changed under EOS 3 the IOByte is no longer supported and the function became free for other purposes The Auxiliary device is checked if it has a character ready for input If so A is set to 1 otherwise to Normally the Auxiliary device is defined as serial interface The definition however may be change...

Page 175: ...et the IOByte at address 3H Because the device assignment mechanisn has been substantially changed under EOS 3 0 the IOByte is no longer supported and the function became free for other purposes The Auxiliary device is checked if it is ready to accept a character for output If so A is set to 1 otherwise to 0 Normally the Auxiliary device is defined as serial definition however may be changed arbit...

Page 176: ... system function 110 the string delimiter may be defined arbitrarily DE points to the first character of a text string in memory The string is sent to the console The control facilities mentioned at function 1 are available if they have not been sup ressed by function 109 A 11 11 character denotes the end of the string but function 110 allows for any character to be defined as string delimiter EOS...

Page 177: ...itor then An input line is read from the console and deposited in memory where DE points The input buffer has the following structure MAX CUR 1 2 n MAX must be set prior to the system call and denotes the highest number of characters which can be keyed in Input is aborted if the operator attempts to type more characters The buffer may be up to 127 characters long When typed to n which input is ter...

Page 178: ...rmore it is possible to make the input processing implementation dependant by system function 76 By doing so the line editing functions of CRT terminals can be made available for instance If DE is set to zero the current DMA buffer see function 26 is used for input The buffer may be preset with any desired text terminated with a 0 byte The maximum buffer size must also be specified If the text con...

Page 179: ...e Differences to CP M 2 2 resp DiCOS The keyboard status check can be limited to a test for BREAK characters If a character has been typed on the keyboard a value of lH is return ed in A or 0 otherwise By calling function 109 this function can be modified in such a way that 01H is returned only in case of valid BREAK characters EOS System manual Daeumling Zimmermann Page 42 ...

Page 180: ...y value by function 72 Differences to CP M 2 2 resp DiCOS see above In register H zero is returned MP M II returns 1 in H Register L is set to 31H denoting the compatible CP M version number This which under function can be used to write version number dependant programs do not make use of the CP M 3 0 compatible functions when running CP M 2 2 or similar operating systems EOS System manual Daeuml...

Page 181: ...rameters are new defined e g disk format Drive A is specified as default drive The DMA address is set to 80 H Drives which are defined as being installed fixed refer to the DPB descripition in section B are not affected by this function i e they remain defined If it should become necessary to reset these drives too use system function 37 which resets all drives regardless of their characteristics ...

Page 182: ...e Differences to CP M plus The physical drive selection is postponed until a physical disk access Differences to CP M 2 2 resp DiCOS see above The drive specified by register E is defined as reference drive for future disk I 0 The drive is not yet selected physically this occurs on the first 11 real 11 access of the drive EOS System manual Daeumling Zimmermann Page 45 ...

Page 183: ...taken over The file specified by DE is opened Opening a file is essentially a directory search on the selected drive for the file name followed by copying the information found there into the FCB The high extent byte is always set to zero Normally the lower extent byte is also set to zero however it is possible to specify an extent number in order to open a specific extent The file name must be un...

Page 184: ... any other user area It becomes thus unnecessary to have a copy of each program in each user area If extent 0 has been opened and time stamps on file access is specified in the directory label time stamping is performed now On a successful search A and H are both set to 0 If the file could not be found A is set to 0FFH and H to 0 In case of physical errors a message is displayed and the program ab...

Page 185: ...e to disk write operations it is updated within the directory A partial close of the file flagged by setting file attrib ute bit 5 is performed as a normal close If the directory label specifies for time stamps on file alterations and the file has actually been altered the current time is entered into the corresponding field in the directory entry If the extent number is different from zero the di...

Page 186: ...ave to be Between the Search calls accesses are allowed return the first matching entry found searched for using system function 18 no other calls which cause directory If the Drive byte contains a question mark all directory entries of the current drive are returned regardless whether they are allocated free or contain time stamps Thus this kind of system call allows for scan ning the whole direc...

Page 187: ...ent DMA buffer Register A contains the number of the entry within this buffer it can assume values from 9 to 3 If time stamps are specified on the drive searched the values returned in A will be 9 to 2 as in this case the last entry contains the Time FCB If for any reason the search was unsuccessful register A is set to 0FFH H contains 0 if the file could not be found otherwise the phy sical error...

Page 188: ... Differences to CP M 2 2 resp DiCOS none If several directory entries are to be searched for the directory scan process has to be initiated by function 17 and continued by using function 18 This means that between calls of function 17 and 18 no system calls may be performed which lead to eventual directory accesses Furthermore the FCB used by function 17 must not be altered by the user program in ...

Page 189: ...hing the file name specified in the FCB will be erased The file name may contain question marks If file attribute fS is set only XFCBs are to be erased Because EOS does not support XFCBs this operation mode is treated as a successful erasure i e actually nothing will be erased but A and H are returned with zero values If one or more of the files to be erased is write protected the erasure function...

Page 190: ...g to the current multisector count l to 256 blocks of 128 bytes each are read sequentially from disk and deposited in the memory buffer specified by function 26 Reading begins in the current extent at a position specified by the Current record byte byte 33 in the FCB Hence a user program which performs sequential disk input should set the Current record byte to 0 after opening the file When the va...

Page 191: ...ad been closed and an error occurred during closing so that the FCB had to be marked as invalid If the error handing mode is set to automatic return any physical errors are returned in register H in which case A is set to 0FFH EOS system manual Daeumling Zimmermann Page 54 ...

Page 192: ...y so no data can be lost 3 If time stamps upon file alterations are specified function 16 in stead of this function will perform the stamping task Differences to CP M 2 2 resp DiCOS Up to 256 blocks correspoding to 32 KBytes may be transferred by one write operation According each are The file to the current Multisector count l to 256 blocks of 128 bytes written from the buffer specified by the cu...

Page 193: ...ccurred and writing had to be aborted A holds the error code and H the number of blocks transferred so far the value lies between 0 and 255 In case of error EOS automatically tries to close the file Contrary to CP M plus no data can be lost If the error handing mode is set to automatic return any physical errors are returned in register H in which case A is set to 0FFH EOS System manual Daeumling ...

Page 194: ...and Extent byte must be initalized by the calling program no question marks are allowed in the file name EOS initializes the FCB and opens the file for read write accesses The upper extent byte is always set to 3 by EOS hence extents with numbers between 3 and 31 may be created directly However it is better to avoid this because EOS can exhibit sensitive reactions to false directory contents EOS i...

Page 195: ... exists on the same disk and in the same user area If so the file creation request will be rejected Physical mode In code errors are treated according to the specified error handling case of return A is set to 0FFH and H holds the physical error EOS System manual Daeumling Zimmermann Page 58 ...

Page 196: ...case the FCB contains two file names the second one beginning at byte 17 in the FCB Its structure corresponds to the first file name in bytes 1 to 16 The only difference is that in the second file name the Drive byte is not evalu ated Both file names must be unam biguous i e they must not contain question marks If a file of the same name already exists on the drive renaming will be refused by EOS ...

Page 197: ...CP M plus none Differences to CP M 2 2 resp DiCOS none A 16 bit vector is returned in HL denoting all drives currently known to the system i e all drives which have been accessed after the last disk system reset The least significant bit bit in register L corre sponds to drive A the most significant one bit 7 in H to drive P EOS System manual Daeumling Zimmermann Page 6 ...

Page 198: ...logical errors none Possible physical errors none Differences to CP M plus none Differences to CP M 2 2 resp DiCOS none The number of the drive selected by function 13 or 14 is register A where a value of denotes drive A 1 drive B EOS System manual Daeumling Zimmermann returned in and so forth Page 61 ...

Page 199: ...ir DE denotes the begin of the memory buffer for all future disk I 0 The DMA buffer is used for buffering information with a number of other functions too Contrary to CP M plus passwords are ignored as EOS does not support passwords Beyond disk I 0 functions the following functions make use of the DMA buffer for information transfer 1 read line from console 17 search for file 18 search for subsequ...

Page 200: ... where begin ing with the most significant bit of the first byte each bit denotes an allocation cluster If the bit is set the corresponding cluster on disk is occupied The allocation vector should not be used to determine the space remain ing on a drive as it can be placed in a different memory bank For this purpose function 46 should be called which is used by all auxiliary programs of EOS If no ...

Page 201: ...ogical errors none Possible physical errors none Differences to CP M plus none Differences to CP M 2 2 resp Dicos none A call of this function marks the current drive as write protected The protection can only be deleted by functions 13 or 37 EOS System manual Daeumling Zimmermann Page 64 ...

Page 202: ...hysical errors none Differences to CP M plus Physical errors can occur Differences to CP M 2 2 resp DiCOS none A 16 bit vector is returned in HL denoting all drives currently write protected The least significant bit bit 0 in register L corresponds to drive A the most significant one bit 7 in H tp drive P EOS System manual Daeumling Zimmermann Page 65 ...

Page 203: ... M 2 2 resp DiCOS l The Byte Count has newly been introduced 2 The Backup attribute bit has been inverted as defined in DiCOS The file attributes specified in the FCB are written to the directory The attribute bits are defined as follows fl 4 tl t2 t3 3 fB freely definable reserved for EOS Write protection 11 System11 file File is backed up If attribute bit f6 is set the Current Record field of th...

Page 204: ...d are set to upon return If the file was not found A is and H to 0 both A and H set to 0FFH Physical mode In code errors are treated according to the specified error handling case of return A is set to 0FFH and H holds the physical error EOS System manual Daeumling Zimmermann Page 67 ...

Page 205: ...rors none Differences to CP M plus Physical errors can occur Differences to CP M 2 2 resp DiCOS none The beginning address of the disk parameter block of the current drive is returned in HL If no current drive has yet been defined case of physical errors during reading return the definitons are read HL will be set to 0FFFFH In on EOS System manual Daeumling Zimmermann Page 68 ...

Page 206: ... function set to 0FFH returned in A will be set to returns or sets the current user area If register E is no new user area will be set but the current value is If the value in E is less than 34 the current user area that value The range of possible values is not limited to 0 to 15 facility to handle XFCBs in the range 16 to 31 if Furthermore Directory labels user area 32 and time 33 can be accesse...

Page 207: ...ted by a three byte block number which is stored in the FCB beginning at byte 34 just after the Current record byte The block number may assume values from 0 to 65535 It is stored in reverse order i e the least signifi cant byte is to be found in FCB byte 34 the next one in byte 35 and the most significant in byte 36 The file must have been opened prior to issuing this call According to the curren...

Page 208: ... A holds an error number and H the number of successfully read blocks Physical mode In code errors are treated according to the specified error handling case of return A is set to 0FFH and H Polds the physical error EOS System manual Daeumling Zimmermann Page 71 ...

Page 209: ...file will be closed automatically 2 The highest possible block number is 65535 0FFFFH Differences to CP M 2 2 resp DiCOS none This function is similar to function 21 Write Sequential The main difference is that the start position for disk access is denoted by a three byte block number which is stored in the FCB beginning at byte 34 just after the Current record byte The block number may assume val...

Page 210: ... processing However the write the current block on the first sequential access blocks if the Multisector Count is greater than 1 then switch to system will re resp the first In case of logical errors register A holds an error number and H the number of successfully read blocks Physical mode In code errors are treated according to the specified error handling case of return A is set to 0FFH and H h...

Page 211: ...the next sequential block is returned in bytes 34 to 36 in the FCB For example if the last block occupied by the file has number 65535 65536 will be returned even when the file consists of this single block only It is not necessary to open the file prior to this function If the file has been opened for writing it must be closed so that the directory information is updated If the file was found bot...

Page 212: ...ghest possible block number is 65535 Differences to CP M 2 2 resp DiCOS none FFFFH A call to this function computes the random record number for the next block of a file processed sequentially which is then deposited in FCB bytes 34 to 36 It becomes thus possible to switch over from random to sequential mode and back again arbitrarily EOS System manual Daeumling Zimmermann Page 75 ...

Page 213: ...it cor responds to a disk drive The least significant bit bit in register L denotes drive A the next one drive B and so forth up to the most significant bit 7 in register H which stands for drive P If a bit is set definitions e g redetermined on the ion of the drive is EOS System manual the tables of the corresponding drive is reset All recording format data carrier capacity etc are next access of...

Page 214: ...ferences to CP M plus none Differences to CP M 2 2 resp DiCOS New function This is a specific MP M II function single user system like EOS It has purposes only A call of this function as stated above which is not very meaningful in a been defined for compatibility will return the register settings EOS System manual Daeumling Zimmermann Page 77 ...

Page 215: ...fferences to CP M plus none Differences to CP M 2 2 resp DiCOS New function This is a specific MP M II function single user system like EOS It has purposes only A call of this function as stated above which is not very meaningful in a been defined for compatibility will return the register settings EOS System manual Daeumling Zimmermann Page 78 ...

Page 216: ...is write protected 3 File is write protected 4 Drive not selectable 9 Question marks in file name Differences to CP M plus The highest possible block number is 65535 Differences to CP M 2 2 resp DiCOS none 0FFFFH This function is equivalent to function 34 write random It differs in the respect that previously unallocated disk areas are filled with zero bytes resulting in well defined disk contents...

Page 217: ...rors none Differences to CP M plus none Differences to CP M 2 2 resp DiCOS New function This is a specific MP M II function sing le user system like EOS It has purposes only A call of this function as stated above which is not very meaningful in a been defined for compatibility will return the register settings EOS System manual Daeumling Zimmermann Page 80 ...

Page 218: ... Differences to CP M plus none Differences to CP M 2 2 resp DiCOS New function This is a specific MP M II function single user system like EOS It has purposes only A call of this function as stated above which is not very meaningful in a been defined for compatibility will return the register settings EOS System manual Daeumling Zimmermann Page 81 ...

Page 219: ...one Differences to CP M plus none Differences to CP M 2 2 resp DiCOS New function This is a specific MP M II function single user system like EOS It has purposes only A call of this function as stated above which is not very meaningful in a been defined for compatibility will return the register settings EOS System manual Daeumling Zimmermann Page 82 ...

Page 220: ...with zero fill Normally one 128 byte block is transferred by above functions The number of blocks read written per system call however can be set to any value from 1 tO 256 where a value of zero stands for the transfer of 256 blocks Hence up to 32 Kbytes of data can be processed by a single disk I 0 operation If a locical error occurs its number is returned in register A in which case H holds the ...

Page 221: ...termines the future system reaction to physical errors E may assume one of the following values FFH No error messages will appear on the console A physical error code is returned to the calling program FEH any other An error message will be displayed and the system returns to the calling program with the error number in register H An error message will be displayed and the operator can respond int...

Page 222: ...ytes of the DMA buffer The least signifi cant byte is then to be found in the first byte of the buffer and the next most significant in the second byte EOS always returns zero in the third byte of the buffer The number thus specified denotes the amount of unallocated blocks of 128 bytes each To obtain the free space as measured in Kbytes divide 8 into the number If the drive specified is not yet d...

Page 223: ... command line terminated by a zero byte The command interpreter treats this command line right the same way as if typed in at the keyboard default drive and user area are set to the values last used by the command interpreter If the purge flag register E is not zero current drive and user area are retained on program start Any errors within the command line are handled as if the command line were ...

Page 224: ...tected 4 Drive not selectable Differences to CP M plus The purge flag is not interpreted Differences to CP M 2 2 resp DiCOS New function Due to EOS memory management data buffers are not written to the disks immediately following a disk write command This function writes all yet unwritten buffers Physical errors are treated according to the current error handling mode EOS System manual Daeumling Z...

Page 225: ...bles 1 area DE points to an area with following parameters DB DB DW OFFSET CODE VALUE Address of variable relative to begin of area Read I write flag Byte or word for new value The read write flag may assume following values 0FEH 0FFH 000H Set byte Read byte Read value All other values are reserved For the permitted values of OFFSET refer to chapter 11 System Variables 11 WARNING System variables ...

Page 226: ...nable application programs emulate the former CP M BIOS functions EOS maintains a jump vector table compatible to the BIOS entry table of DiCOS resp CP M 2 2 which is simulated using this function too DE must be loaded with the address of following parameter table DB FUNC BIOS function code DB AREG Value for register A ow BCREG Value for register pair BC ow DEREG Value for register pair DE DW HLRE...

Page 227: ...unction modules must have been loaded or the program must be provided with an em ty program header EOS expects an active FCB in DE i e the file must have been opened Furthermore the desired loading address has to be passed in bytes 34 and 35 R0 and Rl in the FCB which must not be less than HJ0H There must be enough space in memory to store the entire file If both these conditions are not met EOS r...

Page 228: ...ew function Function 60 allows to invoke active function modules for initialization parameter passage and other purposes DE points to a table containing the following parametes DB DW DW SFUNC NPARAM PARAMl Special function Number of parameters Parameter 1 DW PARAMo Parameter n Special functions 128 to 255 are reserved for EOS If none of the functions modules felt being addressed EOS returns FFH in...

Page 229: ...P M plus New function Differences to CP M 2 2 resp DiCOS Old DiCOS function This function has the same effect as function 45 except that values than 0FFH will cause a return to direct error handling Function has been retained for compatibility to DiCOS X rJ Jl l If Ji II J I l f J I f lEos System I ma al i l 1 I l I Daeumling Zimmermann all other Page 92 ...

Page 230: ...Possible logical errors none Possible physical errors none Differences to CP M plus New function Differences to CP M 2 2 resp DiCOS Old DiCOS function This function has been retained however it has no effect any more to preserve DiCOS EOS System manual Daeurnling Zimmermann cornpatibili ty Page 93 ...

Page 231: ...ble logical errors none Possible physical errors none Differences to CP M plus New function Differences to CP M 2 2 resp DiCOS Old DiCOS function This function has been retained to preserve DiCOS compatibility however it has no effect any more EOS System manual Daeumling Zimmermann Page 94 ...

Page 232: ...ld DiCOS function The character passed either BREAK characters set to 0FFH otherwise in register E Control C or to 0 is checked whether it the user definable is If one so A of is If E contains 0FFH on entry the keyboard will be checked previously When there is a character pending this will be checked If the check for BREAK characters has been suppressed by function 109 A is always returned set to ...

Page 233: ... refer to the DO COM program If the file could not be executed either because it has not been found or a physical error occurred a value of FFH is returned in A other wise When an error is detected during executing the file input will be directed back to the keyboard again without any comment The same will happen when the end of file is encountered If the file attribute bit 4 is set in the FCB the...

Page 234: ... could not be opened either because it has not been found or a physical error occurred a value of 0FFH is returned in A otherwise 0 When an error is detected during printing the print process is aborted The same will happen when the end of file is encountered If the file attribute bit 4 is set in the FCB the file will be erased after printout is completed Under EOS this function has been inplement...

Page 235: ...ground printing is active 1 Restart background printing The file is printed again from its beginning 2 Abort background printing The file will be erased if attrib ute bit f3 is set 3 Resume background printing A background printing process interrupted by code 4 is continued 4 Interrupt background printing Printing is stopped until it is resumed or aborted by one of the codes 1 2 or 3 Under EOS thi...

Page 236: ... value of 0 corresponds to drive A 1 to drive B and so forth up to 15 for drive P If the drive is ready A is set to 0FFH and the bits in H are set as follows Bit 7 set Bit 6 set Data carrier cannot be removed Drive contains two sided diskette If the drive is not ready A is set to 0 undefined A is set to 7 If the drive parameters are It should be noted that no physical drive access is done so the d...

Page 237: ...ors none Differences to CP M plus New function Differences to CP M 2 2 resp DiCOS New function The system version number returned by function 12 is set to the passed in register E It becomes thus possible to run programs expect a specific system version value which If DE is set to 0FFFFH register A the current version number is returned in EOS System manual Daeumling Zimmermann Page 100 ...

Page 238: ... to CP M 2 2 resp DiCOS New function The timeout interval which has to elaspe before the system requests operator intervention for non ready output devices is set to the data passed in E Register E can be set to any value from to 255 where is interpreted as 256 If DE is set to FFFFH register A the current timeout interval is returned in For details about the timeout interval refer to Device assign...

Page 239: ... function Differences to CP M 2 2 resp DiCOS New function The tab stop used with functions 2 9 and lll is set to a new value passed in E Register E may contain only one of the values 2 4 8 16 or 32 Any other value will cause a confusing screen image If DE is set to 0FFFFH the current tab stop is returned in register A On system start the tab stop is set to 8 EOS System manual Daeumling Zimmermann ...

Page 240: ...rences to CP M plus New function Differences to CP M 2 2 resp DiCOS New function The user definable second BREAK character is set to the character passed in register E If E is zero the second BREAK character is disactivated If DE is set to 0FFFFH in register A the current second BREAK character is returned On system start no second BREAK character is defined EOS System manual Daeumling Zimmermann ...

Page 241: ...ility Bit 6 reserved for CP M plus compatibility Bit 5 ON Function 10 uses the screen editor OFF Function 10 uses the EOS mini editor Preset state OFF Bit 4 ON When a BREAK character is typed EOS asks the operator if the program shall be aborted OFF Program abortion on BREAK character typed in Preset state OFF Bit 3 ON On each system BREAK character aborted OFF Normal behaviour Preset state OFF ca...

Page 242: ...le physical errors none Differences to CP M plus Not implemented Differences to CP M 2 2 resp DiCOS New function This function has not been implemented because EOS has another memory management algorithm than CP M A call of this function will return the above mentioned values EOS System manual Daeumling Zimmermann Page 105 ...

Page 243: ...ta in records past the specified record number are lost The associated disk space is released and be comes free for other purposes The record number is stored in reverse order i e byte 34 is the least significant byte of the number byte 35 the next one and byte 36 the most significant always 0 under EOS If the return Possible file was successfully truncated In case of logical errors A is reasons f...

Page 244: ...the future data carrier disk name Byte 13 of the FCB extent byte holds a bit vector with following information Bit 6 Bit 5 Bit 4 Write time stamps on each file access Write time stamps on file alterations Write time stamps on creation of new files All other bits are reserved Bit 4 and bit 6 cannot be set simultaneously as there is only one data field for both types of time stamps Attempts to creat...

Page 245: ...l A and H are returned with zero values If due to missing time stamp en tries or incompatible kinds of time stamps no new label has been writ ten A is set to 0FFH and H is 0 Physical errors are treated according to the current error handling mode EOS System manual Daeumling Zimmermann Page 108 ...

Page 246: ...gister E is returned in A On entry a value of 0 in E denotes drive A l drive B and so on The data byte itself is byte 13 in the directory label entry containing the foll owing bits Bit 6 Write time stamps on each file access Bit 5 Write time stamps on file alterations Bit 4 Write time stamps on creation of new files Bit 0 Directory label exists If no directory label exists A is returned with a zer...

Page 247: ...mps are returned in the FCB as follows Byte 13 Bytes 25 Bytes 29 2B 32 Password byte always 0 under EOS Time stamp of creation or last access Time stamp of last file alteration If there are no time stamps the fields mentioned above are zero filled For the format of time stamps refer to the corresponding chapter On a successful completion of this function A and H are both returned with a zero value...

Page 248: ... physical errors none Differences to CP M plus Function not implemented Differences to CP M 2 2 resp DiCOS New function Under CP M plus this function is used to create passwords for a file Because EOS does not support passwords the call is ignored and the registers are set as stated above EOS System manual Daeumling Zimmermann Page 111 ...

Page 249: ...fferences to CP M 2 2 resp DiCOS New function By means of this function value DE points to a memory the system date area containing can be set to any following data desired ow DB ow DATE HOUR MINUTE Julian Date Day number lis January lst 1978 Hour BCD format Minute BCD format The seconds are alWays set to 0 upon a call of function 104 EOS System manual Daeumling Zimmermann Page 112 ...

Page 250: ...ifferences to CP M 2 2 resp DiCOS New function The internal system clock calendar is read and the data deposited at the memory area pointed to by DE in the following manner ow DB ow DATE HOUR MINUTE Julian Date Day number l is January 1st 1978 Hour BCD format Minute BCD format The seconds are returned in register A as two BCD digits EOS System manual Daeumling Zimmermann Page 113 ...

Page 251: ... errors none Possible physical errors none Differences to CP M plus Function not implemented Differences to CP M 2 2 resp DiCOS New function Under CP M plus this function sets a standard password Because EOS does not support passwords the call is simply ignored EOS System manual Daeumling Zimmermann Page 114 ...

Page 252: ...ical errors none Possible physical errors none Differences to CP M plus none Differences to CP M 2 2 resp DiCOS New function The serial number of the system kernel is stored in pointed to by DE in the following manner DB DW OEM USER EOS System manual Serial number of manufacturer Serial number of end user Daeumling Zimmermann the memory area Page 115 ...

Page 253: ... programs However the programs must be loaded by function 47 as the command interpreter always resets the program return code to 0 The system kernel also sets certain return codes Following values are permitted HHJ0 FEFF FFB0 FF7F FF80 FFFC FFFD FFFE Successful program execution Not successful program execution reserved Program aborted due to physical error Program aborted due to BREAK command by ...

Page 254: ...rther ways of system The bit vector passed in DE has following meanings where bit least significant bit of register L function control 0 is the Bit 0 ON Function 11 returns another value than zero only when a BERAK character has been typed Bit l OFF Function 11 returns a non zero value on any character typed in ON It is not possible to interrupt screen output by typing control S Control S is recog...

Page 255: ...ed Programs cannot be aborter by typing a BREAK character OFF BREAK characters are valid Bits 8 and 9 are used for keyboard redirection they control keyboard state Keyboard state requests are ingnored except requests follow immediately upon one another the second state request returns 1 01 Keyboard state requests always return 00H 10 Keyboard state requests always return 01H ll Redirection is igno...

Page 256: ...none Possible physical errors none Differences to CP M plus none Differences to CP M 2 2 resp DiCOS New function The string delimiter used with function 9 can be arbitrarily defined If FFFFH is string delimiter is returned in register A String Delimiter normally the 1 character passed in DE the current EOS System manual Daeurnling Zimmermann Page 119 ...

Page 257: ...fferences to CP M 2 2 resp DiCOS New function DE points to an area containing the following parameters DW DW START SIZE Starting address of block to be printed Length of block in bytes The full block of memory is printed on the screen As EOS uses function 2 internally all control features described there are active dependent on the current console mode EOS System manual Daeumling Zimmermann Page 1...

Page 258: ...sible physical errors none Differences to CP M plus none Differences to CP M 2 2 resp DiCOS New function DE points to an area containing the following parameters ow ow START SIZE Starting address of block to be printed Length of block in bytes The full block of memory is printed on the printer EOS System manual Daeumling Zimmermann Page 121 ...

Page 259: ... 2 resp DiCOS New function Function 115 provides for direct control of the built in graphic func tions Following data have to be set up in the area where DE points to DB ow ow OPCODE PARAMl PARAMo Graphic operation code Parameter 1 Parameter n The number of parameters required depends on the specific graphic func tion called For details refer to section C 11 Graphics interface11 EOS System manual ...

Page 260: ... is parsed for a valid filename and accordingly The string may contain up to 128 be 36 bytes long The parsing process obeys to an FCB is characters the follow Spaces and tabs are skipped If a colon is found the immediately pre ceding character will be used as drive indicator Filename and type are taken over as specified the filename must be separated from the file type by a period If a semicolon f...

Page 261: ...hows which characters are recognized as delimiters ASCII control characters Space ASCII null IHJH except between type and password period except between name and type except between drive and name comma I After the FCB is completed EOS scans the subequent part of the string skipping spaces and tabs On return HL is set according to the follow ing condition Char encountered 0 0 H or CR delimiter any...

Page 262: ...EOS System manual Section B Hardware Interface Daeumling Zimmermann Page 125 ...

Page 263: ......

Page 264: ...ived disks are read and written and various other tasks are performed Many of these functions are of interest to users who want to write hardware related programs and hence documented here Screen and graphics control are described in sections of their own in order to prevent this section from becoming too large and unhandy This section contains detailed information on Disk parameter block DBP stru...

Page 265: ...s the CPU registers with the data from the parameter table All results are returned in register pair HL As a convenience the contents of register L are copied into register A too Function 25 Move Memory Block represents an exception to this rule as it returns all register pairs BC DE and HL with changed contents Let us assume bypassing EOS this LD LD CALL REGSET DB DB DW OW ow You want to display ...

Page 266: ...k JP FUNC3 Keyboard input JP FUNC4 Screen output JP FUNCS Printer output JP FUNC6 Aux device ovtput JP FUNC7 Aux device irtput JP FUNCB Move head to track JP FUNC9 Select drive JP FUNC10 Set track JP FUNCll Set sector JP FUNC12 Set DMA address JP FUNCl3 Read disk JP FUNC14 Write disk JP FUNClS Check printer state JP FUNC16 Sector translation It shall be mentioned that a jump to the warm start entr...

Page 267: ...l No address marks have been found on the data c_arrier e g due to another recording format 2 The desired sector was not found on the track specified 3 The drive is not ready to accept or transmit any data 4 The sector read has an erroneous checksum it contains bad data 5 An end of sector read This error improperly set up condition was encountered on a multisector disk occurs only when the disk pa...

Page 268: ...defined in the device table The message will appear after timeout elapsed the timeout inter val can be set by EOS function 73 If at this moment a character has been typed at the keyboard output is aborted and a system restart occurs When there is no keyboard input pending the time out process repeats For the screen no time outs are performed EOS System manual Daeumling Zimmermann Page 130 ...

Page 269: ...OS function 37 reset drive The system recognizes a firmly installed drive by the SKEW byte in its DPB see below With such drives the most significant bit in the skew byte is set B 6 The Skew Factor The skew factor determines how logical sectors are mapped to physical sectors on disks To gain a high disk I 0 troughput EOS does not access physically successive sectors After a specific sector has bee...

Page 270: ...any records of 128 bytes each fit into one track 11 Track does not necessarily refer to physical tracks E g on double sided disks the corresponding tracks of the top and rear side are concatenated to form one logical track Block Shift Factor BSF The BSF specifies how many bits a logical block number which addresses 128 bytes has to be shifted right to obtain the number of the allocation cluster Cl...

Page 271: ...n disk A directory entry occupies 32 bytes thus 4 entries fit into one 128 byte block Consequently a cluster of 1 Kbyte holds up to 32 entries a cluster of 2 Kbytes 64 entries and so forth Pre Allocation Map A bit vector is stored in these two bytes which is used for initializing the allocation vector By means of the pre allocation map the clusters required for the directory are reserved Checksum ...

Page 272: ... Shift Factor 0 1 2 3 4 5 Sector Mask This mask is laid over the logical sector number addresing 128 bytes to obtain its offset within a physical sector It retains just the bits lost when shifting the logical sector number Sector size Shift Mask 128 bytes 0 256 bytes 1 512 bytes 3 H l24 bytes 7 2048 bytes 15 4096 bytes 31 Skew Factor If this byte is set to 1 no skew factor is applied to the disk c...

Page 273: ... 2 Return Device Table Address 21 Initialize Device 22 Check Drive Ready 23 Activate Screen Editor 24 Flush Sector Buffers 25 Move Memory Block 26 Get Set Calendar Clock 27 Invoke Graphics 28 Hex Output Hardware interface Parameters c character C character C character C drv E BC track BC sector BC address bit C write code BC sector C device number C drive C col DE addr Data returned AL 0 I charact...

Page 274: ...ng memory management and device drivers and the command interpreter is copied into the RAM disk It it not recommended to make use of this function as a number of the initialization routines should or even must run only once For instance the command interpreter cannot be copied twice into the RAM disk because one copy already exists EOS System manual Daeumling Zimmermann Page 136 ...

Page 275: ...o a well defined state calling EOS function 0 or by a jump hardware interface is invoked Yet and the device drivers are brought This function may be called by a user program doubtful effect although it is of highly Example LD C 50 EOS function code LD DE PARAMS Parameters CALL 5 Call EOS PARAMS OB 1 Hardware function DB ow ow ow EOS System manual Daeumling Zimmermann Page 137 ...

Page 276: ...racter pending If at least one of these devices has a character ready for input registers A and L are assigned the character which would be read otherwise a value of 00H Example LD C 50 EOS function code LD DE PARAMS Parameters CALL 5 Call EOS OR A Ready for input JP NZ INPRDY PARAMS DB 2 Hardware function No DB ow ow ow EOS System manual Daeumling Zimmermann Page 138 ...

Page 277: ...then read and the character is stored in registers A and L No transforma tion will occur i e the 8 bit character is returned as read from the device The driver waits until there is at least one device ready for input Example LD c 50 EOS function code LD DE PARAMS Parameters CALL 5 Call EOS LD CHAR A Store character PARAMS DB 3 Hardware function No DB 0 ow 0 OW 0 ow 0 EOS System manual Daeumling Zi...

Page 278: ...le by EOS function 73 has elapsed Then an error message is displayed on the screen denoting the faulty device If at this moment hardware function 2 returns a non zero value the character pending is read and output will be aborted i e a system restart is performed Otherwise the wait cycle repeats Output device 0 however is not subjected to timeouts defined as monitor screen under EOS Example Displa...

Page 279: ...ction 73 has elapsed Then an error message is displayed on the screen denoting the faulty device If at this moment hardware function 2 returns a non zero value the character pending is read and output will be aborted i e a system restart is performed Otherwise the wait cycle repeats Output device however is not subjected to timeouts defined as monitor screen under EOS Example Send a form feed to t...

Page 280: ...OS function 73 has elapsed Then an error message is displayed on the screen denoting the faulty device If at this moment hardware function 2 returns a non zero value the character pending is read and output will be aborted i e a system restart is performed Otherwise the wait cycle repeats Output device 0 however is not subjected to timeouts defined as monitor screen under EOS because it is Example...

Page 281: ...irst device found is then read and the character is stored in registers A and L No transforma tion will occur i e the 8 bit character is returned as read from the device The driver waits until there is at least one device ready for input Example LD c s EOS function code LD DE PARAMS Parameters CALL 5 Call EOS PARAMS DB 7 Hardware function No DB 0 ow 0 ow 0 ow 0 EOS System manual Daeumling Zimmerma...

Page 282: ...selected drive is returned to zero This function call however does not perform a physical access only internal variables are set Example LD C 50 EOS function code LD DE PARAMS Parameters CALL 5 Call EOS PARAMS DB 8 Hardware function No DB 0 DW 0 DW 0 DW 0 track disk EOS System manual Daeumling Zimmermann Page 144 ...

Page 283: ...ording format If the first access bit is set only some internal variables are assigned new values no disk access will occur After a successful disk select operation HL is returned with a non zero value If the desired drive is not defined or an error was encountered during determination of the drive parameters HL is zero on return The access bit in register E is an enhancement over CP M 2 2 and DiC...

Page 284: ... in BC is stored as the track number for the next disk access The track numbers count from 0 upwards Example Set track 3 for next disk access LD C S0 EOS function code LD DE PARAMS Parameters CALL 5 Call EOS PARAMS DB lg Hardware function No DB ow 3 Track 3 in BC ow ow EOS System manual Daeurnling Zimmermann Page 146 ...

Page 285: ...block of 128 bytes within the track defined by hardware function 10 Under certain circumstances the associated sector is internally buffered Before calling this function late the logical sector number EOS calls hardware function 16 to trans to the physical Example Set sector 20 for next disk access LD c s0 EOS function code LO DE PARAMS Parameters CALL 5 Call EOS PARAMS DB ll Hardware function No ...

Page 286: ...ture disk I 0 The buffer must have a size of at least 128 bytes inorder to accept a full data block If multisector read write is requested this function is called repeatedly by EOS Example Set DMA address to 80 H LD c 50 EDS function code LD DE PARAMS Parameters CALL 5 Call EOS PARAMS DB 12 Hardv1are function No DB ow BOH DMA address DW DW EOS System manual Daeumling Zimmermann Page 148 ...

Page 287: ...s must not necessarily cause a physical disk access because EOS has the ability to buffer several sectors internally After a successful transfer errors are encountered A and displayed on the screen registers A and L are set to 0 If L are set to 1 and an error message Example LD C 50 EOS function code LD DE PARAMS Parameters CALL 5 Call EOS OR A Any errors JP NZ RDERR Jump if so PARAMS DB l3 Hardwa...

Page 288: ...y to mode 0 immediately written back the sector buffer Unallocated write The sector buffer will not be read prior writing because it does not contain valid data is to After a successful write registers A and L are returned with zero values If a write error was encountered both registers are set to l If the sector could not be written due to a write protected data car rier A and L are 2 In any case...

Page 289: ...or to the printer are ready to receive a character A and L are set to 0FFH otherwise 0 Example LD C 50 EOS function code LD DE PARAMS Parameters CALL 5 Call EOS to execute function OR A Test result JP NZ PRINT Non zero means ready PARAMS DB 15 Hardware function No DB 0 ow 0 DW 0 ow 0 EOS System manual Daeumling Zimmermann Page 151 ...

Page 290: ...ical block number which is returned in HL EOS calls this function immediate ly before calling function 11 set sector For details concerning the DPB refer to the corresponding chapter Example Translate sector number 3 LD c 50 EOS function code LD DE PARAMS Parameters CALL 5 Call EOS to execute function LD SECNO HL Save translated sector number PARAMS OB 16 Hardware function No DB 0 DW 3 Sector No 3...

Page 291: ...t vector CONOUT are ready to accept a character A and L are returned with an 0FFH value otherwise 0 Example LD C 50 EOS function code LD DE PARAMS Parameters CALL 5 Call EOS to execute function OR A Ready for output JP NZ OUTYES Non zero means yes PARAMS DB 17 Hardware function No DB 0 ow 0 DW 0 ow 0 EOS System manual Daeumling Zimmermann Page 153 ...

Page 292: ... are interrogated If at least one of them is ready to be read A and L are set to 0 FFH if not so zero values are returned Example LIT C 50 EOS function code LD DE PARAMS Parameters CALL 5 Call EOS to execute function OR A Check state JP NZ READY non zero means ready PARAMS DB 18 Hardware function No DB 0 ow 0 ow 0 ow 0 EOS System manual Daeumling Zimmermann Page 154 ...

Page 293: ...el via bit vector AUXOUT are ready to accept a character A and L are returned with an 0 FFH value otherwise 0 Example LO c 50 EOS function code LO DE PARAMS Parameters CALL 5 Call EOS to execute function OR A Ready for output JP NZ OUTYES Non zero means yes PARAMS DB 19 Hardware function No DB ow ow ow EOS System manual Daeumling Zimmermann Page 155 ...

Page 294: ... the physical devices table is returned in HL On the MZ 3500 this table is deposited at address 0FE00H Example LD C 50 EOS function code LD DE PARAMS Parameters CALL 5 Call EOS to execute function LD A HL Fetch first byte from table PARAMS DB 20 Hardware function No DB 0 ow 0 ow ow EOS System manual Daeumling Zimmermann Page 156 ...

Page 295: ...r passed in register C is re initialized By means of this function changes made in the table can be communicated to the corresponding device The EOS utility DEVICE uses this function Example PARAMS LD LD CALL DB DB ow ow ow EOS System manual C 50 DE PARAMS 5 21 0 2 0 0 EOS function code Parameters Call EOS to execute function Hardware function No Device No 2 Daeumling Zimmermann Page 157 ...

Page 296: ... is set to 0FFH and H contains a bit vector as explained below Bit 7 Bit 6 Data carrier of that drive is not removable Drive contains a two sided floppy disk A zero value in L denotes that the drive is not ready in this case the contents of H are meaningless Example See if drive B is ready LD LD CALL XOR OR JP PARAMS DB DB DW DW DW EOS System manual C 50 DE PARAMS 5 A L NZ READY 22 B A EOS functio...

Page 297: ... C denotes the first valid screen column beginning from 0 The system enters screen edit mode receives an input line and deposits it in the specified buffer Example LD C 50 EOS function code LD DE PARAMS Parameters CALL 5 Call EOS to execute function PARAMS DB 23 Hardware function No DB 0 DW BUFFER Line buffer ow 9 Begin in column 10 ow 0 counted from 0 BUFFER DB 80 Buffer size DS 1 Number of chara...

Page 298: ...ferred immediately out to the disks If any errors occur the procedure is the same as described at hardware function 14 write block Example PARAMS LD LD CALL DB DB DW DW DW EOS System manual C S DE PARAMS 5 24 0 0 0 0 EOS function code Parameters Call EOS to execute function Hardware function No Daeumling Zimmermann Page 160 ...

Page 299: ...ged bank 0 are moved Block Size moved from address DE to address the Z 80 LDIR instruction but the Furthermore only data in memory EOS uses this function for moving data whithin its storage internal working Example Move 500 bytes from 4000H to 5000H LD C 50 EOS function code LD DE PARAMS Parameters CALL 5 Call EOS to execute function PARAMS DB 25 Hardware function No DB 0 ow 500 Number of Bytes ow...

Page 300: ... buffer into the hardware clock The time buffer must be structured as follows DW DB DB DB DATE lSH 30H 55H Julian Date where 1 Jan lst 1978 Hours BCD format Minutes BCD format Seconds BCD format Example Set date time to June lst 1983 15 30 55 LD LD CALL PARAMS DB DB DW DW DW DTETME DW DB DB DB EOS System manual C 50 DE PARAMS EOS function code Parameters 5 26 0 0FFH DTETME 1978 15H 30H SSH Call EO...

Page 301: ...OS function 115 The parameter passed there is transferred to BC However no check will be made of the graphics operation code Hence EOS function 115 should be preferred for graphic functions For a detailed discussion of graphic facilities this manual refer to section C of EOS System manual Daeumling Zimmermann Page 163 ...

Page 302: ...EOS System manual Section C Graphics Interface EOS Function 115 Daeumling Zimmermann Page 165 ...

Page 303: ......

Page 304: ...BC is displayed on the screen as a four digit hexadecimal number Example Display 10000 in hexadecimal format on the screen LD c 50 EOS function code LD DE PARAMS Parameters CALL 5 Call EOS to execute function PARAMS DB 2B Hardware function No DB DW 1 Number DW DW EOS System manual Daeumling Zimmermann Page 164 ...

Page 305: ......

Page 306: ...fines the graphics instruction code which is a number in the 0 to 24 range Usually the instruction code is followed by a number of further parameters which must be defined as words except for the Define Bit Image function which requires byte parameters Let s have a look at an example To set the pixel image dot at coordi nates X 100 and Y 200 You would have to write GRPARM LD LD CALL DB ow DW EOS S...

Page 307: ...endently It is possible to generate two different images because each video output can be programmed to display specific colours only So if screen No 1 were set to display red image elements only and screen No 2 set for green images both screens could be referred to individually by their colour specified There are 3 basic colours available for graphic images By skilful combining the basic colours ...

Page 308: ...B 00H The pattern is defined as the character 11 A11 Another kind of pattern can be used to fill areas Byte l l000HHHm 88H Byte 2 01000100B 44H Byte 3 00100010B 22H Byte 4 00010001B llH Byte 5 HJ001000B 88H Byte 6 01000100B 44H Byte 7 00HJ00_l0B 22H Byte 8 00010001B llH When executing an area fill instruction the area affected will be hatched For line graphics hatchings etc bit images 0 to 12 are ...

Page 309: ... Mask Set Pixel Erase Pixel Draw Line Continue Line Plot Rectangle Plot Circle Plot Circle Arc Paint Rectangle reserved Write Character Continue Writing Characters Define Bit Pattern Hard Copy Define Screen Area Put Screen Area Fetch Screen Area It must be noted that EOS does not check the parameters passed parameters make no sense the results will be garbaged In cases the system may even run out ...

Page 310: ...ruction Code Upper left coordinates Lower right coordinates Colour This function allows for selective erasure of graphics rectangle specified by its diagonal coordinates Xl Yl and colour combination COLOUR is erased in all objects COLOUR as a combination of three bits meaning Within the X2 Y2 the is regarded Bit 0 blue parts bit 1 red parts bit 2 green parts The values permitted for the parameters...

Page 311: ...Bit 4 Set to mix graphics and normal text on screen 4 Define Graphic Screen 2 Parameters DB ow 4 BITS Graphics Instruction Code Bit Vector Graphic screen 2 is set up for graphic output The bit vector specifies Bit Display blue parts of graphics Bit 1 Display red parts of graphics Bit 2 Display green parts of graphics Bit 3 Set for colour monitor reset for black white monitor Bit 4 Set to mix graph...

Page 312: ...ve even with normal screen use mode The COLOUR value must be in the 0 to independent of graphics it may be if the screen is operated in colour 6 Set Plot Colour Parameters DB ow 6 COLOUR Graphics Instruction Code Colour All subsequent graphic objects will be plotted in the colour which must be coded as a number between 0 and 7 EOS System manual Daeumling Zimmermann specified Page 172 ...

Page 313: ...effectively erase 3 Additive mixing of colours 8 Define Line Mode Parameters DB DW 8 MASK Graphics Instruction Code Bit Vector The line mode for subsequent plot instructions is defined Lines or vectors are composed of a sequence of pixels dots which is defined by this function For instance a dashed line may be defined by the bit pattern 1100110011001100 binary EOS System manual Daeumling Zimmerman...

Page 314: ... e lit up in the predefined plot colour The coordinates may assume the following values X y 0 to 639 0 to 399 10 Erase Pixel Parameters DB DW lH X Y Graphics Instruction Code Coordinates The pixel at coordinates X Y is reset following values The coordinates may assume the X y 0 to 639 0 to 399 EOS System manual Daeumling Zimmermann Page 174 ...

Page 315: ...coordinates are limited to the following intervals X y 0 to 639 0 to 399 12 Continue Line Parameters DB DW 12 X Y Graphics Instruction Code Final coordinates A straight line is drawn from current position of phic cursor to the point at coordinates X2 Y2 determined by graphic function 6 the line mask coordinates must lie within following intervals the invisible gra The line colour is by function 8 ...

Page 316: ... The coordinates must lie within following intervals X y Ql to 639 Ql to 399 14 Plot Circle Parameters DB ow ow 14 X Y R Graphics Instruction Code Centre of Circle Radius A circle of radius R is drawn around the centre specified by its coordi nates X Y The line colour is determined by graphic function 6 the line mask by function 8 The coordinates must lie within the following intervals X y Ql to 6...

Page 317: ...tion 8 The coordinates must lie within the following intervals X y PHI 0 to 639 0 to 399 0 to 359 16 Fill Rectangle Parameters DB 16 Graphics Instruction Code DW Xl Yl Upper left corner DW X2 Y2 Lower right corner DW COLOUR Colour DW IMAGE Image Number The coordinates Xl Yl and X2 Y2 denote the diagonal of a rectangle which is filled with a certain pattern The pattern is a multiple of one of the 8...

Page 318: ...by its equivalent ASCII code All images may be altered by graphic function 20 The value DIRECT and the writing direction correspond as follows Normal from left to right 1 45 degrees inclining to upper right 2 Vertically up 90 degrees 3 135 degrees 4 Horizontally but head down to left 180 degrees 5 45 degrees declining to lower left head down 225 degrees 6 Vertically downwards 270 degrees 7 45 degr...

Page 319: ...aracter At the current position of the invisible graphic cursor a character is written The character is formatted as defined by graphic function 18 This function must be called only after function 18 is completed Its purpose is to write complete strings of characters EOS System manual Daeumling Zimmermann Page 179 ...

Page 320: ... characters by so tware An image of 8 time 8 bit is defined and stored at the position CHAR which can be referred to by functions 18 and 19 Furthermore the pat tern can be used as filling pattern along with function 16 For CHAR values between 0 and 126 are permitted Bit images 0 to 12 are predefined with fill patterns in order to simpli fy generating block graphics EOS System manual Daeumling Zimm...

Page 321: ...t is thus possible to generate a hard copy with specific colours 22 Define Screen Area Parameters DB ow OW OW 22 Xl Yl X2 Y2 COLOUR Graphics Instruction Code Upper left corner Lower right corner Colour A screen area is defined which may subsequently be written to or read from a file Xl Yl and X2 Y2 denote the upper left and lower right corner of a rectangular area of the screen following function ...

Page 322: ...nction 22 and repeated calls of graphic funtion 23 If this rule is not observed transfer will be aborted 24 Fetch Screen Area Parameters DB 24 Graphics Instruction Code By means of this function a graphic data block of 128 is fetched from the graphic screen and deposited at the current DMA buffer If HL is 0 upon return from this function the readout of data from the graphic screen is completed oth...

Page 323: ......

Page 324: ...EOS System manual Section D CRT Interface Daeumling Zimmermann Page 183 ...

Page 325: ......

Page 326: ...wo widely used standard terminals There are two control codes to switch between both terminals ESC A TeleVideo 950 Terminal TV950 ESC B Lear Siegler ADM3A Terminal as implemented in the MZ 80B CP M version After cold start and program termination TeleVideo mode is selected by default All system programs are adapted to TeleVideo mode If an application program is to run under ADM3A mode this mode mu...

Page 327: ...rl H I ESC Cursor right Ctrl L Ctrl L I ESC Set cursor position ESC y x Ctrl I ESC Read cursor position ESC I I Ctrl I ESC Erase functions TV950 ADM3A Entire screen Ctrl Z I ESC Ctrl Z I ESC I I Cursor to end of screen ESC Y I ESC y Ctrl S I ESC 3 Cursor to end of line ESC T I ESC t Ctrl R I ESC 2 Cursor to page position ESC 6 y x Cursor to line position ESC 5 x Insert and Delete TV950 ADM3A Inser...

Page 328: ...rolling Status line TV950 only Display system status line Display user status line Set system status line Set user status line EOS System manual TV950 ESC 1 b 1 ESC 1 d 1 ESC 1 1 1 ESC 1 0 TV950 Ctrl G ESC 1 A 1 ESC B ESC I ESC 1 ESC ESC I ESC C ESC 3 ESC 4 n n n Ctrl Y I ESC N Ctrl underline ESC ESC ESC ESC ESC ESC ESC P T 1111 2 7 TV950 0 0 0 0 n xlo oy2 CRT Interface ADM3A Ctrl A I ESC I 1 Ctrl...

Page 329: ...olumn must be specified with an offset of 20H respectively Example ESC space space sets the cursor to its home position 0 0 4 2 Read Cursor Position TV950 ESC ADM3A Ctrl or ESC The cursor position is returned in the same form of key codes as it is set The transfer of the position is terminated by CR Example The cursor is set to position y 5 and x 4 Following codes will be returned CR EOS System ma...

Page 330: ...inking inverse characters It must be noted that the TeleVideo terminal treats attributes in a different manner Setting an attribute on the TV950 causes a space being written on the screen at the cursor position and the remainder of the screen is displayed using the attribute until another attribute is encountered or up to the end of the screen Due to organizational rea sons only the characters wri...

Page 331: ...CII values as follows 0 Cursor off not displayed 1 Cursor is blinking block 2 Cursor is steady block 3 Cursor is blinking underline 4 Cursor is steady underline Example ESC l causes the cursor to be displayed as a blinking block 0 4 5 Video On Off It is possible to suppress the screen display All CRT functions remain fully active but the screen is blanked until video is switched on again TV950 ADM...

Page 332: ...mfort especially with the EOS Line Input function 0 4 7 Monitor Mode By Ctrl underline the Monitor mode is toggled between four different modes which are effectiv especially in the Edit Mode when testing software Monitor Mode disabled full Monitor Mode CRT Monitor Mode KBD Monitor Mode 0 4 8 Screen Hardcopy all control characters from input and output are processed in the normal way all control ch...

Page 333: ...Where n 0 Mode is switched off and l Mode is switched on D 4 11 Clock Display On Off In TeleVideo mode the current date and time can be displayed in the status line Several modes are available TV950 ESC n where n 0 Clock on 1 1 Clock off Clock 11 off is locked If the parameter switched on off by specified is 0 or 1 the clock display control function Ctrl 3 D 4 12 Window Scrolling TV950 ADM3A ESC 7...

Page 334: ...s on the current status of EOS 1 2 3 4 5 6 7 Field 0 Name of current program the one most recently started by the command interpreter Field l Default drive Field 2 Active user area Field 3 Keyboard and screen state KeyLock Monitor Key Def UsrStat SysStat Keyboard is locked no input possible Screen in Monitor mode Input of Key definitions Setting User status line Setting System status line Screen i...

Page 335: ...ated Example ESC e 8 CR generate system status line by EOS and subsequently display by ESC h D 5 2 The User Status Line TV950 ESC g Display user status line TV950 ESC f ESC G a text CR set up a attributes as for screen e g for entire line 2 blink but valid text up to 80 characters of text CR end of text Setting an attribute is optional If the character string ESC G a is not s ent inyerse will be u...

Page 336: ...switch The cur keyboard state is indicated in field No 2 of the system status In PRO program setting the keyboard is released In OP operation setting the keyboard is locked 0 6 1 The Alpha numerical Full Keyboard The keyboard corresponds to the QWERTY standard piaced here TAB and cursor control are like most free definable The only non redefinable keys are The function keys other function keys ENT...

Page 337: ...ne on I off Perform a hardcopy of the screen contents onto a printer via the parallel interface Perform a hardcopy of the graphics on the SHARP printer I0 700 Switch graphics display on I off Start of manual key definition ink jet All input is echoed on the screen First the key to be defined must be pressed which is then displayed in plain text If ESC CMD is pressed the original system definition ...

Page 338: ...text Ctrl Y Ctrl Y Ctrl Y Ctrl X n text n text Ctrl Y Ctrl Y n Code of the key to be redefined Text up to 128 characters of text per key All codes are allowed The codes Ctrl P and must be lead in by another Ctrl P control Ctrl Y By one single system call several keys may be defined in sequence Each definition must be terminated by Ctrl Y The entire definition sequence must be terminated by two Ctr...

Page 339: ...eys 60h Ctrl CMD 41H A F1 6lh a Ctrl Fl 42H B F2 62h b Ctrl F2 43H C F3 63h c Ctrl F3 44H D F4 64h d Ctrl F4 45H E F5 65h e Ctrl FS 46H F F6 66h f Ctrl F6 47H G F7 67h g Ctrl F7 4BH H FB 6Bh h Ctr1 F8 49H I F9 69h 1 i 1 Ctr1 F9 4AH J FHJ 6Ah 1 j 1 Ctr1 Fl0 4BH K HOME 6Bh k Ctr1 HOME 4CH L DEL 6Ch l UP 4DH M INS 6Dh m DOWN 4Eh N ENTER 6Eh n RIGHT 4Fh O CL 6Fh o LEFT 50h P RUN Slh Q EDIT 52h R DEB 5...

Page 340: ...System manual ESC CR TAB Ctrl O RUBOUT Ctrl Underln Ctrl S Ctrl C Ctrl K Ctrl V Ctrl H Ctrl L Ctrl Ctrl Z Ctrl X IT 0 Lead in for screen control codes Pass line to EOS Horizontaler tabulator Insert character Delete character Monitor mode on off Suspend screen output Abort program Cursor one line up Cursor one line down Cursor one character to the left Cursor one character to the right Cursor to 0 ...

Page 341: ...able with new definitions CALL SETDEF redefine keys JP START normal starting address RESET LD DE RESTBL Code for re initialization CALL SETDEF reset key definitions JMP 0 and back to EDS SETDEF PUSH DE save address of table LD C l09 EOS Console Mode LD DE 0FFFFH old value CALL EOS read LD OLDMOD HL and save LD C l09 EOS Console Mode LD DE 0FH no transformations CALL EOS set POP DE fetch address ag...

Page 342: ...V 13 CTLY 0 CTLP CTLY CTLY L l27 CTLY 1 M1 lS CTLY N 14 CTLY X 9 CTLY V 00 CTLY W CTLY CTLY INIMSG RESMSG RESLEN ESC 1 I 2 1 CTLY CTLY RESMSG CRT Interface space for old Console Mode address and length start keydef save old definitions clear all H o UP E DOWN X HOME top screen HOME bottom screen CL y DEL RUBOUT INS 0 ENTER insert line TAB 00 DECIMAL POINT End of table re insert old definition EOS ...

Page 343: ......

Reviews: