• Keine Ergebnisse gefunden

-?L'|""'1'l""' ,1\< Charleston MountainView,CaliforniaCopyright

N/A
N/A
Protected

Academic year: 2022

Aktie "-?L'|""'1'l""' ,1\< Charleston MountainView,CaliforniaCopyright"

Copied!
77
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)ji ,. I. ^' -. ROS. ' J .. RESIDENT. CROMEMCO. OPERATING. SYSTEM. INCORPORATED. -?L'|""'1'l""' ,1\<. 2)JOO. Charleston. Road,. Mountain View, California. Copyright. 1977.

(2) 1. CHAPTER. l:. INTRODUCTION. CHAPTER. 2:. ROS. Section. CONTENTS. OF. TABLE. /1. COMMANDS. .. .. .. .. .. .. .. .. .. .. File Organization File Naming Active File - Current File .. CURR. DFIL VFIL -MFIL. LIST FoRy NFOR AUTO RENU DELE. Section IODR DIOD. SYSI LEAD. Read WBIN. RBIN WCBN ECBN RCBN WCHX ECHX RCHX. .. .. .. .. .. Commands. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ,. .. .. ,. .. ,. ,. .. .. ,. .. .. ,. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ·. ·. ·. ·. ·. ·. ·. File. Commands. Text Editing. Commands. 12 12 12 12 12 13 14 15. i5 i6 17 1? 19. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. g. .. ·. ·. ·. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. e. .. ·. ·. ·. ·. ·. ,. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. G. G. ·. ·. ·. ·. ·. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ·. T. ·. ·. ·. ·. ·. ·. ·. ·. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ·. %. ·. ·. ·. ·. ·. ·. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 0. ·. ·. ·. ·. ·. ·. ·. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ·. ·. ·. ·. 19 20 21 21 21 22 2Í3. .. .. .. .. .. .. .. .. .. .. 2/t. .. .. .. ·. ·. I/O - Input/Output. 3. LIOD. .. .. .. 2. TEXT. .. .. .. Using. Section. .. File Organization and File. l. CFIL LFIL. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. Commands. ·. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . . Commands. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. -. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. - Write .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 2/t. u. 26 26 26. 27 28 29 29 Z9 29 3(j 3Q 30.

(3) 2. Section. 4. DUMP ENTE MOVE VMEM PRAM BANK. Section. Section. Section. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. Commands. Custom .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . .. .. .. .. .. .. .. .. .. Assembler . .. . . .. . .. .. .. .. .. .. .. .. .. .. ,. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. . .. .. .. .. .. .. .. .. .. .. .. .. .. .. . .. .. .. .. .. .. .. .. .. .. . .. .. .. .. .. .. .. ·. ·. ·. ·. ·. 31 31 ?1 32. 33 33 33 35. ·. 35 35. .. .. .. .. .. .. .. .. -. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . .. .. .. .. .. .. .. .. .. .. .. .. K. .. .. .. .. .. .. .. .. .. .. ·. ·. ·. ·. 37. .. .. .. .. .. .. .. .. .. 37. .. .. .. .. .. . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . .. .. .. .. .. .. .. Miscellaneous. .. .. .. .. .. .. .. .. .. . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. Commands. ;J6. 37 JJ8. .. .. .. .. .. .. .. -. .. ·. .. .. .. .. .. .. .. .. .. .. .. .. .. 39. 41 42. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 42 42. .. .. .. .. .. .. .. .. .. .. .. .. 4L. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. CHAPTER. 4:. USEFUL. CHAPTER. 5:. WRITING. PSEUDO-OPS. AND. .. .. .. .. .. . . .. . .. .. .. .. .. .. .. .. .. .. . . .. . .. .. Commands. .. .. .. .. . .. .. .. .. .. .. .. .. . . .. .. . . . . . .. . . .. .. .. . .. . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . .. .. .. .. .. .. .. .. .. .. .. .. .. . . .. ·. .. .. .. .. with Parameters. .. .. .. .. . .. .. .. .. . .. .. .. .. . .. . .. .. .. .. . .. .. SUBROUTINES. ROUTINES. .. . . . . .. .. .. I/O. .. .. .. SYSTEM. .. . .. . .. System Input Drivers . Assembler Input Drivers Output Drivers . . . .. A. Custom. .. .. .. . . . . . . EJECT . . . . . . DEFS . . . . . . DEFB . . . . . . DEFW . . . . . . ORG . . . . . . . EQU . . . . . . . END . . . . . . .. .. .. .. .. CONVENTIONS. .. .. .. .. TITLE. APPENDIX. ,. .. . . . .. .. .. .. Commands. .. .. . .. .. .. 7. EXEC PROM. 3:. .. 6. PSTA STAB ASMB ASMO ASMU. CHAPTER. .. 5. ECUS LCUS DCUS RENA. Commands. Memory Access. .. .. .. ·. . .. .. .. .. .. .. . .. .. .. .. .. .. .. .. .. . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ·. ·. .. ·. ·. .. ·. ·. · ·. ·. · .. . .. .. ·. · ·. .. . .. .. .. .. .. .. . .. . .. · ·. · ·. ·. . .. ·. ·. 5Q. ·. 57. ·. 57 57. ·. ·. ·. .. ·. .. ·. .. .. ... ·. 58. ·. ·. 46 46 46 47 47 48 48 49. ·. ·. ·. ·. ·. ·. ·. ·. ·. ·. ·. ·. 59. .. .. .. ·. ·. ·. ·. ·. ". ". ". ". 59.

(4) 3. B. C.. Using Parameters in the User Loading instructions. E. F. G. H.. I.. j.K.. .. .. .. .. .. PROM PAPER. .. .. .. .. .. .. . .. .. Table Format . . . . . . . . . System RAM . . . . . . . . . . Linkage to Common Routines . . Paper Tape Loading Instructions. Glossary. .. .. . .. .. . .. .. . .. .. ·. ·. .. ·. ·. ·. ··. -. 60. 62. TAPE. Special Functions of Keys Error Messages. Assembler. .. .. .. I/O. Includes:. D.. Line. Command. .. .. .. Error. .. .. .. Codes. .. . .. . .. .. .. .. ·. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . .. .. . .. .. .. .. . .. . .. .. .. .. . .. .. .. . .. .. .. .. .. .. .. ··. .. .. .. .. .. .. .. .. -. .. .. .. .. .. ·. -. ..·. . .. .. .. .. . ·. . .. ·. .. . .. .. ·. .. .. ·. ... 63 64 66 67 6g 71. 73 76.

(5) 4. CHAPTER. The. create. and. produce. from. Croníemco. object. address. front address memory. code. AOOO DODO. INTRODUCTION. Resident Operating Z-8O. edit. I:. System. source code, asseínb1e files. ROS resides in. to. BFFF.. hK. to. DFFF.. User. bytes of RAM. (ROS). allows the user to the source code, and 8k. memory. space. are required reside anywhere else in. system. niay. bytes of RAM. space.. is available from Croinemco either on paper tape {model LA-PT) PROM (model PROM m-8o8). may be used in the Cromemco or in 8k Bytesaver* memory board {model 8kbs) or in the Crornemco 1GC PROM board (model l6KPR). Loading instructions for the paper tape ROS. are given in Appendix Since. this of. are chapter gives you. Before attempting. detailed. to. use. ROS. be. from location board). This memory. DODO. will also. You. step-by-step. assembly,. computer. htcz ínernory. use.. a. anxious to begin using. doubt. in the composition,. ROS. your. no. I.. need. and. example. sure that you to DFFF (e.g.. additional. in your object code.. RAM. RAM. a. for. system. away,. use. program. íneniory in. a Cromemco. is allocated. space. of the. execution of have. right. ROS. ROS. model system. for storing. This is called your source code and the assembled the user RAM. For the purposes of the example in this chapter is assumed that there is 4k of user RAM starting at location zero in. memory.. Once. ROS. is resident. location. AOOO.. at. memory. in. this chapter to learn. for. it. program. development.. in your computer, begin Next follow through the how. to. use. program. execution. example. given. this powerful software. system.

(6) 5. '. EXAMPLE. ILLUSTRATIVE. AN. example a specific program, assembling resultant machine code.. consider let's language. Now. Z-80 assembly and executing. the. of writing. a. the program,. The purpose The of of the program is "ECHO". the program is simply to input a character from a keyboard and echo to a display. The program assumes standard Cromemco I/O convention of data exchange on I/O port with status information on input port O.. title. it. l. must execute the ROS program in memory. From the Cromemco at location this is accomrñished by typing: To. begin. we AOOO. G. After executing on your on your. console. ROS. that begins Monitor. AOOO. at location. until. keyboard. display: CROM.EMCO. ROS. AOOO. the. depress. following. Carriage response. Return appears. V.2.l. Our assembly language source code will be stored memory. We must give a name "file" inandthe computer's memory the addresses in which the snecify to this the CFIL command. resides. This is accomplished with "ECHO" Suppose that we name the and wish to have the begin at address 0100 in memory and extend no can be farther than location 09FF in memory. Such a created by now entering this instruction from the keyboard: as. a. file. file. file. file. file. CFIL,ECHO,I00,9FF. After typing this and depressing carriage return on the ROS keyboard, and the beginning will respond by stating ending address of system memory used: now being DODO. DIEB. When. entering our assembly language program from the probably would prefer to be prompted with line than manually type the line number of each rather line of the program ourself. It is common to begin with line number 10 and to increment each sucessive line number by 10. prompting For automatic of line numbers we type: keyboard numbers. we. AUTO,lO,l0 ROS. and. will we. After line page.. then prompt us with the line number (a IQ) proceed the assembly language program. can to enter each carriage return we will be prompted with the next number. This is shown in the example on the following. first.

(7) 6. '. CRCMEMCC ;G A(J0O. RUS!. CROMEMCO. ROS. V.2.l. CFILDECHQ»lCQj9FF D(JC0. I)IEE3. AUTO»tCblO DOlO O(J20. : miis ;. 0030. LE SP.OEOOH START: CALL CALL OUTPUT JP START. 0040 0050 C06C 0070 oci80 OC90 0100. program. ; INPUT: IN BIT RDA) JR. echos the. INPUT. A»C. zoñNpUT INPUT. OllC. IN. 0120 0130. RET. 0140. OUTPUTC PUSH AF; ADÓ IN BIT TBE.üA JR LNUTPUT+I POP AFB RETRIEVE OUT IÓA JIET kDAt EQU 6 TBEC EQU 7. DISC) 0160 0170 0180 0190 0200 0210 ci22cí 0230. keyboard. ajj;. CHARACTER. $. SAVE. CHARACTER. CHÁRACTER. .. above is a transcript of an actual session at using ROS. At this point we may wish to have formatted listing of our file. This can be done ESC or ALT-MODE by depressing on the terminal keyboard we indicate finished entering the assembly are that to language program. Then we type: The. a a. keyboard. first. FORM. LIST The. resultant. listing is. shown. on the. next. page..

(8) 7. FORM. LIST :niís program 0020 ;. echos the. Olj3G 0040 OC5(J 006C 0070. sptoEooH. COlO. (JOBO. START:. JP ; INPUT:. 0090 CilOO. IN. BIT JR IN RET. OliO Ql20 0130 Cil40. LI) CALL CALL. ; OUTPUT:. Cl5b. PUSH IN. 0160. BIT. Cl7(j 0!80 0!90. JR POP OUT RET EQU EQU. ci20g 0210 0220. RDAZ TBE:. keyboard. INPUT OUTPUT START A6(J RDA.A ZAINPUT. A2Í. ;. INPUT. CHARACTER. AF. ;. SAVE. ;. RETRIEVE. CHARACTER. a»(j TBE.A ZJUTPUT+I AF. CHARACTER. IJÁ 6 7. This formatted Listing source code is produced by as shown. LIST commands. of the assembly language following the FORM and. ROS.

(9) 8. The assembly page is composed assembly language The items. first. language. shown. program. on. the preceding. in the following way. Each line of the code is made up of as many as five separate item is the line number. In AUTO mode ROS automatically supplies sucessive line numbers as we The second item that may mpear on a enter the program. the line does have a label line is the label. is The always folIowe'dby a Ifcolon. third item that may appear is the instruction mnemonic. The mnemonics for the various Z-80 instructions can be found in the Z-80 CPU TECHNICAL MANUAL published by Nostek and Zilog.* The fourth item that may appear on a line is the cmerand or operands of the The operanól to appear must be separated instruction. mnemonic by at least one space. from the instructionfirst If there is more than one operand the operands must be separated The by commas. last item that may aopear on a line is a. it. must always. A comment. comment.. be. preceded. by. a. semi-colon.. Now that we have created a file and entered our assembly language program we are ready to assemble the We indicate to ROS that we are finished entering program. the ESC or the assembly language program by depressing ALT-MODE To get a formatted key on our terminal. assembly output listing we type the command: FORM command to assemble (ASMB) is followed by three paraijneters specify: l)the address at which the machine code is to be to 2)the address at which the machine code is to executed, be put after assembly, and 3)an option code. (See Chapter ofROS Section manual for more details). Suppose we wish machine the code from have our assembly be that results to beginning executable in memory. Suppose at location wish to have the actual machine code stored at location we also And say we wish a in memory following assembly. full assembly listing (option I). Then the command to assemble our assembly language file is given by: The. 2. 6. O. O. ASMB,0,O,I from our keyboard assembly listing will following page.. After typing this and. will shown. procecje, on the. command an. the assembly produced as. be. fol.Lowing commands in this way: ADD A,{lX+d); ADI) A,{lV+ci); A,{HL); A,r; A,n; A,s; ECG, OUT SBC IN A,{n); {n),l\\. In shorter versions of them A,s; ADC commands are used as listed here: s; ADD n; ADD r; ADD (IIL); SBC OUT ADD {1Y+á); n,A. M)Í) {íX+á); s; IN A,n;. * Note: ADC. Sorne. manuals. ADD. may show. ADD. the. ADD.

(10) FORY ASMB»CjOj. I. CROMEMCO. Z-80. 9. OC/OO CODO GODO. 0003 0006 OC09. 31 (JO CD QC CD 15 C3 03. 0CC)C OOOC. DE3. (JO. 0Ó(JE COlO. CB 28 DB C9. 77 FA Ol. 00!2 (JOl4 0015. cUis COl6 (JOl8 OOÍA. F5 DB CB 28. cote. FI. OOID 0(JIF. D3 C9. OG. 7F FA. Dl. 0006 0007. (JE (JO (JÓ ClO. ASSEMBLER. V.2.C (JOJO ;THlS 0020 ; cci30. 0040 START: 0050 0060 0070 ; 0080 INPUT: 0090 0100 0110 Cl20 0130 ; 0140 OUTPUT: 0150 0160 C)l70. 0180 0190 0200 (j2ío RDA: 0220 TbE:. PROGRAM LD CALL CALL. JP IN BIT JR IN RET. ECHOS. THE. SP.(JE(J0H INPUT OUTPUT START. KEYBOARD. '. A»O RDÉuA Z»INPUT. mí. ;. INPUT. PUSH. AF. SAVE. IN BIT. ;. AjO ;. RETRIEVE. JR POP OUT RET EQU EQU. TE3E»A Z.JJUTPUT+1 AF. CHARACTER. CHARACTER. CHARACTER. L,A 6 7. ROS produces this assembly listing and stores the machine code object file at the location in memory specified by the ASMB command (in this case location O). There is a great deal of information on each line of this assembly listing as described on the next page.. ·.

(11) 10. - MEMORY. ADDRESS. -MEMORY. CONTENTS. "ERROR !. CODE. -LINE. NUMBER —OP. CODE. -. MNEMONIC. OPERAND. 0018. FI. 0180. POP. AF. J. CO'IMEN'F. RETRIEVE. CHARACTER. This example line from the assembly listing on the previous page shows that there are seven items of information that can reside on each line of the assembly listing. an error in the composition,of the the assembler detected line then an error code would be inserted in the line at The the position shown. followinq error codes are used by. If. ROS:. Code. Error A D. L ,'1 O P R S U. V. Description Arcníment error Double definition Label error Missing label Op-code error Phase error Range error Syntax errcr Undefined Value error.

(12) 11. EXECUTION. PROGRAM. using the ASMB command to assemble this example prograín, you may wish to execute the program. this can be done by using the command EXEC. Since we put the program at location zero in memory when we used the ASMB command, we would type EXEC,0. This causes CALL an unconditional to location zero saving the ROS return So now let's execute the example address on the stack. program and see works: it After. if. EXEC»0. THIS IS KEYBOARD. TEST. A. IT IS. OF THE ECHOEIJ. PROGRAM ON THE. "ECHO".. AS. I. TYPE. ON. THE. DISPLAY!!!!. SUMMARY. Tn Croinemco's. this Chapter. we have given one example of the use of Assembler so that you can using your copy The following of ROS away. chapters describe the commands and conventions of ROS in much and should greater answer any questions you had as you worked through example. ROS. right. start. detail,. this. first. ROS.

(13) 12. CHAPTER. 2:. ROS. Section FILE. ORGANIZATION. AND. COMMANDS. l FILE. COMMANDS. File Organization The files user information is organized into files. The user is provided with a set of subdivided into lines. commands to manipulate his files. Another set of very comprehensive commands - the text editor - allows the user to reorganize the contents of his file, e.g. delete, replace, or insert an individual line. Each lowest numbered line will line in a memory file must be numbered. The and always be placed at the beginning of a numbering file, will continue upward to the end of the file. Under. ROS,. further. are. File. Command. Formats. In the formats given for each command the following conventions is a key word and must are used. If an entire word is capitalized, A be used. User supplied information is designated by lower case. { } brace indicates the user must make a choice. Optional items are enclosed The horizontal by brackets [ ] . item ellipsis ... allows the to be repeated.. it. Example: CFIL,. .. .. .. fi.le-name, begLnnLng-fI-le-addressT. jending-file-address)'". file-length. File Naming consists of one to six characters and can be any charThus, the character), for which a code exists. control acter, #@AB41 however, recommended that names descripname is is legal; file longer than tive of the file content betheused. An entry of a file name accepted six six characters results in characters being as first the file name. For example, gives !'1YNEWF as the an entry of MYNEWFILE The number of user files is theoretically only limited by name. file space available in the system RAM area. A. name file (except a. Active File - Current File. it.

(14) If). avoid both the extra time involved in the user always having to specify whichRAM file is being manipulated and the sYstem overhead in searching the area, the concept of a current user file is introFiles duced. Any file may be.rnade current by use of the CURR command. when created. are they automatically current are To. Optional I/O Drivers parameters, driver-name. Command,. The. commands. ROS. listed. have optional drivers then a default is. below. with them. the driver is omitted, If I/O (console device). the system's DUMP ECBN ECHX ENTE. LCUS LEAD. LIST RBIN. LFIL LIOD. RCBN RCHX. associated to sítsggg. made. TEXT WBIN WCBN WCHX. Example:. List List. í-TS7tíQ,2O,TTY LIS'T.IO,2O,CRT2. Create. File CEIL,. .. ftle-name,. .. .. .. begLnnLng-fl-le-address '. on on. TTY CRT2. )ending-file-address) fKLe-length .. in the File Name Table, which resides created file becomes the current which do not specifically designate After each file creation, the new indicated. This reflects an entry into the File Name Table. An attempt to allocate previously assigned "MEMORY ALREADY memory to a new file will result in the message:. file is Aentered newly in area. (active) file. All file commands a file default to the new file. boundaries of the system RAM are The created the system RAM. ALLOCATED".. In several of the. Each text line space. Variations commands.. will. files created. be numbered by on this procedure. below some text will be entered. entering a number followed by a are given in the section on text. Example:. CFIL,A,1OOO,S1OOO ljOOO. D2C)B. _.

(15) i4. is now the current file. It starts at lÓÓfS hex and is allotted U00 hex locations; the limits of the file are UW0 to LFFF. The system responds a new Next, with the new RAM boundaries MOD D2QB. file is created. A is no longer current but remains in the File Name Table and can have data entered at any convenient time by making current. A. it. Example:. CFIL.,AIR,2OÓO,2FFF DOOO D217 JO FILE AIR BEGINS AT 2(JOO 20 ENDS AT 2FFF 30 SUBSTITUTION OF S1OOO FOR 2FFF 40 GIVES THE SAME RESULT. Now. previously. an. attempt is made allotted area.. to create. a. new. file. that extends. into. a. cFIL,ToMcAT,25Qois3QQ MFM1)RY. The. ALREADY. files previously aljotted. non-existent.. are. AL-LOCATED. intact,. and the. file. TOMCAT. is. CFIL,1OMCATION,310O,31FF DOQC) D223. The. ignored.. List File. file. TOMCAT. is. now. current.. The. remaining. letters. ION. are. Names. LFIL, [driver-name] of all the files in the File Name Table is provided by list The first file listed is the current (active) file. entering LFIL. name Each is followed by the beginning address of the file, the file ending address of the occupied area, and the end of the allocated area. the The user can inspect of file names to determine if a proposed list command name This provides the user with a map of his is a duplicate. decide the via file on future memory allocation user can files so that creates and moves. a.

(16) 15 t. Example: ·. L.FIL TLMCAT. 31OC). AIR. 2000. A. 1OOO. 31OC) 2OFA 1OOO. 3IFF 2FFF 1FFF. TOMCAT AIR contains is the active file, but as yet is empty. 2000 to 21FF. bytes of information, and its allocated area is from command Sl000f a, which was allotted U90 bytes of memory by the swath ends at IFFF.. it. FB. Example:. i. Get. LFIL.CRTI. will. be. listed. on CRTI. File. Current CURR,. Files. file-to-be-made-current. may be made current at any time the user is in the command file By checking the mode. of output from the List File command line first LFIL, it can be determined which file is current. usually is faster It make a non-existent make An desired the to current. attempt to just file ERROR. the give message an message, After fileis currentthat willthe s'/ñtax of the command was correct,errorthen use LFILif felt it see the file already exists. to if. Any. Example: CF"IL.zA,1C)OOeSlC)O DOOO D2í7. A. is the current. CFIL.Bi2OOCLS1OOO DOOO D223. El. is the current. A. is. CURR,A .. now. the. file file. current. file. .. Delete File DFIL,. file-name. Any file may be deleted by the DFIL command. Files are deleted at a time. After a DFIL command is issued for the active file, there is no active file. Deletion of a non-existent file gives the. one.

(17) i6. message system. Execution of the Delete File boundaries.. ERROR. RAM. is followed by the. command. Example: Assume. current. files. the. file.. A, AIR,. and. DFIL,AIR D203 DFIL.TOMCAT DOOO DÍF7 iO SSS. DOOO. NO CURRENT CURR,A SSS. TOMCAT. .. exist,. and. system. that. TOMCAT. is the. ram boundaries. file. current. is deleted. can not. FILE. enter text because file is current. no. io. DFIL,A,AIR,TOMCAT DOOO DIEB. only. is deleted. A. Validate Zile VFIL The. validate. command. performs the following. operations:. checks that all lines within a file have a length; It verifies each line ends with a carriage return; that It checks the beginning of each line for a digit line 3) It followed by a space; number 4) It certifies that no control characters are part of the. l). 2). 4. text.. a file passes validation, the name of the file is returned with its starting address, ending address of textual material within the file, and end of the region allocated far the file. If the file contains errors, the byte location of each error is given followed by the message FILE ERROR. that typically the user only It is assumed wishes to validate a current therefore, the VFIL is not followed file; When. by an operand,. a. file. name.. Example:. VFIL AIR Assume. 2000. 2072. File AIR is ok.. 2FFF. at location 2001 the current. file. contains. an. error.

(18) 17. \jj- II. :'oot PYLE. ERROR N. File. Move. MFIL,. f lie-name. ,. beginning-address-of-receiving-area. existing file may be moved to any existing memory location providing the space is not occupied by another file or system information Attempts to move a file into another file' s area will be greeted ALLOCATED. by MEMORY ALREADY After a move, the file will no longer The exist at its previous location. file to be moved need not be active. An. .. Example. :. MfILtTOMCATiO. The absence. following. sucee"=sful CF IL., STAT, 2OQC), 300 1)OOO D2O3 P1F IL I 7 OMCAT, 2QOQ MEMORY ALREADY ALLOCATED. Using. File short.. A. demonstration using. lOOO 2C)OO. I'. 1OOO 2OOA. IFFF 2FFF. MF7 13,. t f'". 1OOO, S1QOC) NAMES. CURRu A A. bf'j!-,. 1C)OQ. 2000. lOOC) 20OA. File. B. ]L. A u. TOMCAT. occupied. commands. by. into area STAT.. only follows.. ram boundaries. is empty.. system. CFll,t1, CFJL, bliP.. file. System. bF j'L-í dÁ IKKJO !J1EB 1OOO, S1OOO J)OC)O. that is. move. move.. Commands. CF·-1L.,A, 1OOO, S1OOO POC)O DIF7 t- F IL. P.. Cannot. of an error message move indicates a. the. ram decreased. by. already defined.. was. IFFF 2FFF Make. A. the. current. file.. 12. bytes..

(19) 18. DOOO DIEB i ABC NU CURRENT FILE CURR, B i ABC CF JL. B, 3C)OO, S2OQ NAMES DUP.. Accepted. because. The. name. L-F" JL-. 2000. B. IL. TI, 3000,. CF DOOO. 20OA. file. there is. was. a. current. already defined. 2FFF. S2OC). D1F7 II-, B, O MFJL,TL1OOO MF. L-F 7 1 Ft. B. IL. lOOO OOOO. 1OOO. I1FF. OC)QA. C)FFF. and TI are. tidw [DntigUDU5. at. Ichu. memory. file.

(20) 19. Section TEXT. 2. COMMANDS. EDITING. After creation of a file, the text commands allow the user to manipulate the contents of the file. In addition to adding or deleting the lines of a file, each line can be automatically numbered as enters. Whether a listing will be formatted Text lines can also be renumbered. or unformatted isTo controlled by a flag in the monitor using the FORM and NFOR commands. understand the effect of formatting using tabs see be the section on the LIST command. Examríles of assembly language will assembly language For conventions see the presented in this section. section on assembly language.. it. List LIST,. [beginning-line-number],. [ending-line-number],. [driver-name]. the entire contents of the active file In the absence of parameters command when LIST are listed is used. the the formatting flag is set, Ifsettings the the I/O driver. then is according formatted tab to liston I/O commands covers the setting of the for The section tabs. when tabbing used the example below, the is in conventions given below. assume Examríle: FIELD. TYPE. COLUMN CONTENTS. -. -. LABEL. i. START:. C1PERATC)R. g LD. OPERANDS 15. HL,START. COMMENTS. 25 : LOAD. HL. When. LIST is followed by one line number only, the indicated line is listed. If two parameters numbers - line the - follow LIST, all the text lines from the first line number second line are listed. to Example:. CURR, B ::"Sz' tOOC)í SSS. j. ISl. Noticéi. left. zero. fill. is automatic.

(21) 20. CURR. AIR XYZEK). The presence of Signals the end. I. LIST OOOl. XYZ8O. CURR.. B. IQ LI) ArB 20 START: LD :XJ. JP. HL, START JUMP TO START. START:. Assume no. LIST. oooí DOlO OQQO (XKJQ. SSS LD A, B START: LD JP START:. fromatting. HL, START JUMP TO START. Turn. FORK. the. on. LIST OOOl. DOlO 0020. non—numeric character of a line number. a. START:. QO3O. SSS LD LD JP. A, B HL, START START. LD. A, B. L-D. A, B. SSS LD LD. Áb. ;. JUMP. Tlj. switch. formatting. START. LIST) lO DOlO. .. LIST, lOt IQ QQIQ. LIST) OOOl DOlO. 0020. it 20 START:. List Without TEXT, TEXT. B HL, START. Numbers. [ beginning-line-number], only. Example. differs. from. LIST. Lending-line-number] in that. line. numbers. ,. are. [dr iver-name] not printed.. :. TEXTc 20 SSS LD Ai B START: L-D HL, START. L. Assume. no. formatting.

(22) 21. Turn. FORM. on. formatting. the. switch. TEXT,2O,3O START:. Switch. Format. HL,START. LD JP. :. START. JUMP. TO. START. On. FORM. switch activates turns on the format switch. This command FORM The each I/O driver. affects the tabbing associated with The the LIST and TEXT commands and all assembler commands such as ASMB. IODR be changed by command. Other using the tabs can selected I/O commands affect the tabbing by resetting tabs, e.g. SYSI. The FORM command remains in effect until the occurrence is regional, that is NFOR command. of Further discussions of tabbing are covered under Assembly Language commands and the LIST command. The. FORM. command. it. Format. Switch. OFF. NFOR. The. NFOR. Examples. command. deactivates. of. and. FORM. the use of tabbing.. NFOR:. FDRM. L,ís7,4o,6c) 0040 BRNCHI: 0050 BRNCH2: OObO. CALL JP LD. START START. A,B. :. Z-E30. NFÜR L- 1ST. Type Numbers AUTO,. 0040 0050. BRNCH1: EJRNCH2:. OO&O. L-D. CALL. JP. START START. A,B: Z-8C). Automatically [lowest-line-number],. {increment],. [maximum-line-number].

(23) 22. The AUTO command is provided to relieve the user of having to enter numbers. Four digit line numbers are automatically entered on the line margin by the AUTO command. The user specifies the starting number, the increment size, and the maximum line number. Any numeric value can The default parameters be entered for any of three parameters. are one for the starting number, one for the increment parameters, and 9999 for maximum line number. the start number exceeds the maximum line, only be printed and wrap around one line not occur.. left. If. will. will. Example: AUTD.3,7,2C) OOQ3 LD A,B DOlO. START: HL,START JP START MODE COMPLETE. LD. 0017 AUTO. The line numbers MOM by the monitor; the user then. pp: n followed mo, enters the. by. text.. a. blank are printed. Example:. AUTO,40,10,60 0040 CALL START 0050 JP START OQ6Q AUTO. Line number message indicated completion, press. 60. was the. LD AVB MODE COMPLETE. limit givenwishin. completion. the ESC or. If MODE. you. ALT. File [starting-line-number], RENU,. key.. the. to. AUTO. leave. command. the auto. so the mode. monitor before. Renumber. [increment-size]. Line numbers in the current file are renumbered by the RENU command. The number and the increment size. The user specifies the starting number is a line number from l to 9999, and the increment size startingfrom reaches 9000, the increment ranges to 25. When the renumbering l size is 1. Wrap around can occur when the line number reaches 9999; the next line numbers then will be O, l, 2, etc. It is possible to have Omission two lines with the same number. of either starting-line-number a default both causes increment-size to l. or or.

(24) 23. Example:. l )Sl oooti oo: m DOM' RE·. A, B JP AGA I N SUBX CALL. L-D. NUMB ER,. 20,. 1. 5. i lSíi OO: .'O L.D A,B C)(KJ5 JP AGAIN SUI3X OOSX) CALL. Delete Lines DELE. ,. beginning-line-number,. ending-line-number. with the DELE command all lines are deleted from the to the second line number, inclusively.. first line. number. Example:. m. EíTí:. LiELF,. ,. 35,. É'O. M-IF, :'CJ,. !5. '?5. THE. LINES FRCítl 35 TCí HILL BE DELETED LINE NUMBER 2C) HILL NO. LINE HILL. BE. '?5 BE. DELETED. INCLUSIVE DELETED.

(25) 24. Section. 3. I/O - INPUT/OUTPUT. COMMANDS. majority of commands in this section are related to routines These routines contain instructions called drivers. that allow data to be transferred in or out of the computer memory. The user is able The input and outto change selected parameters to drivers. relating addresses be The modified. display can of put text through tabs and page size is alterable by the user. The. data representation are provided for, namely l) representation of memory contents, 2) INTEL INTEL binary. In many of the examples given below reference is made to the I/O Driver Table and its parameters. These parameters in some detail under LIOD - List I/O Drivers. are covered Three types of an unmodified binary hexadecimal, and 3). List I/O Drivers LIOD,. [driver-name]. is kept in the system table of I/O assignments area, someI/O Driver times referred to as the Table. An entry of LIOD will produce The example below a listing of the table of I/O as"signments. explains each parameter. RAF!!. A. LIOD sYs0g0. 6F36. (l) Driver {l) (2). (2). 6F3F (3). 0. (4). 60. (5). 6. 9. (6). (7). 15. 25. (8). (9). in the example SYSM0 is the system driver. address. Input driver {3) Output driver address. {4) Number of nulls between each line. This allows time needed for a line feed to take place before printing the next character on a hard copy device, e.g. teletype. (5) Number of lines per page - uSed for assembler paging. (6) Number of lines between pages - used for assembler paging. 0, feed advance a number form is issued is to the top to this number the of line feeds of the next page; otherwise, this is the the advance top of to next page. that are issued to (7) Beginning column number of operation instruction, pseudo-op, etc. See explanation under LIST command. name;. if. If.

(26) u Beginning column number of operand. Beginning column number of comment.. 8). (. ( 9 ). Further examples. of LIOD are shown under. IODR. and SYSI commands.. Define I/O Drivers IODR,. see LIOD. for complete. description. of parameters. be either added or modified by the IODR command. may Driver alphanumeric be parameters from Omitted characters. names one to six are indicated by two adjacent commas or terminating the driver definition before all parameter positions are indicated. Immediately following the I/O driver assignment the boundaries of the sYstem RAM are expand given; this occurs because the assignment of a new driver RAM system the area.. Drivers may. will. Example. '. :. 'i t-n l3Y"íOOO IÜDR, DOOO. DISKI,. AF313 8FOO. AF41. O. 6Q. '?. 6. i5. 25. D22B. new driver DISKI address is 8FC)O.. The input is defined in the example above. The absence between driver of parameters the commas the The indicates defaulting to system output driver cAjress of AF41. Zs tj"í¿: number cjf feed a line is five. All. remaining parameters after To verif'i' í7rE!hE3nt the be the asq[j the system. that I/O assignments will lil i". 21u":. are. l-istec!. bei.: ¿}"Ñ.. Example. :. l l{i!g. 5YSCK)O. bí5KI. AF38 8FOO. AF41 AF41. L.. j{jj). áC). O. bO. AF41. O. bISKí. AF3E3 8FOC). AF4Í. C). bO bO. 17 Y. AF38. AF41. C). bC). SíYSOOO. 6 b. '?. g. i5 I5. I/C) driver TTY, Assign to system parameters -. TY D23E. I ÜI)Rs I. T)OOO. O. 6 6 6. g g '?. 15 15 15. 25 25. default. SYSOOC).. 25 25 25. all.

(27) 26. Delete I/O Driver driver. DIOD, The. time are. it. name. deletes one driver from the I/O driver sys000 cannot be deleted. The system RAM each successful deletion.. command. DIOD. is given after. Change. Name. used.. SYSIO. .t.o. Name. [driver. SYSI,. table each boundaries. name]. The system I/O driver - the console device whose logical name is SYS000 have its parameters changed to the I/O driver name following the command SYSI. An entry of oñiY SYSI returns the system I/O The examples given below driver to the parameters stored in the PROM. the results in previous section on Define T/O are a continuation of. will. Drivers.. Example: parameters between pages Change lines 6 to O for TTY. In affect delete the a fown feed. feeds and substitute SYSOOO. SYSIJTTY. IOWÁTTYttttj. LIDD AF38. SYSOOO. DISKI. 8FOO. TTY. AF38. AF41 AF41 AF41. O O. 60. O. 60. 6Q. 6 6 O. Note SYSI,TTY LIOD AF38. SYSOOO. DISKI. 8FOO. TTY. AF38. AF41 AF41 AF41. SYSI LIDD SYSOOO. AF38. IJISKI. 8FQC). TTY. AF38. AF41 AF41 AF41. Write Leader LEAD,. {driver-name]. O. O O. 60 60 60. O éj O. g 9 g. same. between. SYSOOO. now. no. difference.. Reset. SYSC)OO. to. parameters. O O. bO. O. g 9 g. 15 15 15. line. and. TTY.. 25 25 25. 15 15 15. is. 6 h. as TTY frcm. 25 25 25. 15 15 15. difference g 9 9. the. There. 60 60. O. have will number of. 25 25 25. in the prom..

(28) 2?. Following the issuing OE the LEAD command, there is a 60five or ten characters second wait, which allows time to turn on the punch; then and The wait is five seconds at four magahertz of leader are punched. punching the leader, control After ten seconds at two megahertz. The user is advised to turn off transfers immediately to the system. the punch unit to avoid punching unwanted characters, such as control instructions, on the tape. Read and. Write. Commands. In reading a tape the operator places the first character to be conclusion of all reads directly over the read sprocket. At the These characters can be teletype may generate extra characters. prevented from becoming a part of a memory file by pressing control X of the teletype. read the. five or ten second wait occurs after entry of any write command. The wait is five This allows the operator time to turn on the punch. seconds at four megahertz and ten seconds at two megahertz. A. Tape Formats There. are. three tape. formats:. I). binary without. a. 2) checksum, on a binary tape two hexadecimal. One hexadecimal. frame binary with a checksum, and frame from a contain3 memory; thus, represents one byte The contents of a binary tape can be read directly into characters. A hexadecimal tape uses two frames memory and used without conversion. The hexadecimal tape is in ASCII format and can be per byte OE memory. interpret-eel! off-line by a hard copy device. The contents of this tape cannot be used by a computer without conversion tCz hexadecimal. 3). The data on a hexadecimal tape is blocked into dir"cretc records, each record containing record length, record type, memory address, and A frame-by-frame description checksum information in addition to data. is as follows: Frame. O. Record mark.. Frames. (0-9,. l, A-F). 2. Signals the start of character colon as the record. Mark:. record. (": " HEX. a. The ASCII 3A) is used. Record. Two ASCII Length: characters number in representing a hexadecimal (O the range of to 'FF' to 255). This is the count of actual data bytes in the record type or checkA record length of indicates sum. end of file. O. O. Frames. 3. to. 6. Load Address:. Four. ASCII. characters that represent the initial memory location where the data following.

(29) .* ,0' r. wi.ll be o: "í::zeci byte .j-s Stüt oíl pointed to Ly ttit' ling' ". .]. 7. 'u. *. Ó.. m. succeed elata into ascending. E"' r:. 'jí;. g. '7. ?'-"'-,. Record Type: '"""urrently, all-. ,. Tnis. field is exr")arísion.. '!..Wq ' !" " '. % " ':--, · '"-'-. lÁ'i. :. b'..'t. ¿jí".i. T'^'(.'!. i> ['"':1". ;-,'í.t" :,'t; i.': ':. · '1 ' . : ". ¿jj": ". a"c: s9j! .-'i ::; ·.:.: "T. ";" 4!: ',;. rí: '!¿:-'F Üest-: 4rz'e:ji.. jr,. :P ' '". ii.. ,.':. j. ·. 'Y : "t, : !. .:. ,. '" ' l'i .i. :. "'. .. '.. :.1"'. fui.". ·.í '::: i; ·. .:' g,; '. .';:4 'ii. ,.. -. :.",..tí':..:.:. $ -.. 9. Fra2!]esq (RE3c¿""'jr!:. to 9+2". 'l Leng. 9+2*. Frar?es3 Ls£?i'!c¿ t-h ] ..~ "Li:ñcit !'.1). Data. t-h). _. L. the. ? e~·. l. 'ne mo. 'ord. *. r y I-ocatí-ons :. A. y.cc'. ' r i-i. «. t7t?Sí,'T. cape memo. 't-.;:[«j)Í4.'i'.":. "'?. g. .'ea. *!J\,7 :".e".: 4 ..b. rv -t. f"":. Z'!"ie. birLary 'tape -Pl. 'b arx)ve e>: ce?t'.. }:!lo'b7in¿?. re. .. '!?';'í3 jj'¿. i. IN. !. R.FJ. a(1—í\'r. tg?rQ"cj"n. '&9. it.e. .a.. '.".'ri't untnod. j;n¿ ,. -::' : " Ce, i!""' ·'{"j i;; . '·. mg ».d ,. . t: '::,i:ñ t.";;;"j :- f". i. i"'í!.. !Ün'"j. A. " i"'. v. 'i, :. '.li. ':'!,?.!. '. "t-.!a: ' ". :í:?e. P. locat Íoñ3. "'",-,·-·· ·"? "" "St':—' "y'; 1 .i :!.' . , :. ::; ! :. UzW t..!"!. Ct';i:. :":1rr'z. :f!'.}!":,sT.l"1'·'. "Ñi. ,. i,.tcÉ. "t.. dS. h. check' sum X 4 mt"nt í-onect ,. comrnancls. .i-s e. the íícFív. t':- !'í. '! !. ':.-9."'.. g cQul?':. are. s a me rr,[ut"!í: !. ¿: ':;ri:-... 2cí. f7C) i. 1 t;st.·. e". :'. \Ñ'CB?'I. 2CB"-i RCBN. a. i i. s. as. í3"í¢"!¿-i}"""' , , w: ,U:á. e. " :'z. s ;. a í'k'-t. ;:.: :1 :':úiz ]... ·:;".'7'"!t;". 3'""(:.:)·:!."l"l'3,.iZí" ". :. ,"!ec;·::,;:w!í?; , ., . ,. c:. -Intel !"iexadecímal. \ ,. !3i.i"Éí·í¿L"v. ""' Nts. ,. cm001005"3F8Et:c5. , ?ciíu: r's" tí'.... tíjL Y ¿i.. T ~6. wnen these. a Fc.rrm-at B]-}"]ary wi tl'íou"'L chec:k sur,. {;'¡7': : !-! "Ik', ,! S. ". i. ")ñp. produced. file. i hex. t. i-s. {.';: :;!í!. : z1. É--:. :, t: The c:Qí2c:'F{,ii.7-¡í:"i ie ' -m' ¿z;-j b i. !-, negative of the su: ti :q'in¿?¿íi. "f...!'u'í' ;;"iz". the record -'::á bytes ( in "" cI! "¿Ií:i É'i 2")'· I.. 't .I (," "mo t:i g; u. 'i-j, : ") ma rk ., va a e :í. :.)! ""' if s , Tnat you a d3 t. c) t;;"e e 'f '.'·'-'i:" a i E ·, ·.L 8 b :i;. ."i 't ijYt. es , the un o "r i ñ i":7'.e ca ;" t" .'.-.t;-.": ,, !""1 i'..I"! "' ",, ': out of an B-bit s,i"r:¶ '- t.het ' : q Y":"'; he "," iP s '·L..:+^ 4... -.L ^+ z 13 'rhccksürn, ' x-. ....' > ,,,. .. d b. t. i. .l. .'s'í:")L¿.'?. .4. Checksum:. +'"1. 'k ':7 ;x.; unrri.Le , je : "rf ü"x:. 'j framez:. m¿?I!',or:. two {i") the ASCII cha"t- acter°s tu ) he'µ: a{íf,?c:. F a rept: í-zsent to LapC) to ' FF ' FI t t") to 255! .. ... Fo! f[: )rí!'1a. bit by. represented. (R[?{:::{)r{:í 9+2* t Reí:. to. 8. Each. :. Tape. ' ' "' " " ?;t.{:¿I:t.ít'!'g"a{-l(1Í:(2,-. ' S · "'1 "" ':' t" Y ,b.,..} ' ." :., . -t:. 'Ir " ' "P :: :,.1j,jr" - _a.b_d ¢'.;¿ .e, };j'.,7 t.:. the-. ár.'C. i. ?j'}"q.cíe. {"). f. eac':. q :z, — ;',". ( e 'ig S. nil. .i.-. n a",.e'_ me mc' .t:"'v """'a í.:'l jj'] ':·"":;jj' zi: í·; · l-etíu. i. iP"·t;'i. "!. ,:-i .:í:' '.,:' y' _ 3.... " ":'24·?.:í! :-:1. r. '\Y. :. '. '"" "k sp'-zty-$-·.tmr'" '"' jí" L" '""'" ; :2 1~a m1i7; ;~. 4-mb:j t...i ... _ vá: 'ím'i command . L")',í" t.e. t. ' r).4 ' " :" '; :" ' "t "'""'. n. d'>r'5'T ·1 ,"" '" """ "",{ A ' 't"' ',\ ' ·: :' i .°"t':' "· ': "''" ""Xt · "-'"" ·:. :.?.·' .( ·" '"t"""': .· · ,^·.., ·' .,· y-' C.,. ,, k..< L.m. '. .& l' u'· -·· ·..· ·r '.--... , ·· --, ~ ..:.. '-.r C ..-. '.'> ..Va ~ .,.·'T-L "z.a: ¿.::h i":' .,É .... ... : :j}.'a!'n!.:.l 4, t: í;;í ::i e t' ¿}: ..'¿;·j 'i.';' i-.,. L ;..Ut.;·. li. '. G. n _memo. f rom. -. me'mo. r . :", .. th. i. ". .··: ":"" .'" ..- .. .. as ',.

(30) 29. Example:. Write 2C)H bytes from memory starting at location 1OOOH.. WBIN,IOOO,S2O. Read. Binary Tape ) ending-memory-address}. .. .. startimg-address-im-memory,. RBIN,. S. '. length. [drivername]. is read by the Read Binary Tape will be read directly into memory. tape written by the WBIN command command. The contents of each frame A. without modification. Example:. Read. RBIN,2OOOs2O4F. memory. in. 5OH. bytes. location. starting. at. 2O4F.. Write Checksummed Binary Tape '. The. '. s startLnq-aazres.--Ln-memor' '. T^'C!3N, '. WCBP'". ?jj. czommañcí. Write. EOF. (ending-memory-address. Is length. }'. [drivername]. a checksum at the end of by summing up all the frames. allows the user to place 13. binary tape. The checksum after the record mark. a. b. on Checksummed. generated. Binary Tape. [driver-name]. ECBN,. The After the WCBN command, an end-of-file is written by ECBN. ": will be typed. A binary end-of-file cannot be intermreted. message for hard. ". copy.. Read Checksummed RCBN,. The. Binary Tape '. '. starttnc-address-im-memory, j. )' {drivername]. allows the user to validate the contents of a binary tarxn is validated by summinq all the frames after the mark; carries are ignored. This sum is compared to the checksum record written previously at the end of the tape. If the two sums do not match, RCBN. command A tape. ¡ending-memory-address !S length.

(31) 30. Write Checksum Hex Tape WCHX,. .. .. startimg-address-tn-memory,. ) ending-memory-address length S. )' [drivername]. will. The WCHX command tape with a checkwrite an Intel hexadecimal The checksum is generated by summing up all the frames after the sum. The sum ignores carries and is written as the last frame record mark.. in the record. Example:. «W,ÍOOO.S2O. Thirty-two a. Write. tape.. EOF ECHX,. by be. After. ECHX.. typed.. The. bytes (2C)H) starting at location 1QQC)H are written contents are reformatted into Intel hex code.. onto. on Checksummed Hex Tape. [driver-name] the execution of the WCHX command, an end-of-file The message ": M" (which is an end-of-file command. is written in hex) will. Example:. ECHX. 00. :. t. Read Checksummed Hex Tape RCHX,. . startLng-address-Ln-memoryY. jsending-memory-address length. )' [drivername]. The RCHX command allows the user to validate the contents of an A tape Hexadecimal is validated by summing all the frames tape. Intel the mark; carries ignored. This sum is compared to the are record after the two sums do checksum written previously at the end of the tape. "CS" match, the the system is printed I/O device. message on not. If.

(32) in. Section ACCFSS. MEMORY. COMMANDS. enter, move, delete, or report on the contents of regard to files or lines are classified as memory access. which. Commands. memory without commands. DuÍrLp. 4. Memory. {driverjending-memory-addressj j,s- length )' name]. begtnntng-memory-address,. DUMP,. b. .. result of a dump is listed in hexadecimal byte by byte. Each 16 maximum preceded a by the and contains is of bytes line command address The two memory of the first byte. allowable formats are demonstrated in the example below. The. printed. Example: Dump. IiUMP.CLS1O OOOO:. bUMPtC), OOOO: C)OJO:. 02. OO. Ol. AB. FE. C3. ID. F8. FE. OO. location 7B. Dump. OZ. QC). 20. OO. 01 AB OO 80. FE. 44. C3 52. F8 FE 0(1 713 49 56 45 52. bytes. 16 FE. C).. 5F. 1DH FE 3F. 5F 6F. 54. of 41. memor"g. 32. starting. at. 54. of memory. bytes 54. 41. E3C). QC). 32 54. Enter Memory ENTE,. The. beginning-memory-address, [driver-name]. data Enter Memory command allows the user to enter hexadecimal A does any memory at location. carriage control starting not terminate the Enter Memory mode; thus, the user can continue to enter data line number followed by colon after line. The entry of a one to four digit An a new memory starting address. attempt to enter an will enter ERROR be a line feed. byte reported as an illegalthe after will All bytes When using up to incorrect byte will be accepted. this command end the áata iuput with a "/"..

(33) 32. Single digit entries are filled with a zero on the left side while entry of more than two digits results in having the two rightmost. an. digits. accepted.. Example: ENTEvO. Start entering data at address. 12 2 1415/. .,. OOOO:. 12. 02. 15. The 15. 2. has had was entered. a. left. zero.. zero. in the third. MdUt. and. byte.. ENTE,O í2 2 1415 23 44 6. 3OQQ:. 17. 20. i7 and. / ENTE,ÍOOO t2 23 24 55. ig 23 44 55. ERROR. 1G. 2C). is an. will. be. entered. in. 3OOQ. and 3001.. illegal entry. DUFP,1OOO,S8 lOOt):. 12. 23 24. 55. OO. OO. QC). (JO. 55. was. the. last legal byte. K. Move. Memory . begLnnLng-sendLng-addressv. MOVE,. ISending-address ) beginninglength of move ' receivingaddress. byte at a time. If either the sending or highest memory location, wrap around will receiving field may be propagated through occur to memory location zero. Any character address one greater than the a section of memory having the receiving address location. After a move, the VNIEM command is called automatically. The. MOVE. command. exceeds. moves the. a. Examples:. '. HOVE,OtS2OCL1OOO. Move. ENTE,O. Enter. =,O,6,1. 2OC)H 3OH. hytes. from. at location. location. O. to location. 1()Qoh.. C). f. Propragate. contents of location. O. for. t. bytes.

(34) 33. DUMP.. C),. El .. OOOC):. 30 30 30. Verify. 3C). 30 30 30. FEI FE. Memory VMEM,. . . . begLnnLng-sendLng-address. V. íending-addresst beginning! ' receivinglength. "l S. address. The VMEM command matches the contents of a series of locations on a byte by byte basis. Whenever a mismatch occurs, the location is given followed by its contents; followed by the contents of the second location followed by its address. At the conclusion of a MOVE the \7MEM command is invoked automatically.. first. Example:. MÜVE:. ,. V*-l1t. C),. S. iooo,. O, SlOOO,. 1OOO 1OOO. ENIF, 444 ?3 45/. Change value. 0444 0445. Errar in validation.. VMEtl,. Print. O, S1C)OQ, 1QC)O ?3 FF !444 45 ES !445. System. RAM. of. 2. bytem. now. areas. should. not. Area. PPAM. The bounds. of the system. RAM. area. are. PRAM DOOO. D23B. Example:. Select Bank(s) BANK,. value. printed. the. PRAM. command.. verif. y.

(35) g One or more banks on Cromemco memory boards can be selected with Bank the BANK command. {When ROS is initialized, bank 0 is selected). selection can be altered either with the BANK command or by outputting A a byte to port 40l6. particular bank n is selected by entering a byte with bit n high as shown in the table below.. Output. BANK. byte or value. A Q2. 0. l2. M. Yl8. 3. lg. 4 5 6 7. More than values for the. 2Yl 4g 80. one bank banks.. may. be. selected at the. same. time by adding. Example:. BANCó8C) BANKó88. Bank 7 is now Oñt Banks 3 and 7 are. others all on. are. off. the.

(36) 35. 0. Section. 5. COMMANDS. CUSTOM. Customizing allows the user to use his own set of mnemonic names. The user can equate Those names may be one to four characters long. This name, when entered, any allowable name to a memory location. becomes a command to begin execution at the designated memory location. Customizing Either a user routine or a system routine can be evoked. also allows the user to add his own name to call a monitor command. The of custom names is dynamic and may be added to or contracted time. any at. list. Enter Custom ECUS,. Name. custom-name,. used to Whenever a system RAM. =. transfer. address. ECUS is are the two commands that add custom names. a one to four character custom name a location. memory to successful entry is made, the system responds with the new. and equate. ECUS. memory-address. RENA. boundaries.. Example: 6. the. ECUSoGUIT,AOOC DOOO D24í (9UIT. AOQC. is. When. GUIT. ECUStPROCESpiOOO DOOO D247. The user. PROCE3S. The process. List. Custom LCUS,. Name. is has. reenter now a. location. address.. typed. process. IOOOH.. control. iñt. ROS. control. program. now. transfers. program. is entered. to. starting at. 1OOO.. Table. [driver·-name]. The LCUS Each name is For examples. will list the names in the custom command table. followed by the transfer address associated with the name. of LCUS see the section on DCUS. command. AOCJC.. at.

(37) Y Delete Custom DCUS,. it. deletion.. custom-name DCUS. The time. Name. command. is used.. deletes one custom. The system. RAM. name. boundaries. from the custom table each are given each successful. Example:. LCUS. 1000. PROC AOOC DCUS,PROCES DOOO D241 LCUS QUIT AOOC ECUS,AP,15OC) DOOO D247 ECUS,HATHX,2OOQ DOOO D24D DCUSkSUM ERROR. WIT .. Rename. SYstem. the. to. duplicate. A RENA. was. not. in the table.. Command. system-command,. RENA,. SUM. custom command. The name the shorten of. custom-name. for. is obtained by using is particularly useful when used evoked routine.. system. name a RENA command a. frequently. command. Example: RENAPLDUMP,D IXJOO D253. Two. DtirS2. D. oooi: 30. now. now. produces. exist for a. DUMP. dump.. 55. RENAPf.DUMP,# DOOO D259. «j3KS2 OOQ3:. names. Special characters are excepted. There are now three command that memory. 45 98. -. DUMPi ·. D,. and. #.. will. dump.

(38) 37. Section. 6. COMMANDS. ASSEMBLER. Assembler system commands enable the user to symbol table and to coñtrcil assembly options. options allows the user to define the location of the destination of his object code. the. memory for An assembly with his source code and. allocate. Three assembly options ASMB, ASMO, and ASMU have the same Command, 3. 2, Parameter Parameter The format is: Parameter 2 assembly, Parameter address the the Parameter is of origin 3 actual memory location for the assembled code, and Parameter assembly ooticm indicated by a digit to 4.. l,. l. format. While. is the is an. l. ing. 3 The options available under Parameter are indicated assembled numbers. gives a complete Option listing. 3 print a symbol table errors only. Option. will list listing. assembly. with Print. the. l. Option. 4. listing.. provides. a commands. The. formatting. S'.'mhol Tatñe. -—=——. will. by the. Option. after. follow2. the. reference table in addition to cross FORM and NFOR are used in conjunction. listing.. of an assembled Allocation. PSTA. The. beginning and end of the symbol table. program the symbol table is initializeá to start At the beginning of the end The upper boundary is at address DFFF. of the system RAM. at Examples of PS'I'A are given under the STAB command. PSTA. command. a. Define Symbol Table. lists. the. Location. STAB. The. the symbol table in any memory area parameter following the command is not occupied address symbol parameter the new beginning of the table. the the address is omitted, beginning default to the next memory locaThe second parameter must always be given tion after the system RAM. and is either the amount of memory allocated or the upper address. STAB. command. by. a. can. file.. reallocate. The. first. will. Example:. If. first.

(39) JR3. PRAM !)OO0 D1EB PS) A L)1EC DFFF STAB. O, 4FFF MEMORY ALREADY S7AB, O, SlOOO OOOO OFFF STABc t DFFF DIEC DFFF. Print. system. ram boundaries.. Print. symbol. table boundries.. ALLOCATED. This area available for symbol table. Default of f irst parameter is end end of system ram.. Assemble ASMB,. assembly-origin-addr,. addr-assembly-code. ,. assembly-option. assembles without user interaction The ASMB command with respect However, the user does have the to the source or object allocation. These options are option of choosing four types of assembly listing. described in the beginning of this section. Example. ASMBt lOOO, CRHMEMCO. iooo lOOl ioo? ioo5 IOOE3 IOOB. :. 78 Ell C3 CD 21 21. Complete. 4C)OO, I Z-80 ASSEMBLER. V. 2.. .. 05 02. 10 10. Ob Ob. OC) OO. t\SMH, )000, 4000, 2 cRñMEMccj Z-80 ASSEMBLER. C)Q1O C)O20 ÓO3C) OC)4Q OOSO OObO. V. 2.. assembler. O. LAB. L-D. A,. ADD JP CALL. C. I:. LAB3:. L-D. LD. O. List. eTrors. listing.. B. LAB3 LAB1 HL, S HL, 6H. enly. {. OOO, 4000, 3 (: f{[lK1F.rÍco Z-ElC) ASSEMBLER. É\SNF1,. i. Assembler V. 2.. C). listing. and. s'jmboi. table.

(40) 39. iooo IC)C)I. 1002 10()5 IOOB 1OOB. 10 10 OO OO. 05 02 06 06. L-D. 0060. L-D. Hi-t b HL, 6H. LAB. I:. 0040 LAB3:. C. ·. LAB3 LABÍ. TABLE. LAB3. 1002. c'\SMB, 1OO(jt CRIRIEMCO. !O(J2 lC)O5 IOOB IOOB CROSS. REFERENCE. L. AIU. L. AB2. 1002 1005. OS. 02 Ob C)6. Assemble ASMO,. 1005. 4C)OO, 4 Z-80 ASSEMBLER. 7(3 Ell C3 CD Ell 21. iOOí. OOSC). O(J2Q QO3C). AIli. JODO. A, B. c)Qio. í31 C3 CD 21 21. SYNBLII t-. LD ADD JP CALL. 78. Assembler V. 2.. C)O1O 0O2C) QO3C). 10 10 OO OO. OC)4C). O. LAB. i. :. LAB2:. 0050 OObO. LD ADD JP CAL-L LD LD. listing Ai. and. crossreference. 13. C. LAB3 LABI HL, 6 HL, 6H. OC)4O OC)3O. with Options assembly-origin-addr,. addr-assembly-code. ,. assembly-option. The ASMO command allows the user to specify devices (drivers) for the assembly listing, the assembly source code, and the outputThedriver. The user also specifies the form of the output to a device. chart The on the next page indicates the choices available to the user. defaults for several options are given below. i. Option. Default. LIST= read=. SYS000. PUNCE1=. sYs0gg The driver by LIST.. specified.

(41) ). .. AsMo,l0g%,400Q,l LIST. =. I. driver. for.assembly. listing. RTYPE. (specify (source. code. input device). is from an. source). assembly. =: READ. (source. =M. ·. =. code. from. memory). driver for input device PTYPE. (disposition. =N. (ignore). of assembler. =PI. (output to memory). output). =. {output is. Intel checksum. hexadecimal tape) PUNCH. =B. (output is binary tape). Cromemco checksum "-. punch. driver. -e,. c'.

(42) 41. in the question attempt to edter an undefined driver will result PTYPE, the assembly When by tape requested is an output being repeated. punching of listing is first listed on the LIST device followed by the the tape. An. Example:. ASMC),40OO,1OOO,1. been defined as a driveT the driver for the listing will be read from I/O Source will he the DISKI will source driver be generatU not code Object will. TTH TTY. LI5T=TTH LISF=1TY RTYPE=I READ =DISKI 2TYPE=N. .. has not. be. Asm,iooo,4ooo,Í L-.ZST ·"TTY RTYPE=M PTYPE=H PUNCH='TTY. Assemble AS-4U,. The. will list. Source code is in memory Produce Intel hex tape Punch output tape using. 'jnnumbered. command. unnumbered is an unnumbered each line. Numbered. file. TTY. I/O File. assembly-orioin-addr, ASNU. driver. addr-assemblj'-code, assembly-option. is identical to the Only T/O I/O Elles.. listed, numbers files are listed. ASMO. command. except that. it. When be unnumbered. files are placed at the beginning of without modification by ASMU. may.

(43) /12. *. %. Section MISCELLANEOUS. 7 COMMANDS. at Given Address. Execute. address. EXEC,. The. command. transfers CPU control to the given address by A simple return executing an tinconditional CALL instruction. to ROS, the resident operating system, be made Lf the user at the end of may ÍÜS3 subroutine insures l) that the address popped onto the stack by the CALL is pointed to by the stack pointer, and 2) that the last Performance instruction executed in the subroutine is a return, RET. of the above steps allows execution of the next instruction in the EXEC. main. program.. Burn. PROM. starting-address,. PROM,. jÉ"¿:. ::ÉF"""|. destination. address. 2708 is burned by the PROM command using the Cromemco Bytesaver The address does have starting card. not to begin on a IK boundary. ROS, burn The resident operating system, FFl6 into unused areas. will The unused areas are defined to be areas outside of the addressed areas but contained within a IK block. The FFl6 and the new data are written to the selected PROM 360 times to insure good programming. A. but do not depress the carriage return. program power switch on the Bytesaver Next, turn ON The front panel lights will and then type carriage return. to When the light pattern becomes stable, your PROM is procount down. ROS now grammed. verifies that the byPRO.4 was correctly programned. programming is indicated displaying the nonverifying Incorrect addresses and their content in the same format as the VMEM command. Remember to turn the program power switch of the Bytesaver to OFF upon completion of the PROM command. To. program. a. PROM,. type. the the. command. PROM. Example: t. PROH.IOOO,S4O,6O40 DLNP.6O3O,S6O. Burn. 2708 prom.

(44) 'u ~. 6CK3O:. FF. FF. FF. FF. FF. FF. FF. FF. FF. FF. FF. FF. FF. FF. FF. FF. 30 20 30 20 53 54 41 52 54 OD ZD 54 3B 4A 55. FF. FF. FF. FF. FF. FF. FF. FF. 3C). 6OBO:. FF. FF. FF. 6070:. hO5O: bObO:. FF. FF OD. 30 30 30 30 30 30 30 30 53 4C 44 20 41 2C 42 OD LEI 30 30 32 30 52 54 3A 4C 44 20 48 4C 2C 53 54 41 30 30 33 30 2Q 4A SO 20 53 54 41 52. 6040:. FF 31. FF OD. FF. This listing shows that after the PROM command has been executed the PROM memory IC does contain information from address 60)40 to was specified address 6U7F (since in the PROM command to Kc) The rest of the PROM has bytes wide). program a swath just not been programmed at all and thus reads "FF" in each address location, which is the unprogrammed state.. it. ..

(45) 44. 3:. CHAPTER. CONVENTIONS. AND. PSEUDO-OPS. Formats The most Formal. Actual. encompassing. format is shown below:. assembler. Operation. Label: COMP25:. LD. Operands HL,VALUEI. ;. Comment. ;. Initialize. FIL. The colon may be followed The label must be followed by a colon. immediately by the operation or one or more blanks. Labels need not start in column one. The maximum accepted length of a label is must ters. All labels start with an almhabetic in the label field must be followed by a colon. register name.. six alphanumeric characcharacter. labels All A label cannot be a. Correct Labels Tl2345. Al. Tl23456. Last character is ignored Labels. Incorrect A B. E F. C. H. D. L. SI?. HL. AF BC DE. IX IY R. I 4A5B. Starts with. a. numeric. character. A space is not required beop-code may be preceded by a label. The op-code must be followed by at tween the label and the op-code. The operands by commas. The length must be separated least one space. A reference a is governed by the type of reference. register pair to A label as an operand is up to six almhais typicalW two characters. FFFF numeric hexadecimal. may not exceed characters, and anumeric The op-code of an unlabeled code line may start in column An. literal. l.. Example:. LAKLI: LD. HL,14263: 14623. IS. BASE. TEN. AND. LESS. THAN. OFFFFH.

(46) 'l5. LE). HL.,14263:. ;. OPCODE NUMBER. (OPERATION) STARTS IN IS BASE TEN-DECIMAL. comments must start with a separated from the final operand by are permitted.. All. COLUMN. 1. semi-colon. Comments need not be a space, although one or more spaces. Example:. PR14:DUT PR14: OUT. Data. CONTENTS OF ACCUMULATOR DATA,A: QUTPUT : EFFECT AS LINE ABOVE DATA,A SAME. Representation. Any number is used in assembler A number absence of a stated base.. decimal.. defaults to decimal in the is declared hexafollowed by an code. H. Example: LD. A,OFFH. :. LQAD. MAXIMUM PERMITTED VALUE OFFH INTO THE ACCUMULATOR : MAXIMUM PERMITTED VALUE IN DECIMAL :MAXIMUM PERMITTED VALUE FOR A. -. ; L-D. A,255. L-D. HL,C)FFFFH. :. REGISTER. PAIR. operand exceeds 65,535, then a value of modulus 65,536 is Arithmetic expressions are allowed an error flag. Computations as operands. are performed on both numbers and labels. The operations of addition, subtraction, multiplication, and division The expression is evaluated from left to right, The are allowed. 6 2 2 + * expression evaluate to 16. a two byte If returned without. will. Example:. L-D. LI). B,É!+6*2 LLLQCI-LOC?. load. If. b. with lb is twenty. LOCI than LQC2 2CL. with. then. A. íocatiQñs higher is loaded.

(47) 46. "$" references the address. A. Load Load. HLt$ BC,$+15. LD LO. SE1BC:. of the next instruction HL BC. of. with address with address. of. SETBC CQMP+15. Listing Controls. Assembler TITLE. Label. Code. Operand. optional:. TITLE. ASCII. string. operand of up to 80 characters appear as a header on all successive pages until the occurrence of another TITLE command. The ASCII string is not enclosed in quotes. The label field in this command has no effect. TITLE causes an immediate EJECT.. will. An. Example: EJECT. Label. Code. Operand. optional:. EJECT. none. command, which advances the paper used an assembly page, is listing. for clarity inpreceded by EJECT. clearly more an identified The. EJECT. if. Data. to the top of the next A routine can be. Structure DEFS. - Define Storage Label. Code. ODerancís. optional: optional:. DEE'S DS. expression expression. The define storage command reserves one or more bytes of storage. the number of bytes reserved. The numeric value of the operand determines Evaluation of the arithmetic expression is from right to. left.. Example:. BUÍCKÁ: BLUCKI):. DEFS OS. 20. :RESERVES. 2C). 2OH. :RESERVES. 3É!. BYTES BYTES.

(48) *. 47. DEFS. LAB1+2*4. DEFS. LAB4-LAB3. Define Storage. (BYTE). LABI IS EGUAL TO 20 THEN :E)8 BYTES ARE RESERVED :COMPUTE DIFFERENCE OF LAB4 AND. iIF. LAB3. DEFB. Label. Code. Operands. optional: optional:. DEFB DB. expression expression. define byte allows either a numeric expression or an ASCII string to be generated. The numeric expression must be in the range plus or minus 256. However, an ASCII string enclosed in quotes is The. valid.. Example: á bytes ASCII string occupies The value 44H is generated IllegaL arithmetic result too Several fields are allowed. 'ABCDEF'. DB DB DEFB DB. 'A'+3. 'ABC"+3 'ABC', 'x"+3. Define Storage. (WORD). large. DEFW. Label. Code. Operands. optional: optional:. DEFW DW. expression expression. define word allows a numeric expression or an ASCII string A numeric expression which exceeds 65,535 will be defined. to 65,536; modulus evaluated overflow will be ignored. The ASCII string, The entire limited in is enclosed to one word (two characters). quotes, be may operands. with line filled The. be. Example:. To. DRG DB. DW. LABI,LAB2. Labels. DW. $. Current value of the location. clarify the action of. the. OK. dollar sign, consider. counter the. code below:. O s$i. The. value of the location. is zero. counter.

(49) P. 48. value of. 2. DB. 7,$. The second. Dbl. 'AA'. Evaluates to 4141H Evaluates to ÓO41H More than one expression permitted. 'A'. DW. g, 'BD'cLAB4 'PDQ'. Dbl DW. Assembly ORG. The. counter. Illegal,. byte. too. has. a. long. Directives - Origin Label. Code. Operand. optional:. ORG. arithmetic pression. ORG. instruction sets the assembler location counter. set to a value more than once during assembly.. exThe. be. may. Example: LOCATION COUNTER IS SET AT ASSEMBLED : THIS INSTRUCTION COUNTER : LOCATION IS NOW THE. :. IOOH A 2OOH. ORG ADD ORG. 1OC)H. AT 1C)OH 2QOH. .. EQU. - Equate Label. Code. OperancÍ. label:. EQU. expression. An EQU label field is equated to the operand. instruction must should be a previously deTined a label, have a label. The operand, Any arithmetic expression is allowed. The EQU is global; once label. a label is defined, is defined for the entire program. The. if. it. Example:. LAB?: '. LABLE:. ENU EGU. LABI 12M317+4. :CQRRECT :. IF ARITHMETIC. LAB1 PREVIOUSLY DEFINED EXPRESEION ALLOWED.

(50) r""\ ,í i.l.. .,.. ' · ' t .:. i . .. , z : .-. : w :F'4.,=::-.',.','!'!i. ' '.. "'· 'i ~. 'i , " 4" '¿..i'.." .... L.YE. ;';;s;.; ':,.2. : . .. >::al. :. +jj r"j · "Y.· ) LAEn 'k.w'·m.. i i" \,7;—v'w t 7 l' "I ?S." Ir^ ":" » '-.,:L. ·.-..p-·' ..L.-a. .. 'ii.:jq D. r1: .:)ri. i. """. r't'""i S it.) ".; i- ':., L) : ,. ',.' A zsecon¿'.i. w a ',·" '.'g e a "Z:S t.? Í[l.i": } ",'.A- m .: -«-. ; } ¿;.i " "} S-: '"i t"") :t t"\, f' e" h ,:: f + "":, ?GÍÍ'"' fÍj "u "s Ggk? "" "·'' '" ':'": " :"í G""'"? 1 :3 Cj Y} I" f"'í \ ': '" i }'" 1·, 7 "g" ': :" ' " f ,t I: :'\" .¿ : up, ? ,,~ G.'^ 4~ l .Y'.a. 1~ -h-.y..j. . e..e q'^. ' } . ...'. 'b—r' .· - .:. . " . . " · 44 m·'. ' ' ; '. ' ( .~, .J..G-. f .m ,..· ·W, · .Ia ·.-L- 4~ Y N 'r:, :K_ ..l. ..L "¡;,-""C) <í.í¿..;Z!;c?: mEj".:.","., !,"tÍ .';jj.. f....i'? Dr(y77"'"a.ia Fa' i-.,t!'+ :"."i ::...'iü.ú'i: '^' .v t-c' a & .+ ·. -·'" Y i. :2' t! '.' '¿"j1"¡: " i'"! T ,'"7'°) :;j i:" '-:' "": 'G[ .i. s se . s ~. .,. ui" t?. { :-'1' t'}." .i.í1cíi(!¿: "ít-':'"; a í such. a a ' '". ':. ·. :""'. í. :"'. : .:¿..)RU!?n. ,íti!,. u.. l. to. nd. a. f f rer: ii i Uzi end cjccul"s lcs. f i.nc the The i cal L" sett: ve r led, r ,../ i t t iew.in': cjf carry' When ü.ái: .f'ile. disk as ' b 1 " C'" t:...~X U ? , % L-fj: L:". i.l-e bei-ng processed, r'!'."¿sr re: Fí'tne3 t-ñ: z ¿'.'ru: f ()t the returns a j-t : C{"i.!'2 $"4""] :iv_":t. "Ue.' Z lila": :" ( !"l.a{: l:) . t9nen che and the flag both carri,' tero . .'"'.'! ¿g I"i ¡'jj a re s e , as;!4em}v'l'y' I be zc ?"I"} . terniiríated t .«. r:. file.

(51) 5(). CHAPTER. E:. USEFUL. SYSTEM. SUBROUTINES. Selected system subroutines can aid the user in his Droqramminq. a list of useful system subroutines with short descriptions are given Before using any of the routines, below. index register IX must be loaded with the address of BASE. This address is found under Linkage to Common Routines. RESTRT ROS be initialized providing This routine will restart ROS. will mode The command is entered. was not initialized previously. that RETURN. This routine does not. it. REENTR. The system is reentered without restarting. This routine is used when the user routines are ended. Itdoes not return to the caller. CALINT The resident to the caller.. is. operating system. initialized. and. a. return is. made. ACCES. This routine allows program access to all system commands. The Each entry in the table is a register points to an input table. A byte of zero ends the string followed by a carriage return. the caller. is routine an table. there not return to will error, this If. FIL command. The example below demonstrates commands, IODR and EXEC.. a. routine containing. user. Example: C"RUMEMCO. Z-80. ?OOO. 07. 21. 2C). ASSEMBLER. V.2.O oc)oí. START:. LD. HL,TA!3LE. two. system.

(52) sn. 2003 2006 2007 2007. CD C9. 12. C)C)O3. OOQ4 QOO5. 44 52 44 4'? 53 49? 2C 46 43 30 30 OD 45 58 45 43 2C 41 30 3C) 30 OD. 49. 4F. ACCES. CALL RET. 0002. AO. '. ;. DB. "IODR,DISKI,FCQO',. OOOb. DB. 'EXEC,AOOO',13. C)OO7. DB. O. EGU. OAO12H. TABLE:. 13. 2C 4B. 2017 ?c)?i 2022. OO. 0008 OOOS'. AO12. i. ACCES:. SYSOUT To output a character This routine is the system output routine. B register with the to the current system output device, load the AF Only the be registers character to sent. will be altered. This an ESCAPE is read from the input device. routine will not return. if. SYSIN. This routine will get a character from the current system input Only device. The character will Fe returned in the A and B registers. the A, F, and B registers does altered. This routine are not return an ESCAPE is read from the input device.. if. 'UFIEX. ,. contents of the HI, register are printed Only AF and BC are altered. device. output The. in hex on the system. PIHEX The. contents of the Only the device. output. A AF. register and. BC. are printed in hex on the system registers are altered.. e. P2HEXS. This routine. calls. P2HEX. and then. prints. a. space..

(53) 52. 4. PIHEXS. This routine calls. PIHEX and. then prints. a. space.. PRTNUM. This routine will output characters to the system outrjut device. registers are to be loaded with the address of the characters be register loaded with the number of characters printed and the to the be Only AF, B, and printed. registers are altered. to. The. HL. D. D. READLN. This routine will read one line from the system input device usincs The FIL register editing features of ROS. all will return pointing to BC the new line and registers will contain the length. GNA.ME. This routine gets a six character name from the input line. This from routine is used with custom commands to retrieve a name parameter the inp'ít line. On input IY must point to the current position in the command has already been loaded when the custom line. This register command On output the flag will be set was executed. there is a default, DE will point to the six character name padded with blanks, and IY will point to the new position in the line.. if. Z. SIOTAB. The name to be searched This routine will search the I/O table. for is to be loaded into the DE registers before execution OF SIOTAB. On return from the routine the found and the III, flag will be set reqisters will point to the I/O parameters for the name found.. if. Z. GTHEXM. is u"ed with the custcñn comniands to retrieve a UEX TY Before calling the routine, from the input line. parameter "to the current position in the line. must point This register has On already been loaded when the custom command was executed. return FIL the register contains default has occurred. The flag is set This routine cíioes not return on error. the HEX VALUE. This routine. VALUE. Z. if. GTDECM. This routine is the same custom command is decimal.. as. GTHEXM. except the parameter. in the.

Referenzen

ÄHNLICHE DOKUMENTE

The Finnish Institute of International Affairs is an independent research institute that produces high-level research to support political decision-making and public debate

◦ Idea of the Higgs mechanism: examples of spontaneous symmetry breaking 2.5 The electroweak sector of the Standard Model – II.. ◦ The Standard Model

This means that a USES LONGINT statement must be included in any program using the LONG INTEGER procedures.. The operating system now uses the general vertical

Place the main program in the reader, depress the tape feed switch to clear the end-of-tape flag, and type the command string.. If the loader is not satisfied

The large-scale drift bodies deposited in the entire eastern Fram Strait are associated with 371  . the northbound West Spitsbergen Current in the southern part, and from the

Write or read on-the-fly (continuous tape motion).. Up to four drives. Three-cycle data break.. All major operations are performed automatically under command of

With a parallel printer port, three serial ports (one standard and two optional), and a game port, the Magic I/O packs more features and connectors on a true

In order to load the Paper Tape Reader, rotate loading knob counterclockwise to lift starwheel arms away from the sprocket shaft.. In- sert tape between