Download "user manual"
Transcript
STD 7000 MP4 Keyboard Monitor USER'S MANUAL o o NOTICE The information in this document is provided for reference only. Pro-Log does not assume any liability arising out of the application or use of the information or products described herein. This document may contain or reference information and products protected by copyrights or patents and does not convey any license under the patent rights of Pro-Log, nor the rights of others. Printed in U.S.A. Copyright@ 1981 by Pro-Log Corporation, Monterey, CA 93940. All rights reserved. However, any part of this document may be reproduced with Pro-Log Corporation cited as the source. 0 PROGRAM MP-4 KEYBOARD MONITOR () THIS PBOGBAM IS INTENDED FOR USE ~lTtl THE PRO-LOG 7801 (8085) OR 1805 (L80) CPU BOARDS AND THE 1505 KEYBOARD/DISPLAY CARD. IT PROVIDES THE USER WITH A MONITOR AND BEBUGGING PROGRAM THAT RESIDES IN A 2/1b EPROM) FROM ADDRESS 00 0 HEX TO O/FF HEX. THE PROGRAM ALSO PROVIDES THE USER WITH SEVERAL INDEPENDENTLY ACCESSIBLE PROGRAM MODULES (SUBROUTINESO THAT CAN BE CALLED BY THE USER OR MOVED INTO HIS PROGRAMS. THESE INCLUDE MODULES TO ALLOW HIM TO FULLY EXERCISE THE 7303 KEYBOARD AND APLHANUMERIC DISPLAYS. IN ADDITION) THE CAPABILITY TO TRANSFER DATA FROM A PRO-LOG PROM PROGRAMMER TO THE USER'S SYSTEM) OR VICE VERSA) IS PROVIDED WHEN UTILIZED IN CONJUNCTION WITH A PIN-114 PARALLEL INTERFACE TO PROM PROGRAMMER. - .... SYSTEM DESIGNATION IPRODUCT CONFIG. DESIGNATION CLOCK STATE TIME DOCUMENT 105680 105685 PS-IB (8085): 7801, 7303, MP-4 0.32 usec. PS-3B (Z80): 7803, 7303, MP-4 0.40 usec. and 105675 BASIC MEMORY ADDRESSES IN HEX ROM 1st/LAST ADR 1st/LAST ADR 0000-07FF 2000-23FF (0800-HFF)k (2400-2FFF)* RAr~ *Empty sockets. User may add to CPU by installing ROMs and RAMs. Additional ROM and RAM can be added with 7701 or 7702 memory hoards. PIN 114: 7505, 7140, RC50-6 PORT ASSIGNMENT FOR I/O FUNCTION PORT BIT Switch S1 Switch S2 IN 00-6 IN 00-7 Keyboard Inputs IN 00-0 thru 00-5 Keyboard Enables OUT 00-0 thru 00-3 Display Data OUT DO all bits Display Control OUT 01-0 thru 03 Pt'ograrnmer Programmer Programmer shake in Programmer shake out 1 Da ta IN 52 all bits Data OUT 50 a11 bi ts I-iand- IN 51-0 thru 51-2 Hand- OUT 51-5 thru 51-7 -I o o o TABLE OF CONTENTS 0 PAGE 2. SYSTEM REQUIREMENTS 5 5 3. MONITOR DESCRIPTION 6 4. MONITOR OPERATION 7 1. GENERAL 5. MONITOR/PROM PROGRAMMER INTERFACE 26 6. MONITOR USE WITH M900B OR M980 PROM PROGRAMMER 27 7 27 I • MONITOR USE WITH M824 OR M825 MICROPROCESSOR SYSTEM ANALYZER 8. MONITOR PROGRAM LISTING C A. FORWARD 29 B. MONITOR CONTROL PROGRAM FLOWCHART 30 C. MONITOR PROGRAM MEMORY MAP 33 D. RAM VARIABLE MEMORY MAP 34 E. PROGRAM LISTING 35 67 9. ApPLICATION SOFTWARE MODULE DESCRIPTIONS • 3 , ~ , ......_ If i IT;(::t o o o o MP-4 KEYBOARD MONITOR PROGRAM General The MP-4 Keyboard Monitor Program is intended to be a program development aid and program debugging tool for the STD BUS user. It is designed to be used with the PRO-LOG 7303 Keyboard/Display Card as the I/O device and a 7801 (8085) or 7803 (Z80) CPU Card. It is fully compatible and useable with the PRO-LOG M900, M900B, M920 and M980 PROM Programmers as well as the M824 and M825 System Analyzers. In addition to providing the user witn several useful editing and debugging functions, there are many resident, independently accessible program modules (subroutines) that may be called by the user or moved into his programs. These include routines to fully exercise the 7303 alpha-numeric displays and keyboard, a variable time delay module, and a Hex to ASCII conversion routine. c The Monitor can also double as a diagnostic tool for the engineer or technician. When switches Sl and S2 on the 7303 card are closed, or if the 7303 is not in place, program, control is transferred to address 0800 Hex (ROM 1) and all monitor functions are bypassed. If the Monitor PROM is retained in the finished product, and if the user's permanent main program starts at address 0800 Hex, the Monitor program will be transparent until the 7303 is inserted into the rack and either or both switches are not closed. At that time, all Monitor functions will become available to allow debugging in place. Monitor resident software is provided to allow the user to transfer data from the microprocessor system to the PROM programmer and vice versa. This requires a PRO-LOG PROM Programmer equipped with the 9104, 9114, or 9814 Parallel Interface Option, and a PIN-114 Parallel Interface Option for STD BUS Prototyping Systems. System Requirements The Monitor program resides in one Intel 2716 EPROM or equivalent and occupies addresses 0000 through 07FF Hex. Program parameters and stack operations use addresses 2000 through 204F Hex. User programs must start at locations which are not part of these address fields. In addition, all but the first two restart locations are available to the user for vectored interruDt. However, the Non-Maskable locations 0024-0026 Hex (8085) and 0066-0068 Hex (Z80) are utilized in the program to cause the contents of the internal registers to be displayed in the 7303 displays upon the occurrence of a Non-Maskable Interrupt (NMI). This interrupt can be generated coincident with any program address by the M824 or M825 System Analyzers. Also, restart location 0038 Hex contains an unconditional jump to location 2020 Hex in RAM. The user can program an unconditional jump into locations 2020-2022 to vector his Restart 7 interrupt to any location in memory. • With all RAM socketed on the 7801 or 7803 CPU Card, user programs and data may reside in address locations 0800-1FFF (ROM) or 2050-2FFF (RAM). Additional memory may be added (4000-FFFF) with the addition of PRO-LOG 7701 or 7702 memory boards . 5 __.___ _nuw:a= __==Mm&mUVi_\ o Monitor Description The Monitor program utilizes the eight alpha-numeric displays and twenty-five keys provided on the 7303 Keyboard/Display Card. The keyboard is divided into a Hex key pad (keys O-F), a system RESET key, and 8 function keys. Each key has a removable, transparent cap. Labels are provided wjth which the user may label each of the function keys (keys 10-17) by removing the cap, inserting the label, and replaceing the cap. A keyboard layout diagram is shown in Figure 1. to facilitate labeling. Data movement/manipulation functions. ( _--.A"------.. \ r4l[illJ~r&JfRE=l ~~~~~ []808~ 8[]D[]~ DDDDOO Program development/ debugging functions. 4[) 8DDD~ Figure 1. 7303 Keyboard Labeling. Each of seven keys provides the capability of implementing the functions or commands so labeled, one upper and one lower function per key. To select an upper function, the user first depresses the shift key (t), then the desired key. To select a lower function the user merely depresses the desired key. Operation is similar to that of many conventional hand-held calculators. The function keys are grouped by application. The horizontal row of function keys provide several data movement, manipulation and memory conditioning capabilities. The vertical column of function keys provide program development and debugging capabilities. 6 o o Upon power-on or pushbutton reset, the prompt word "READY?" is displayed in the 7303 alpha-numeric displays. The subsequent selection of any command will result in the display being blanked, followed by the name of the command for approximately 3/4 second. This verifies to the user that he has selected the desired function or command. Throughout several functions, the prompt word "BUSY" is displayed while the processor is completing the execution of that function. Several other prompt words are utilized by individual routines to enhance user entry or information. All Monitor routines are exited by depressing the "RESET" key, or upon completion of the function, in which case control is returned to the Monitor and READY? is again displayed. II II Monitor Operation To select a specific command, depress the appropriate combination of shift (t) and function key. The display will blank and then the name of the function will appear centered in the display for 3/4 second. SST (Single Step), BST (Back Step), and CLR (Clear Entry) are not commands. All command functions except STR and RUN require the user to enter one or more 4-digit Hex addresses. When an address entry is required, the prompt "____ " will be centered in the display. Enter the address, most significant digit first, from the hex keypad. As each digit is entered, it will be displayed, thereby replacing the prompt characters. After entering all 4 digits, depress SST. The address will disappear and the function will continue execution. Several commands (EDT, STR, FLM) may require the user to enter 2-digit Hex data. As before, enter the data from the Hex keypad, most significant digit first. The data will appear in the display as it is entered. At the completion of entry, depress SST and the function will continue execution. Should the user enter an address or data digit in depressing the CLR key. Each time the CLR key is the left will blank starting with the last entry. entered. All corrections must be made before SST error, it may be corrected by depressed, the next digit to The digit(s) may then be reis depressed. During the course of the execution of the commands RCV, MOV and FLM, data is written into RAM. If the RAM location fails to accept the data, or ROM is written to, or the address written to does not exist in the system, then the execution of the function will halt and the address of the bad location and its data will be displayed. To abort further execution, depress RESET. To continue execution, depress SST. Execution will continue until completion, or until another bad location is encountered. A description of each command, its suggested application, and instructions for its utilization is included in the following pages . • 7 llll&&££&S4_.. MIli/lRiSiliihDiWiRtliIOlillEiii ...iii&lillillliMWiMIiMi£ai8iMlGlldlllli!.;II,:;;;WMMIA£14&W""YIR\MMQQlMI1i:;;W;;W;U@8Aill;,L'''&i1T = 413Jb IJI"'LJ _&ii(, i,PfF./fif1if¥%4i~ 1f4fM'tfIIf1f.'fIIt4M1ITfR\iF9i11Fi WAF 4 o Monitor Displays II II To Prompt an Address Entry. *User Enters a 4-digit Hex Start Address From Keyboard. Monitor Displays Address and Data of Selected Location. *User Depresses SST, BST, or a Hex Key from Keyboard as Data. o YES Monitor Decrements Address to Next Lower Location. YES Monitor Increments Address to Next Higher Location. YES *User Enters 2nd Digit of Data from Keyboard. 8 ---- ~.- ~.---------~-.~~~--~~-.--.--~-----.~-~~--.~----~---------.-.---~-~--- o EDIT data in memory. This command allows the user to display a desired address and resident data in the 7303 alpha-numeric displays, and modify the data, if desired. After entering the desired starting address, the address and data will be displayed as 4 Hex digits of address and 2 Hex digits of data separated by 2 spaces (AAAA DD). The user may modify the data by merely depressing 2 Hex keys on the keyboard. The data will be displayed as it is entered, and will replace the original data. SST must be depressed to enter the data into memory, following data entry. If the user desires not to modifiy data, he may advance to the next higher location by depressing SST. At that time the address will be incremented and the address and data of the next location will be displayed. The user may also depress BST, thereby decrementing the address to the next lower location and display its address and data. To exit this command function, depress RESET. The purpose of this function is to allow the user to enter program and data into RAM for subsequent executuion and debugging. Note; • If an "E" appears to the immediate left of the data, following a data entry, it informs the user that the data was not accepted, i.e., the RAM location is bad, or that area of memory is ROM or non-existent in the system. To continue, depress SST to increment to the next location. To abort, depress RESET . 9 o Monitor Displays Last Entered Execution Addres for 1 second. Monitor Displays II ., To Prompt an Address Entry. *User Enters a 4-digit Hex Start Address From Keyboard. Monitor Displays "*RUN*" EXEC PGM o *User Depresses RUN Key. Monitor Initializes Registers, Display, LEOs, Start Address. o 10 Enter EXECUTION ADDRESS into memory. This command allows the user to enter a program execution starting address into memory and is intended to allow the user to exercise programs entered into RAM or ROM. Upon selection of this command, the Monitor will display the last execution address entered in the 7303 alpha-numeric displays for approximately one second. The display will then blank and the prompt "____ " will be displayed to indicate to the user that a new 4-digit Hex execution start address must be entered. The user may retain the current address by depressing RESET. Otherwise, the user enters the new address and depresses SST. After address entry, the display is blanked and then u*RUN*H is displayed. Tbe program may now be executed by depressing RUN. The execution address will be retained for subsequent program executions until it is changed by this command. RUN the program at the previously entered execution address. This command will allow the user to execute a program in RAM or ROM, repeatedly. The execution start address is the last address entered via the XAD command. Upon selection of this command, the Monitor blanks the display and LED's, disables the keyboard, loads the registers with the values entered via the last STR command, retrieves the execution address from memory and jumps to that address . • 11 ' ...._IMMWiW;;u;;n;G,illlAlMlJDiiJ&i!!lhR@@,MWI&M1M_S;ID&UiMDi.dMl==MiMfMffiMtlMLib.,,;.;;,; M ,;;;;;;:;$ ,,1;;;;::« Ii :;;,','*+%4$ 4¥T4\¥4#A44P MTP# ¥ » $ q - o SET REG Monitor Displays Next Register Name and Data as "REG r=dd". *User Depresses SST~, or a Hex key From Keyboard as 1st Data Digit. YES *User Enters 2nd Digit of Data From Keyboard. NO o NO RESET o 12 ----~----~---.--- - - Pre-SET Registers for program execution. This command allows the user to enter a set of initial register values into memory. Each time the user depresses RUN to commence execution of a program, or a portion of a program, these values will be loaded into the internal registers before jumping to that program. In this way, program execution can be started with the processor in a known state. The entered values will remain the same until changed by subsequent repetition of this command. Upon selection of this command function, the Monitor will display "REG H=dd", where "dd" is the last 2-digit Hex data entered for the initialization of the H register. To enter new data, depress the desired 2 Hex keys, then depress the SST key. To leave the data unchanged, depress the SST key directly. Each time the SST key is depressed, the next register name and content will be displayed. Depressing the SST key after the contents of the flag register, F, are displayed will return control to the Monitor, and "READY?" will be displayed. Register name and contents are displayed in the following order: H, L, D, E, B, C, A, F. e 13 o - SET BKPT Monitor Displays II II To Prompt an Address Entry. Monitor Displays Next Register Pair Content as IIrr=dddd *User Enters a 4 Digit Hex Breakpoint Address. *User Depresses SST, or Hex Key From Keyboard as Data. ll RESET • YES *User Enters 2nd, 3rd, and 4th Digits of Register Pair Data. o RETURN o 14 Set Breakpoint at user entered address. This command allows the user to enter a breakpoint at any desired address in a program that resides in RAM. When the breakpoint is encountered during program execution, the execution will terminate and the internal register contents will be displayed. Upon selection of this cOJllTland function, the Monitor will display " ____ " as an address prompt. Enter a 4-digit Hex address and depress the SST key. The Monitor will replace the original data at the designated address with a Restart 2 (D7 Hex) and save the original data in memory. Upon depression of the SST key, control will be returned to the Monitor and READY? will again be displayed. Care must be taken to insure that the breakpoint only be set at an address that contains the first byte of an instruction. If this is not done, the restart instruction will be misinterpreted as operand data. II II Breakpoint Execution. Upon encountering a breakpoint, program execution will terminate and the register contents will be displayed, starting with IHL=dddd", where "dddd" is the 4-digit Hex data contained in the HL register pair. At this point, the user may change the data by entering 4 Hex digits of new data from the keyboard and depressing SST. The data will remain unaltered by directly depressing SST, at which time the next register pair name and data will be displayed in the same manner. Data is displayed in the following order: IHL=dddd", IDE=dddd", IBC=dddd", and IAF=dddd". After the AF register pair data is displayed, execution can be resumed by depressing SST. The Monitor will replace the restart instruction with the original data and execution will resume at the breakpoint address. To leave the breakpoint set for subsequent executions, depress RESET instead of SST. Non-Maskable Interrupt Service. Upon the occurrence of a non-maskable interrupt, the register pair contents will be displayed and can be altered as described above. However, the Monitor will not replace the breakpoint with original data . • 15 FILL MEM o Monitor Displays II ---- II To Prompt an Address Entry. *User Enters a 4-digit "RAM Start Address. Monitor Displays II - .. -.,.. II To Prompt an Address Entry. *User Enters a 4-digit RAM End Address. o Monitor Displays II DATA? II To Prompt a Data Entry. *User Enters 2 Hex Digits of Data From the Keyboard. Monitor Displays IIBUSY II and Writes Data into RAM Block. RESET 16 o Fill a block of memory with a single data value. This command allows the user to write the same data value into all RAM locations that lie between the user-entered address limits, inclusively. The data can be any user-entered 2-digit Hex value. Upon selection of this command function, the Monitor will prompt an address entry by displaying "----". Enter the starting address to be written to. The Monitor will prompt another address entry. Enter the ending address to be written to. The Monitor will now display "DATA?" to prompt a data entry. Enter a 2-digit Hex value from the keyboard. The data will be displayed as it is entered. Upon completion of the data entry, the Monitor will display BUSY while it writes the entered data into all locations within the address field. It then exits to RESET. II II This command may also be used to test the integrity of a block of RAM. Should any RAM location fail to accept the desired data, execution will halt and the bad location address and data will be displayed. Depressing SST will cause execution of the function to continue (See Monitor Operation). c It is suggested to the user that prior to entering a program into RAM for development or debugging, the memory be filled with the data that corresponds to the unprogrammed state of the PROM (00 or FF) in \t/hich it will eventually reside. Then, if the program is subsequently transferred to the PROM programmer via the SND command, those areas of memory not actually part of the program will remain unprogramin the PROM . • 17 lWilMitiii!ilMWiWMHiIi..liUliiMMiiiiIMM!1IiiI{p.jiiMh6MIlli!iMiilliMIdIIIIH.&liiIiOJIIL. . Uiiiii!iiWiIiiiWi&MlWliiiNMWMIGGaiMINWm......'Wi1Dl(4IliilMi.ML4iiiMdU@O ...WIJIt;;;MJMW;,IAJW1£CMMi,Mli8P11iQ, t_,-, *£,cti!ffli~ijifffTfiilf9fTf'\\ilif4lf&9Iffff9'Y?f¥U1fM2 I, S$1%H!HMfT\f4KMT/44fiTfifR4 G r o Monitor Displays Monitor Displays II II II II To Prompt an Address Entry. To Prompt a 3rd Address Entry. *User Enters a 4 Digit Source Start Address. *User Enters a 4 Digit Destination Start Address. Monitor Displays II Monitor Displays BUSY" and t~oves Da ta . II II To Prompt a 2nd Address Entry. - *User Enters a 4 Digit Source End Address. RESET o o 18 o Move a block of data to another location in RAM. This command allows the user to move any size block of data from ROM or RAM to another area of RAM. Both backward and forward moves are allowed. As the Monitor moves the data, it clears the source area by writing 00 Hex (NOP) into each source location. Upon selection of this command function, the Monitor displays "____ " to prompt an address entry. Enter the 4-digit Hex source starting address. Then the Monitor will prompt a second address entry. Enter the source ending address. The Monitor again prompts a third address entry. Enter the destination starting address. At the completion of the last entry, the Monitor will display "BUSY", and begin moving data to the new locations. If any location fails to accept the data, execution will halt and the bad location address and data will be displayed. To resume execution, depress SST (see "Monitor Operation"). At the completion of the move, the Monitor will exit to RESET and display "READY?". This command can be used to move any Monitor software module into the user's program. The source start and end addresses, and the destination address are saved in memory for subsequent and repetitive address ajustment operations that utilize the AJA command . • 19 o *User Enters a 4 Digit Programmer Ending Address. Monitor Samples PROM Programmer Interface. Monitor Displays II To Prompt a 3rd Address Entry. NO II Monitor Displays II II To Prompt an Address Entry. Monitor Displays IINO PGMR!II For One Second. *User Enters a 4 Digit System Memory Start Address. *User Resets - Monitor Displays IIBUSY II and Transfers Data To/From pgr. or Initiates Programmer Interlock. *User Enters a 4 Digit Programmer Staring Address. RESET - o RESET Monitor Displays II To Prompt a 2nd Address Entry. II o 20 o Send a block of data to the PROM programmer. This command allows the user to transfer a block of memory data from either ROM or RAM to any PRO-LOG PROM Programmer equipped with a Parallel Interface Option. To use this command, the PIN-114 Prototyping System Interface to PROM Programmer must be installed to connect the microprocessor system to the programmer. When using an M900 or M920 programmer, only personality modules for PROMs with a 512 word capacity, or greater, may be used. This restriction does not exist when using the buffer equipped M900B or M980 units. Upon selection of this command function, the Monitor determines if the PIN-114 is installed, if the programmer is connected, and if the programmer is turned on. If any of these conditions are not true, the Monitor displays "NO PGMR!" for one second, then exits to RESET and displays "READY?". If the programmer is on-line, depress the RESET key on the M900 or M900B programmer to initiate the interlock. If an M920 is used, turn it of~ then on again. The M980 should not be RESET - the user must select Parallel Interface Option from the keyboard, initially. All but the M980 must be reset before each subsequent data transfer. Next, the Monitor will display " ____ " as an address prompt. Enter a 4-digit Hex programmer buffer or PROM starting address. The Monitor will prompt a subsequent address entry. Enter the programmer buffer or PROM ending address. The Monitor will prompt a third address entry. Enter the microprocessor system starting address. The Monitor will then display IIBUSY" and transfer the block of data to the PROM programmer. Upon completion of the transfer, the Monitor will exit to RESET and display "READY?II, after dropping the interlock signal. Receive a block of data from the PROM programmer and store it in RAM. This command allows the user to transfer a block of data from the PROM programmer PROM or buffer to system RAM. All restrictions and interface requirements specified for the SND command apply, as does the operating procedure. A further restriction exists in that the data must be transferred to valid RAM locations. Should a RAM location fail to accept the data, or if the RAM capacitiy of the system is exceded, or if transfer is to ROM, then execution will stop and the address and data of the bad location will be displayed. Transfer may be resumed by depressing SST (see "Monitor Operation") . • 21 o Monitor Displays " " To Prompt an Address Entry. *User Enters a 4 Hex Digit Field Start Address. Monitor Displays II II To Prompt an Address Entry *User Enters a 4 Hex Digit Field End Address. o Monitor Displays IIBUSY II and Adjusts Jump Addresses. •• RESET o 22 C) I I AJA Adjust the addresses contained in 3-byte instructions after a MOVE Whenever a program or subroutine is moved from one area of memory to another, it will not execute correctly unless the addresses contained in all 3-byte Jump, Load, and Store instructions are changed to reflect the programs's new location. This includes addresses contained within the moved program, and addresses in other areas of memory that may refer to the moved program's original location. This command allows the user to adjust the move-affected addresses within any field of data. It may be used over as many fields as desired, and over any size data field. All adjustments made to addresses are based on the parameters of the last MOV operation. i.e., source start, source end, and destination start addresses. The Monitor determines the displacement (source minus destination), or how far the data was moved. It then searches for 3-byte instructions. The operand (2nd and 3rd bytes) of each instruction found is examined. If the operand value lies between the source start and end addresses, inclusive, the displacement is added or-subtracted from the operand. Upon selection of this corrmand function, the Monitor displays "____ " as an address prompt. Enter the 4 Hex digit starting address of the field of data to be adjusted. The Monitor will then prompt a second address entry. Enter the 4 digit ending address of the data field. The Monitor will then display "BUSY" as it searches for 3-byte instructions and adjust operands. Upon completion, the Monitor exits to RESET and displays "READY?". NOTE: This command operates only on the subset of instructions common to both 8085 and Z80. If ZSO special instructions are used, care must be taken to insure they are not altered by this routine . • 23 o CHG ADR Monitor Displays " " To Prompt 4th Address Entry. Monitor Displays II " To Prompt 1st Address Entry. *User Enters a 4 Digit Source End Address. *User Enters a 4 Hex Digit Field Start Address. Monitor Displays " " To Prompt 5th Address Entry. Monitor Displays II " To Prompt 2nd Address Entry. *User Enters a 4 Hex Digit Field End Address. *User Enters a 4 Digit Desti.nation Start Address. Monitor Displays " " To Prompt 3rd Address Entry. Monitor Displays "BUSY" and Changes the Addresses. *User Enters a 4 Digit Source Start Address. o RESET o 24 Change all address bytes contained in 3-byte instructions. This command allows the user to change all page and line addresses contained in all 3-byte instruction operands within any area of RAM, by adding or subtracting an offset to those operands. The offset, or displacement, is computed by the Monitor from the source start and destination start addresses entered by the user. If the user has developed a program in RAM, and desires to relocate it to ROM, he can utilize this command to change the addresses of all Jump, Load and Store instructions that would be affected, then transfer the altered program to the PROM programmer. The converse is also true, in that the user can transfer the contents of a PROM to RAM, change all dependent addresses, and execute the program. Upon selection of this command function, the Monitor will prompt the entry of five (5) addresses by displaying "____ ". Enter the following 4 Hex digit addresses in the listed order: 1) The starting address of the data whose operands are to be altered. o 2) The ending address of the data whose operands are to be altered. 3) The source starting address, i.e. the starting address of the area in which the program was intended to operate. 4) The source end address. 5) The destination start address, i.e., the starting address of the area in which the user desires the program to execute. Upon completion of the last address entry, the Monitor will change all addresses required, while displaying "BUSY". When finished, the Monitor will exit to RESET and display "READY?". If the user wishes to change addresses in segments, in order to bypass data tables, the first area of data must be changed with the CHAD command, but subsequent areas may be changed with the AJA command. The source start, source end, and destination start address will be retained in memory until the next CHA operation. *This command operates on those instructions that are common to the 8085 and Z80. *If Z80 special instructions are used in the program, care must be taken to insure *they are not altered by this function . • 25 _ _ NiilNiMiiiUI _ _ MillliMii\ll!li3dl!!lWLill'Ii\Iiil;:.*'IIIik1iMmitifiWM.Ii\l5JMiA1EliliMiJ.li'lli£Ql(J;au·$ulm''iElffiJUWili&illilii!iHlliiiilHiililGii\\iiilL\iJ...,ifi&iMtaI. .lifMliliiPiiiMill . . . . . . . .IlIi+WIi4iiWIii............. . . . . .Wiilili.iGiMUilW1i!liflii. . . . . . ._ t--.aaawa;iiMJiWNliW&lGiIiliRiiiM&IIi;waaiIOWiIi&I\ o Monitor/PROM Programmer Interface The Monitor program contains the necessary software to implement a direct parallel data interface with the M900, M900B, M920 and M980 PRO-LOG PROM Programmers. The M900 and M920 must be equipped with a 9104 Parallel Interface Option which is described in detail in Section 8 of the respective operating manuals. The M900B requires the 9114 Parallel Interface Option which is described in Section 11 of the operating manual. The M980 provides the 9814 Parallel Interface as described in Section 19 of the operating Manual. In addition, the PIN-114 Parallel Interface to PROr·1 Programmer is required. This consists of a 7507 I/O Module Mounting Rack Inteface Card, an RC50-6 Ribbon Cable, and th~ 7140 Parallel Interface Adapter. To effect the interface~the 7507 must be inserted into the STD system rack, the 7140 inserted into the 25-pin "0 connector of the PROM programmer, and the RC50-6 cable connected between them. 11 Data is transferred to and from the PROM programmer via the SND and Rev commands of the Monitor. The user has the choice of programming PROMs with debugged machine code directly from the system, or transferring ROM based programs/subroutines into the system for subsequent modification/debugging. o The following diagrams describe the port/bit assignments of the PIN-114: PORT 52 - Read Data PORT 50 - Write Data DO 07 DO 07 •• bi t 7....4F-----------~ bi t 0 bi t 7....""f-----------...,~~ bi t 0 PORT 51- Handshake TIMIII0 +5v I A lEI R In Qut blt 0 bit 7 All handshake lines are active when low, i.e., 1 = low, 0 = high. Definitions: ~ = Transfer* to M= Mode* pgmr. I = Interlock* o = constant from pgmr.( 5V = programmer power A = Address* E = Error (not used by Monitor) R = Response* o 26 o Monitor Use with M900B or M980 PROM Programmer The most serious drawback to a RAM based development tool is the volatility of the memory. All too often, RAM based programs are altered or destroyed by electrical noise, power fluctuations, or program bugs that overwrite the program. The M900B and M980 PROM Programmers are equipped with CMOS RAM buffers that provide short to intermediate, power-off, data retention for several minutes to several days. These programmers may serve as a separate program storage medium that is totally immune to the electrical and software bugs that destroy programs. In order to prevent the total or partial loss of RAM based programs, it is recommended that the user always transfer his program into the programmer buffer before execution, modification or other debugging. In that way, a copy of the last valid program can rapidly be reloaded into RAM on request, even after programmer and system power are lost. It also provides the user with storage for earlier versions of his program, prior to modifications. Should his modification not work, he can easily retrieve the earlier version and try a different solution. Additionally, if the M900B or M980 is equipped with an appropriate interface option and is interfaced to other systems or I/O devices (CRT, TTY, computers, etc.), the programmer can serve as a temporary holding buffer. Data can be transferred from the interfaced device or system to the programmer, then transferred from the prorammer to the Monitor system for debugging or modification. Monitor Use with M824 or M825 Microprocessor System Analyzer The user may enhance the execution, debugging and diagnostic capabilities of the Monitor by combining its application with the added hardware diagnostic capabilities of the PRO-LOG M824 (Z80) or M825 (8085) Microprocessor System Analyzer. The analyzer performs the following basic functions: . a. Tracks the actual instruction sequence as the program executes, and displays desired address, control and data information when it occurs. b. Monitors control states and data passing between the processor and the system it controls and allows the user to correlate actions or reactions with program execution. c. Provides a multi-qualified trigger to conventional oscilloscope when analog measurements are desireable. The analyzer allows the user to dynamically monitor his program, single step instruction-by-instruction or machine cycle-by -machine cycle through the program, stop the program execution at any address and machine cycle, capture data and stop the processor after any number of passes through an instruction sequence, and trigger an non-maskable interrupt upon the occurrence of any program address. • The primary debugging capabilities of the Monitor include the ability to execute any program sequence with known register conditions on entry, and the ability to set a RAM based breakpoint, at which time the register contents are displayed and can be altered and execution resumed . 27 When used in conjunction with the analyzer's ability to stop the processor at any address and after any number of passes through the program sequence, the Monitor will permit the user to execute and exercise only those RAM and ROM based routines in which he is interested. This will allow him to independently exercise external hardware items controlled by the processor system, to diagnose and troubleshoot hardware problems, and to debug the integration of the software and hardware. o Because the Monitor will display the contents of the internal registers upon the occurrence of a non-maskable interrupt, the analyzer's address-generated interrupt can be used to effect a breakpoint in ROM or RAM. The user merely sets the breakpoint address on the analyzer switches and arms the interrupt. When that address occurs on the address bus, the processor will be interrupted and its register contents displayed in the fashion discussed during the explanation of the BPT command. If the 7303 Keyboard/Display Card is not in place, the non-maskable interrupt routine bypasses the register display routine. Instead the contents of the registers are pushed onto and pulled off of the stack and a return is executed. To see the register contents at any program location, place the analyzer in the STOP mode at location 0000 Hex. Set the desired address on the ADDRESS switches, set the CYCLE COUNT switch to Ml, the INSTRUCTION COUNT switch to 10 and ADDRESS + INSTRUCTIONS, and depress the INTERRUPT switch. Now depress CLEAR. The processor will stop at address 057B Hex and display F5. Single stepping from that point, cycle-by-cycle, will allow the user to see the registers being stored on the stack. The data displayed will be as follows: F5, (A), (F), C5, (B), (C), 05, (D), (E), E5, (H), (L), ... where (r) means the contents of register r. (For a more in-depth discussion of the analyzer functions and capabilities, see the Users Manual for M824 (M825) System Ana lyzer. ) 0 o 28 MONITOR PROGRAM LISTING o FORWARD The following pages contain the Monitor program listing, main program flow charts, and pertinent memory maps. The source is written STD mnemonics, and utilizes only those instructions common to both the 8085 and Z80. An explanation of the mnemonics can befound on the PRO-LOG STD 8085 or Z80 PROCESSOR PROGRAMMING AIDS cards, in the USER MANUAL FOR M824 or M825 SYSTEM ANALYZER, and in the PRO-LOG MICROPROCESSOR USER'S GUIDE. The object or machine code listing is fully compatible for use with 8080A, 8085, and Z80 microprocessors. When provided by PRO-LOG, the program is contained in one Intel 2716 EPROM, or equivalent, and resides in locations 0000 to 07FF. In addition, the following conventions are used throughout the program listing: o a. Labels enclosed by apprentheses ( ) indicate subroutine entry points. b. Labels enclosed by brackets c. CST mnemonic implies location is a table data byte, vice instruction. [J indicate Monitor command entry points. The flowcharts utilize standard ANSI symbols. The program addresses that correspond to each flowchart element are written above the upper left shoulder of each sysmbol. If a routine that accomplishes a particular flowchart operation resides elsewhere in memory (subroutines, etc.) its address is written to the right of the symbol. Two memory maps are provided: a. 2K ROM memory map. This map indicates the relative location in ROM of each routine, table, and unused area. b. 1 Page memory map. This map indicates the relative location of each RAM variable or program parameter assigned for use by the Monitor. It also shows locations reserved for stack operation. All unassigned RAM space is available for user programs and data . • 29 004D CHECK FOR THE CLOSURE OF ANY OF THE FUNCTION· KEYS. SET THE STACKPOINTER. 0800 BLANK ALL DISPLAYS. ROM 1 075B 006D READ THE KEYBOARD TO IDENTIFY THE FUNCTION SELECTED. 0780 WAIT ~ SECOND TO ENHANCE THE DISPLAY VISIBI06AB LITY. 0040 CLEAR ALL THE DISPLAY CURSOR SEGMENTS. 0740 0043 75 READ THE KEYBOARD FOR UPPER CASE FUNCTION. DISPLAY II READY?II . 0 0780 MONITOR PROGRAM MAIN FLOWCHART o 30 YES 9191B5 DISPLAY "*EDIT*" FOR ~ SECOND. YES 091BE DISPLAY "*BKPT*" FOR ~ SECOND. YES 00C7 DISPLAY "*EXAD*" FOR ~ SECOND. 911AE SET BKPT 01CA EXEC ADR 0214 DISPLAY "*SETR*" FOR ~ SECOND. 00D9 DISPLAY "*SEND*" FOR ~ SECOND. o YES E2 DISPLAY *MOVE* FOR ~ SECOND. YES EB DISPLAY *AJAD* FOR ~ SECOND. II II II II SET REG 26F SEND PGR 0404 MOVE DATA 47A ADJUST ADR RESET Ie 31 Wiilii&iWMMiiiJJiiIiiiiIilii"",lIl. . .nl¥i&MiQiWIiW&flIWIIiJNiih'iWMliWfl""aUW,m,iWi1ilUOlliQWi&i&WlJlOOfiQ;;nQ,llllf _.fWi L_ g, IlIiliLJlltMAMNibot dUL::; IlMi,;;;gm;; h;; 4144;' ;; t4¥lMi!fllf'f,JfRifu¥f'ARHffIlIfififf¥, M4PP P I r ; 0 00F4 009E YES DISPLAY "*RUN*" FOR ~ SECOND. 00FD YES DISPLAY "*RECV*" FOR ~ SECOND. YES 16 DISPLAY "*FMEM*II FOR ~ SECOND. 010F YES DISPLAY "*CHAD*" FOR ~ SECOND. 01F0 EXEC PGM 027B RECV PGR 03B7 FILL MEM 050B CHG ADR 0 RESET 32 ~ I",,<AG E ILIN~ 04 03 02 01 00 0, 05 • BO I SF - co I CF CEXE('. ADRJ _!- ,IP -I-- -I-- -I- (C He. DO REG) I OF 1P • ("D'Sp:.• ..::;::i:r~~~(2'/41J -:) (5( AN AU) (St:.AN I<BP -I- -I- -f- - EO I • EF FO I FF ~ .---+---~~--~ - -(E>tEC -~(WR'TE -I- -f-. PGMJ RI!t;, l-I...t'I'; V T~re •• n.a'TAJ" 2K MEMORY MAP - MP-4 KEYBOARD MONITOR PGM 33 ~ ~ (LO"-lG4T) 1 ADLhESS 20 ..,..,e CO 1--11------- ---"''2-'" . .------..-.- - - - f t - - :- -----0 -_._- 3 -""-;r 1--'--_·..... M·_· _. _ _ _ _ _ _ __ -~. --~..... E .•. .---- ... 7 ,.-~. .." ---.---- ~----- ------ ------~r_-~~-.-- 9 ~--.---ir-A- . ------ ------ '._--._ 5-._,. _._---6 --'---'- ..---------.M-" .-.. 7 ....... .. -. .. ~ ~."" s ··-.9··~· ~.~ ----tl (, ---'- --------~t----A-+- ---§'- -----ft- .,.Lf-.__- -~~ --.'"~-.~ c o '--E- ['. E ----- ~- . ~-~~.~~ CF 00 --r~ ----·2-· "1, "~~. ~ .-. --.-~~.. 4 .. - _.- --,. .. _-_ ..... -~5 ~.- ..... --. -----f+-~ ------ ..G .,-- -----.-- -~.~--~~. ---3 - ------- ----41---4 -,... -~ . . . . ....-,-, -~ ··~'--5'- ~,,~=-"-~~ ....-, ,..,.,.-.,..~-- - - - - - - 1------- - - - - - 6 i-:' ---.-.---- ( ~-,.-.-.,..,.. -a·~r---~~-·~~ 9'-------- '---A--..-'--.-'~-.• '!'~~ "--".--.-~~~ .. "'.-,~~~-~ ~....--,--r .. -.~~ -'-fr~ .~~.-~'~~- ::'· ...-:..:.~c.·~"{· ",.,..~;-;-,.; -_~~_:__:_-;._:7'-.-..: --.. . "-0"" .. . .." ,....,....,.,...,...,....-~- ..,.--..-------'-..-,-- - - - - -.. ·-[.). . E ,-. -.. . . . . . F""~· '" 7'r'" ---.~-. -~----....-....,.. ~~,..,........-.~ .--,-...----~ :,.~-.=, ..=--,--" ,-.;--. --..·2-:-r.-:---:"'"-:-~·-:--·· . . ,- .,-.,.. .3-.. ~"""7"-.....- ~.~.~-- r-,---~~--~- 4 --~--f-'-" .---".---.,,~ ---- ::::--1----._-- . --_._-~:- ~--.,.~ C .. -,.- ? .~-- -.-:-~~-~ ~"---.- ---.- ~~r·~:-~=.== 9 .----;.. ----•.- E __ .. --;. ".---.-. -611'C"":------,. __ ." . .--~-- ~- --~-.--- ---.... ~~.~- _ .. _ _ _ 0 ' _ ' ~ . --.,....-. ~ .' ___ ~-~~--~-~ . ~~~-f' _~~= =~ _______ .... 1 . __________ _ ._~ __""""""'l._-.- .,.: ..... ____.-e_... .....,•• ~ ''--- 4 S·~.·· , ..0,:-..... ..,.,""... -.---r---~--- ''''''1;.-.; ..- :....~.-.-.. ;-:':". == .-:. ::{ =:::: -,._.",. ". ,.,.. ., , """ .--.,-,,~,~.- ,.~, - ' - -... ~,,' "---'6-'. ....----.-,,-:". . .:. :.~-:~~~.~=~. ~- -~- ·..~f~. ~~~~--~.,-z·:_~~~· RAM VARIABLE MAP 34 -.-.. ~-.---. • ..,.-"t;;"_~::;-=-.::::=_~.,~':""_:" ...... -.--'.~'-:---:--''''' .• ---r·t· . ~=~:~ l.Q-1 ~~=~~===·--::-~-:·/: . -~~'-'~-. ... <..:~ ..;.~.:;.,;.. ----.. . -- - 7:-'3--: -~.-...,-:-;---;--.,.- -'"--.-,---' --.~.-.-,~ -'··-~4·-::- 7;' ... -:-:-:,;:-:-.• ; ; ; : - , - .-~.__ .;:.. ----:----:0,-.. - . - ':"'i~":"" .,-.-"'-'--~""""~.-~ ,._-.- ."--.-- -- .... -'---A --. ------- ---- 5 - .. _., ..... ---------,,~.~, . " ...... ,------_ . ----....,.-0-,.-.,.. --.----.,.- -- '.--'---"-:-'" "---'---, "<~-~,~",,,-., .. ",".,,, .. ,...... '-. -,.."- ,.-.,.-- & ···C·'" .. --.-----.. . . . --"""--~.'''' "-,-------' -~A" ..... _,.. .- ."-- '",--,--- -,...-- =.~,".-.--" ...._:_.":;1'::, r \.0 ~,.- ~...,.. .... >:--~.1'I:'";_n_,: ,:-~.-;-"!"'--"-:--;~"".- ------ --A'F"" .".= ... .. 80 . . -----. .~'"--, .. ' ___. . --~- ~·-~B~'·-· ---.--~. o ......~~ ---"'-"- ---.-.- -----_._- ... -..-.~,,-,-""~'=.'" ..t_ .,_. . . . . -, ",_.." ._.,'-.. -.___. "____ . . -.. .....-.. -..·.... -··0.. :=_=.~ - ,. . ,.'.~.-'--- ·-.~~i··· 'i ....,"-"'" """'F" o PRO-LOG CORPORATION PROGRAM ASSEMBLY FORM hPA'AiAD?Ge_~4EXhALAD:n;ID~tfR~14MA~ILN=ST=-R.T-~:---rM~NE~M~ON=ICT--:-==--~T!.!.IT!..!:L:!:..E...JM~O.r:4N1J'TIJ;(Oll)R~.-!M~P~-:'t LABEL IH 00 00 1 o Ie 2 00 31 50 3 2D 4 CD AO 5 6 8 9 08 A CD AB B C RESET NOP LDPI MODIFIER COMMENTS SP rN1TIALI~~ F 00 '0 1 ~-4~2 7 .. 3 -80 = Qf3'7~&'~ ~'TACI<.POINTER.. STACI< :rs J'p rF TRUf! GO ,0 ~OM 1. PAGE 08 J"S (soo 0" MSEC ~'O o C3 E DATE CHECKSUM Ob CA 00 7 INSTR. l;NU.6.klra: T 40 D'~PLAV VJS/SIL../TY. Go TO STAr.lT OF' MONITOR p ... _"'-_A STAR.T 00 RST C3 BD p-,~+ 2 _______~__ -_+-_______~_,~~_____________________~ 3 4 5 6 I RST .3 8 ~_~-=-9-+---_+- __'_____--+_ _-+_ _ _ _ _-+-_ _ _ _ _ _ _ '___ '____________- I 1---~..::::A=-+-_-+-_--_---1------1r--------+-------_ _ _ _- -___________ _ B C o E ~__~~F4-_4-----------~--~_______- - + - - -______ ---__ ----__ ---_--_________- 4 ~0~0=-~2=-04-_4-~R~S~T_4~ __~___~_________________________________________~ 1 2 3 J...----+-=2.=-4~C::...:3~......!..N~M~!_-.e~'O~~~BI____ 5+--~~.....!..P__+--"'-_ _ _ _ _--+------I-~_-.!D~'~S~P_L!LALL' Y~RL..J..!!!..E~ GG..!...,oI SoLI:T~·jE.'"-!.:R~C!Uo:IOI!.LI,N1..I'T--.L.J~'INL.LI'T___ S~ ON:L..-.--t 5 ~E (NM:t-SVC) OCCURRENCE OF At"JA~ NM,[ 6 05 7 2..8 RST 5 -+______________________________ __ ~_~~94-_4-------~--4_ _ _ _ _ _ _ _ A J...----+_~B~~__~_________~---+---------~~-----------------~----------------_1 2 C RST 5.S (80R~ ONLY} ~---~--'-+---------~----+-----------1----------------------------------------; E F 00 30 ~ RST ~ 2 . _.. - - I - - - - - - - - . - + - - - - \ - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - t ~---I---....!.. ---- . - ---'- -------+---+--------~------~-------------------_t 3 RST 4 5 c;.s (8085 ONL..V) 6 ~-~3~84--='C'-"3~-~R.SI--.-JI_-+~_.__ ._______.__ o 9 20 A 20 Ie USSR) EXECUTE , INTERRUPT ROU-r,NE. VE:CTORINC; :rUMP ENTJ;RED By USER INTO RAM. B 3c N RST 7.5 (8085 ONLeY) o E F '0000' 2m --il\i&&&Aiii=,..iiimMU&=WAJAiUUAWMAAMkWMaM: .;; " 4' I ;;; i ; " M\lPW PRO-LOG CORPORATION HEXADECIMAL PROGRAM ASSEMBLY FORM MNEMONIC TITLE DATE MODIFIER 00 4 1 CD 40 2 07 3 21 5E 00 0 4 5 START COMMENTS :rS - po> CLEAR AL.L CURSOR. r DI SPLAY "R.EAnY?'* S~GMl:NTS ICCLR CURS) - LDPI - HL RDYTBL ~~__6~O~E4-________~L~D~C~I+_~_______4-~~---__- -__---.----______- -____----~ ~-4__7~O~I~8+__________~_-__+-~~~~____+_-+_________________________________~ 8 LOeI IE ~-4_ _ 9~O_7~~ _ __________+-__- __~0~7~ A CD JA IS - B ~-+~c~OI I----+_ 0 - E F .:3 E OF D'3 0 DO D E Oll AO F P2 ~- 00 5 5 00 ~ 0 _____~-4_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _~ !CDISP N) _~~ OPA - RDYTBL 0F ~ KE YBOARD - CST- I' REAn,,'" nl~pL.AY o TARL.';. C5' 1 Cl A ~-4__2~C~4~__________~~-+__________~D 3 ______________________________~ LDA-r~________--+_ _+r___--"E!!Il.JNL1L.lA..... BLJ!!L.!.!!!E!!L-L:K!L.IoE __Y~8~QL.lA.L:lR...... D~C __O~LUIol[JML.:..!'~iJrSL-L-_---I D, ________________________________~ y ~_+~4+Bf ? ________________________________- - ; AO t;6 C3 -CS~+__--. ---+~(S~Pc......)L-----------------__f jp r DISPL.AY RE;.G/sTEI< CONTENTS ON (NMI-SVC) OCCURRENCE OF zBC NMr.. 5 7 8 ~ 9 A B NMI-Z80 ~E 05 C2. DS "BUSY" D~ CD B "RUSV u MONITOR IJ nl~PLA" TABLE. s .. -CS~ ~-+~C D~ ~D E -CST- r J"S REAl':) I<EYBOARD F()R I=UNCT/ON. QF 07 F E e PA"I .r S",,"-"-,H!;.;IF'=-"-T___? ___________________--t 1 14 ~----------_+_-----+_-'-'+~'-'-----~---~-----~~+u-=-~KE~¥I~~.--------__________~ -~- C~I_---------~-~:rP--+__...LN~·~""-----_+___I-------------------------------___I F 00 I--- 7 0 ._~ _9t; . _ _. ______-+-____-+-"'L.~W_"_'rR!......L.....lF___'IU"'_'N'_2.IC~+___+_.--NO. f"'urrlL' L.OWHR f:Uf\ll'TJON5. ~----f--~f-Q~~t ---- - - - - - - - - + -__ ~__ _ - ___________~1-------------------------_ _ _ _ ____t ----f__~c;:D-f__- - _________J".S_ r(-------~+YES REA£') KE:.Vg~AI:J[,\ FDR ._______ .P ___~J 8Q___ __ ______~_ 'R'::ll~ .1 ~EY) - - I UPPER FUNCTION .. 1-_______ ~--~----~ Q]- f---.. --- . . ._ - - - - - - FE. 9 .0 1---+---=8 o A CA B R.~ C 00 D FE II E F ell --=--- --------\-.-- ,. ------------------------------------i C.PAT - " EDT" ----f-- E CIT MEMORY? "EDT": KE.Y 10 . ._._ . __________ :r p _______~_________ ______ ______._________. _______________ .__ _ CPA:t - 'DEDIT -=-----+---f-.- II BPT" UBPT" J"P 36 - - - - - - - _ . _ - - - _.. _ - - - - - - - - - - - - - - - - - - - - - - - - = KEV II. l000012m PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR. ADR ADR 00 A 00 0 BE 1 00 2 FE 3 12 MNEMONIC -- CPAr J'p - 6 00 - 7 FE CPAI 8 13 - 9 CA :TP Z - DO - C FE CPAI D 15 2_ 3 4 s 6 r------- - --- --- "DSETR - IISNO" - DSENtl J'p 2 - M-OVE BL.oet< OF DATA? - -l<P-r--CA_ ---- II J"p --- "AJA" ___ f----- ----- -- EB A 00 B C3 0P C 00 00 E FE F 12 - 1 F4 2 00 3 FE 15 RE.SET "RUN" - DRUN -:TP FD_ 8 00 FE CPA! 9 I~ A B Of D FE E 17 RJ;:{'S=IVE DATA F"ROM PROM PGRf> CPA! 7 C "RUN"::: KE.Y 12" Z - CA CA OlP IIReV" - I, FJ...M ,/ 3P Z 'DfMEt1 - - CPA! J'p - 1 01 2 C~ r--- "Rev" i! nRECV - F _CA 00 80 OF ~. - 7 cn - 9 LB 0 A 01 " B ex> C~ C N D BE SF 01 21 F 2"8 - - ~ ~ .. - - - - - - - - r------ - - 3"P_ D8KPT T WAIT EOR VALID KEY + '-./ ... ---- -r' - - DISPL.AY "E:DIT"' GO E.DIT MI=MI'1QY. -" -(DLSP F)- •• w_ t--rEDrrMEM] I...DPI. - , -- - - - - - - - - - f------ f - - - - - - - IS__ - = CHANGE po",,_ru'M A~PRESSES ? "CHA" = KEY J7. 'ICHA n - 01 15. ElL-\, ME~Q&~ BL.Q~~ -WlKNOWN IIFL-M" I<~Y I~. RESET O'L --.--4 -_ _- --------- _-- ------- ----------- - - 1----- - - - r----r - - - 0_0. - -- -Bs t-----D E_D1I ______ r~DPI-- _HL____________ -6 -~t;---- r---'~..EllII_~ _______ 8 =KEY VALUE! l)CHAD :fP - 3 r----- E:XECU-r~ PRnr..~AM? .~ - 6 5 ~ '.....-/ LWR FUNe. CPA"! :TP - 4 WAIT FOR VALID KEY. T - 00 Ao CA I~. A DJUST ADDRESSES _AFTER MOVE? "AJA" = KEY 17. CEAr- ---------------- ----- e--~-- --~ DAJAD 8 = KEY IIMOV" DMCVE - FE I'-iOV" Z. - E2 Q9 --t---2.. CA D SEND 'DATA TO PROM PGR? IIsNtl" = I<~ V I ~ CPAI 17 9 "STR": K~'l 13. j!, 00 00 1=£ ADDRESS? 12. SET R~GISTERS? IISTR" B 1 = ~E~ "XAO" DEXAD A ~o ENTER EXECUTION XADu 1/ Ci D~ COMMENTS D8KPT CA CA 9 MODIFIER 4 E DATE TITLE INSTR LABEL 5 F PROGRAM ASSEMBLY FORM ---f-- HI... II ~ T BI<.PT" 'DISPLAY "BKPT'! GO SETA RR.I=AKPOINT. 37 J l000012m PRO-LOG CORPORATION HEXADECIMAL LINE PAGE I NSTA. AD!'! ADA LABEL 00 Co 01 CD 1 2 I~ 3 01 4 e~ 5 AE 6 01 2 C.7 D E F 00 1)0 2 1 35 ~-+ 4 cn 18 5 01 I 14 8 1)9 02 2 A ~A - DSETR - 'DSI!;ND 2 3F 3 4 C'D 6 18 7 01 8 C3 9 oct 04 A 21 EB - 'DM()V~ - L..pp:r :rs J"p - - DAJAD L'DPI -- 44 D 01 E Cb J"S 00 Fo 01 :fP 1 - la Ie... '3 LA - 2 __ 3104__ ~. F 4 ~- - ' - - 5 8 9 0 7 - A B FO 00 C 0 - J:o E F .... - 2 4I4F O. 'D/SPL.AY "E.)(An"· t':.l> £NTS;:R EXEC. JT/(")N Ah1'lC.cc:.c::.. .~ EXAn" <DISP F) , I[E}(EC ADR] HL. 1:>1 SPLAY "SETR"·. GO S~T RI;t;IST~~ VAll JES F"CR r::-~c..UT/aN. "SETR" (DISP F) 1--- (SEI BE~UI---L-_- .,. "OJ SPLAY II SEND" ~ (;0 SEND 'DATA TO P~(,)M PQCGI:2AMME!R. I, SENt>" (DISP F) -- (SEND PGRJ ~ ..,L "MOVE" '01 ~PL AV "MCVE'\' G() MOV~ A KLOCk' (,,)F" nATA J .~ COl SF r=) [MOVE DA"LAJ " HL "AJAD" DISPLAV "A~AD"'J A DDP':<::'C.J;:<;. ~ G{) ADJUST (D/SP 1=) , Ir An 111(;7 AtlR1 Lt>Elc _J:U...________ "RUN" .,. ~ .. b/SPL AV "RUN PRnr.,reAM. ~ u • G(") ~YECUTI= / J"S - J'p Ic~ 0 6'\ I'> ~-- ~:qL __DRL1~ 0 CD IA 6 HL II J'p C F ~ L DPi-- HL -- 01 5 [SET BI<PTJ 3'5 'F 02 2 :rs - - C"l 1 L.,[)PI J'p 0 F - - JB 00 E.o £ - cn D LDPI - J"p 01 B C (DISP F) J"S c.'! 7 E DEXAD 01 2_ 3 COMMENTS J"P IS 01 C3 CA 0 C 6 - en B DATE MODIFIER - - 01 9 A TITLE INSTR. :rS 30 8 PROGRAM ASSEMBLY FORM MNEMONIC 'DR~cV - LOP:! -- _(DISE E} I[EXEC. PGMJ -- -,. HL ., REC.V" 38 1), SPL.AY "REC'v'" GD r:;u:cJ:;JVE DATA &:'~CM PR-aM PRI")t;leAMMrp 1000012m PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR, ADR ADR 01 MNEMONIC LABEL J"S 2 18 01 3 C3 4 7B JP 02. 06 21 - 5 7 ~4 8 01 9 CD A IA 01 B C 0 E OF 01 - la 4 01 5 c.~ 6 08 7 '05 8 OE 9 0' - DC:HAD - ..-- - (DISPF) LDCI - J'S D JA 07 0' - CD 5 C~ 6 7 8 AA " FME.~' 9 c.~ ·D4 2B AA C C2 fr:lLL ME:Ml F D4 2 C5 D8 3 C, 4 C4_ 35 AA 1 6 - [,5 8 B 1>4 ·D2. AA 1>3 C C5 D CE C4 9 3A " N - Q) E .3 F AA G.O EllL. A 121 f'lr'c' I;'NTERE.D VAL.UE. l)rc;.PLAY I'CHAJ)'! (;0 (,,_#-lANG/; AL.L :TP AND LO?I PAGE AND LINt:; J·H "CHAD" A DD~'::;~SE:S W/TJ.lIAI A 'RL.()Ct< 01= ME;:MORY I i II' I DISPLAY' FUNC.TION NAM£ r::OR <3~ f2 APP ROle -&;('}('} MILLIS EcO_NDS. ,~ (DISP N) - (500 MS.fC~T: RiS "EDIT" (BL.ANK) ~ II' E~rT. ~ FUNCIIQ~ ~AME OISE~fJt. -- -CST- TABl.£. E 0 I - -~ "BKPT" - "*6 K P T I, E.)(AO" 1----'------- *' -~ IX ---_ .._----1--"-'- A 0 1/ SETR'I if D3 7 FMEM "; II' --~ ~E DO 30 AA II (DISP F) C5 C4 A DI SPL.AY Of:" ME:MORY . WITH -- J"S - en 4 . J"S 0(;, 5B 07 ~ II' HL i[CHG ADR] CD 2 (RECV PGR] - C 3 (DISP F) (DISP -F) LDEI F COMMENTS JP - DATE MODIFIER J"S 20 AS 2 LDPI IE. 1 0 03 21 3 E 01 J"p C'D_ B ~- C~ Bl 2 A ._. LbPI J"S - 1 o-".5q 1 01 I 01 DEMEM TITLE INSTR. 00 C'D 1 PROGRAM ASSEMBLY FORM 5 E T B. " SEN D" *5 E N ~~ "MOVE" -eST- -0 • 39 - - - - - - - - - - - _ .. _.. __.- PRO-LOG CORPORATION HEXADECIMAL LINE PAGE I Nf>TR. ADR ADR ~ 0 01 1 2 4 C5 AA Cl 8 CA CJ C.4 9 AA 7 -4 A 02 B D5 C.E C 0 AA E AO .4F 01 .50 1 2 f--- 3 ~---- 7 ~- I C.3 B CS C c:.1 S_F 01 ~o 1 2 3 ~ 4 A J A D R U N * I(Sp) IIREC.V" & I~ "FME:M" 1£ -- -IICJ.lAD" C4 AA J"S - cn 0, CD B L.AN I< - 9 C'D J"S (BLANK) - ~o B OGt - C IE;. LDfI D 00 CD INVALID 89_t- .2.. &7_ Fa A 4' B Of iCA ,"4 <» C N D 01 FEr II E c.2. F il n I SPLA YS. ,.. DISEL.At ADDRESS .d~Q DAT~ j INCREMENT TO NE)(T ADDRESS. ICDISP I-IL) - 2F DA 'B' START ADDRESS (lJ(I J"S 10 01 6 DIGIT , ~---- 1 - - - A 10 4 ENTE:R --~- - 5 -r- AND D'SPL....AY IT. :IS 04 cn __. _ - - - - - (ENTR 4~EX) - N#;.)(T ADR Wl----A "* IE (E.DIT MEM] LOE1: 05 - - - - - _~5 0' . ~ ,~ 8 0 ,* -CST- L DET 9 ..-- -- - 7 8 ----~=tM------· C 1~ -.-- .---~ 1M I 07 ~--- 1-. 'F : 1 7 2 I. E 6 71 - ~ sa F - .. "RUN" 5 E 01 ¥ iC~ A E 0 V - -~ <;~+~- 8 I CD _~9 AA D M "AJAD" 61CD iI COMMENTS D2. C5 CG DATE MODIFIER -CST- AA E~ AA 5 TITLE INSTR. 0' 4 6 MNEMONIC LABEL CD CF 3 5 PROGRAM ASSEMBLY FORM I (DIS? 2. I-Iex) , J"S - I(READ - BEAD .1 KEY) ,r CPAI I F" H ~)( I<. I=. Y. ENTJ;R NEW DATA - -_._..-._. ----- - I . "SST~~I<~ . - _.,.5;J________ . . ___ --.- 'l"P - ~Et8oABO. C.H~lll\~ r'-- -----. r -- ....- ---- ~-- -~'.f IF 'SSI"~LfST FORWARD _______ .___ -- t-N.E:.xT...At>..R_____ '__.h.__ . _IH R U MEMOSy. - - f----.---. --- CPAJ: J'p II VALID N~ - ------------_._._-_._--_._-- .... rr:-NOT "Bsr":: t<EY 'NVALJD 40 - I, B~T" I<~Y E; NTR. V, WAIT FCJR O( I PRO-LOG CORPORATION HEXADECIMAL PAGE LINE ADR ADR INSTR. 01 MNEMONIC LABEL 2B DCP 2 2'9 C3 ~~ "DCP 4 86 01 2B 5 Dc..P I-IL 9 03 - a3 E~ PSP Hl B II; LDET lOPI E OD - 20 J"S F 9 en 0 0' ~~~2_ '7D 3 ~---+----="-4-L~-.. ~ - ~~ ____ ~ 8 9 01 C4-f-__.... ___. 'E 0' (J.4LL _______ f-_. rI\J l __ 1-__ __ (DIS? "E") :rs __ . - ________ . IC.e.I-_.H~ ______ B C3 TP - cn 80 - J'S WAIT 0"1 FE 9 10 A C2 B AS c 01 D C~ 1 I; F D5 1----+___ :2 [SET BJ<PTJ 9 77 C3 - I(~FAD 1 KEY) iCPA:I - "ss,"= KEY 10 WAIT _._._ "SST" KEY. NZ E.X IT. .... £NTE.R AND b'SPLAY .4 Dlr-IT 'BREAkPOINT A""~&:7CC:;~. 11 T.L.a....-._ _ _ _ _ _ _ _- t ___. . ____ ~.IAD- _____ ._. ____.__ _ .__ r-.__ A::u.N 1T'\"",,---...;;a<:'~0t:3AL..I. v'---.J;.L. ·_·..___ _._-=__I: SA~___ .. - - - i l - - - - - - - - - - - - - - - - - - - t .....L _ H _ - r - - - - - .. __._._ ISTAN_. ~~_I_- 189 - - D7 _'-H.bL ____. . . .- - .. - - - - ._ ___ : ._ - l.1. -...1'~-.---------------____t REPLAC~ IT WITH RQ,:'AI(POINT ''''~TRI1CTIDN . . - - r . - - - - - - - - - - - - - - -...- - - - - - - - - t •... _ . . . . _... _______ .. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ . _ _RESET -1 - - - - - - - - - - - - - - - - - - - - - 1 T os t=O~ i(ENTR ~H~I£~~~)-+____________________________- ; 1~ iLDAN (HLl Or" GET ORIGINAL INSTRUCTIoN BYTE - F IN _~RD nlSPLAY WAIT LDE1. - BOO c 00 E AN "E" FROM RIGflT.' DISPLAY - -- . 6.20_ .-.-. A + (DISPLAY) ~ _____ .. ~ ..3E-f--.. __ .-~=~ -=~-_--- L.·DAl:- ~~===~=_= o -----------'--i - ~----+---.~ -OB..-f-. b7 _ _ _ _ _ _~ :rs Q'--f- 8 'DISPL.AY AN liE" RTS O~ ~___ .......!..._ZE. ~_-_ .-.~1-34 - 1--- ... jp Bo Cb 1 # - 7 IAE ACCE.PTli.b .___ .. _.. ::-.. INCREMErJTTQ NEXT ADPRESSA-_ NEXT ADR .TS 01 6 I\IOT ERROR liE" NEXT TO DA'TA. lbD! 'D 5 rl=' ..~t... . _ _ _ _ _ _ _ _ _ _ _ _ (D,SP "EII) L'OEI - 8 1-_.__ ~p ~tJ a3 4 01 1 1 A 3 DECREMENT TO CL1~~ENT ADDRf'SS .._.. _. ____ . __SIAN.. (lfJ..J._____ __ I---~------ 8.1;_____ .__. ____ c ~4 D 01 ~E IE F 02 Ao 1(; 1 C5 2 CD A -~ ~ STORI;' l\Jr:;w 'DATA AT CURRENT PkJ? _ lU.... ________ f----.ADj)~~R3t..I!~E.......·c;;.tL.lJ.c:;.•'____ _ _ _ _ _ _ _ __ i -..~JL ---_ ._ f---.-- ... _6__ LIS. BACk,\A/AQf) HL ENTR 8UFR+2 LnA r---- ~---+-----'-54-1.1.-f-- SST" KEV asl - 2' 'I TI-4~1J ME"MCRY. "'....J A D rr: .. I NEXT ADR - ciol 01 ~ 1-4 L ~L J'p IC~NG DATA DATE COMMENTS - 1 3 TITLE MODIFIER INSTR. 01 Ao PROGRAM ASSEMBLY FORM t)'SPI..AV Al\ID IF nE~'Rt;'D I(REt; 'n/JMP) 41 '0000' 2m AN _"_M4=_&lIiIiill;:&I . PROGRAM ASSEMBLY FORM PRO-LOG CORPORATION HEXADECIMAL LINE PAGE I NSTR. ADR ADR Of Co E3 HL Hl F5 DCP PSP AI!" LOAD 4 3A OB 20 -.. r.SAVE 5 6 77 STAN (HL} 7 F'J 8 S3 At: Hi 9 c.~ PI.P Xc..PT RTS 28 3 2A _[EXEC AOR] Ll)PD C D E F 'Do 1 (;0 O~ 2 CO 3 AS 0' 6 O~ 7 0" 22 B _OF 20 ZI C -4~ A - L.'DPI 01 OE 0, L'DCI F 0 IE L.O.£I 1 0(; 2 leD - - J"S 3 IA 4 07 en -- WAIT RUN JS 7 07 - 8 FE CPAI: 9 12 A C2 B C 1:5 01 D CD E 58 F ()7 6 Bo - JP - - 2A IrEXEC OF 2 20 6 - PGMJ LDPD DE:CRE"ME'NT Rr:;TLJRN 0 R.ESTOJ:2~ CI2.It:;.NAL AD'[)RES~ INSTRUCTJalooJ aYT';:. , p~t)r..PAM J:!. '1I.r:;rl JTION •. C.ONiINUE EXiT. Hi r" DISPLAY LAST EXECUTIoN TAR.T A otsJ:2~~S FOR 1 SECOND S RIJNA~ ~ _~2. (OlSP HL) (, SEC .6.T) ~, r" ( ENTR 4 a.. EX) - 8 9 23 0 A 2CJ " B SS C FI D E 2A 2S F 20 - STA~T A~hr:u::;c:::c; looH ~I , JNA,,", I-IL r" 01 SPL.A" ". RUN. I, iC RUNil ~, <ZS" _(DISP N1 ",. WAIT F'OR.. "RUN' KEY. (READ ~ KEY) "RUN"-:- KEY alNi! WAIT RUN ~, T BLANK 'DlS~LAYS. (SLoAN K) '" 0,. I-tL RUNAD WL ".,. GET CURRENT EXECUTION STAR"L A 'Dt"l2F.'SS 'SAVE" IT ON STAC.K. BLANk' LED'S' l),SABLE J<EVB'OARD. oJ <2J<2J OPA - L.DPI> - or- HL PlP M L.nPD J.lL RDATA +a L.OA}") REGI~ 1-.t:1<~ WITH I~/T/AL. DATA. R.DATA lolL - ~, Da5 p~p - - - - - - ENTER AND l).SPLAV NEW 4-01t;IT L.DAI 00 D3 .... - .. PSP - ----.---.------~---.-- - ES 3c 'DO ZA 7 T + JS 1 Fo 5 - - E 4 N STP'D D 3 ~ J'S .. - - 1:5 01 - - en 9 E L.DEI J'S - COMMENTS JS 4 5 8 01 - OF 20 IE 02CO B DATE TITLE MODIFIER INSTR. XCPT 1 2 CA 01 MNEMONIC LABEL 42 O( 1OOOO12m PRO-LOG CORPORATION HEXADECIMAL LINE PAGE I NSTR. ADR ADR 02. ~. LABEL 1 CI DATE MODIFIER PSP PLP L1)PD 2 2A 3 27 4 5 20 EB XCP 6 L'DPD 8 2A 29 20 9 C9 RTS 7 TITLE INSTR. £5 00 PROGRAM ASSEMBLY FORM MNEMONIC COMMENTS HL Be. HL - RDATA +-4 ~L 'DE HL R'DATA - - ~ ,~ GET So TAR T A [') DRE'SS' GO EXECUTE J A B C D E F o I! 1 2 3 I f--- rSET_RE.GJ LOCI 4 5 OE 6 2( 5J:'_ r-----02. 7 -8 9 - --_._---_. 07 B el) C IA 07 E E~ F 21 02 20 2C 1 2.0 2 ~ -- ~- PSP LDPI --- - - l..'DBI 9 J"S A IA 01 E F -- 0 IV I-IL - - B 02 IC2 o 34 E 02 3F 05 COUNT DATA ItJC52EMEtJT TO NAME NE.~T R~GISTE~ DECREMENT '-0 NEXT AunJot',...~ THAT CONTAINS REGISTER DATA. aft;;' (nlsP 2UEX) ~r 'po J"S CPAI C (DISP N) DcP 1='E. 14~ 'r" 'r 07 A r:lE{;ISTER 1r 'r" 7 '0 DISPLAY REGISTER NAME AND HL 6 bA .,. ~L - 9 5E'T XCPT DCP - CD " 00 - = B. T • HI :rs ell 2_ ~f£_ - 3 ~7_ --_ .. 3_4 .liar "SST" 5 AO 8 ~, L'De:I 30 100 1 RDATA+ 9 03 LDfI £3 2B 2B IE I-IL ~L - IE:. B -- (2$2 03 CD C -- I-- (OI5P N) - 7 L.E~T 3 DISPLA.YS 07 "8 8 0 02- 02 1<£(;" IN --- - 08 2.4 E3 NEXT RDATA XC.PT 5 OE L..DCI 3 6 TABL J"S - 1 HL -- ~DISP - -LDE1 - 1 (1}3 LDPI 'E A D - 0'3 DISPLAY :" - 1 'r- - -- t(E:LIO - ---'--------------- ~~p--- I'~"= -------- II=' HEX. KEY GO CHANGE DATA. '----'- CI ICHNG RDATA 'J ------ -------------- 1----'-,.. N2 NOT"SSr" -- I--N.XI_ BcoUNT R~AD kl="BOAfib I(READ 1 kEY) -- " DCB T CTI-IERWISE WAIT r:OR "SST" K2V 'Do BTIMES. -- 43 C--'--;k\IiGGiCM.d1iiW"UMiiW,;;;,RidWMJJ/WIhlMGiJIlilt'MAtJlkj,MhlJdmil;b4fiitJMiTh#JmiAMiiiilMii=;:g:glJiiMbMi, QQ, 1,#4 ;;; 4 : 4# :0 ;« . Xi 22fffI4f'\Pf%21fi42E4H -. PRO-LOG CORPORATION HEXADECIMAL LINE PAGE I NSTR. ADA ADA 02 14 -4 'J'p C2. 24 2 02 3 C3 :rp 4 00 5 00 2'8 CHNG RDATA DCP C~ PSP OJ LDPi - 8 A 0'3 03 8 E5 C IE D 01 E 2.1 9 F D - 1 2 3 '--/ HL Be. ENTER AND DIsPLAY NEW DATA I=OR CLJ~RJ;;NTLV DISPLAYED R E.G I STE"R. Be O~ - 03 PSP tOEI HL LDPI J..lL - ¢I - ENTR BUFRt2 - J'S - ~ENTR .ctHEX')fo14 - _._- ~-~LJJ:i __ . _______ ~_OA _ -~r_EL- _. r---.-,-----~-- 71_ _ __ r---L-~ a3_ 8 I A 8 02 Sc - -¥N~ -~~ __________lsTAN (1-11.) ---~ -CST- ------ R BD = SD c~f = 0 0 ca ec. 4 BD : E. 7 CoS 'Bt> C2. 8 SD :: 9 C3 C 8 BP c.~ E = , SO 70 Be 02. - JS -----. ~." 81 A 02. \S\ 78 Q) Cb C 1\1 D 02- E CD F ec B5 .. - T 1--- SEND AD'DRE'SS INFO. TO PGMR SEND I>ATA FIEL.D TO PGMR. L -- -------- ~=~----- (A ~t:V PG.R] PROGRAMMER THE..RE INTERI-OCl<. . r-- - .-- - -.. _ -... -. - r--- -, .- __ ~J. 23_ - --- -. . .. .-.. 7 '03 - - - ------_. - - -- .. -.-. ----_._-9 " I - (SEND ADR) ... - _._ ----_._------- _ - - - - - - - -,.. ~~_?- ---"{WR I TE rUJA} ---.. IF AC.TIVAT~ ICCHK PGMR) C:D --.-.- -r- - 2 C~ = J'S 1 8 = F -CST- CD [SEND PGRJ J O{ A ~F =-=-u& IABLE. = SD D "REG" AND REG NAME D/SPLAV B ct C ----- L. 5 A .. ) -- r----- C1 6 0 ---- f-- - __ lNXLRCOUNI. E 3 - --~- ~- r - - - r------ E G H 2 I ----- --~. 02 ROIsP TAB! C5 1 02 L.. ____ _____ ________ PJ....p _; Hl..-_____ D F , 02 c., C3 3F 9 DC + RESE.T - en L1 O~ ~ T - 00 COMMENTS N2 NEXT RDATA - 20 DATE TITLE MODIFIER INSTA. 0 7 1°2 LABEL 1 6 PROGRAM ASSEM8L Y FORM MNEMONIC --.- _H __ __ UNLOC.K _f?_GR_ ---_._----_...... --_.- _ .. IS - -jS - t) j bE.ACT"/ATE' INTERLOC~.. -----------.. - - - __ ~ (C~I< P&MR ACTIVATE; T -_._----- - - - TI-IER~ TNT';'RL.DCK " II=" PROGRAMMER SEND ADDRESS INr:o. TO PGMR (SEND ADR) 44 l000012m O( PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR. ADR ADR O~ 8 0 02. 1 C1) 3 84 - .51 - r1l3 OPA 8 50 9 C3 JP -.... 00 00 D'R (CUI< PGMR) IPA ,qC E _51 FE F .I='F D ~o CA 1 ~D 4 5 6 ~- OS CA 90 - - - rQ~ 8 3E - 7 9 02 D3 B 51 C C~ ~D OE E OB F IE Ao 01 1 3 21 AD 02. 4 CD 5 6 IA 07 7 'CD 2 8 1--- 02 B - ' -..- . _.. - PO ===--==r~~s ET 2(J OPA - RTS --c--- INTERl-OCK'" LOW~ _ ___ .. ___ t._ 5.1 EXITL- .__ . D--.l.5.e.b.A~~~GM R ! " LDCI No P.G.MR. IT _TURNED oN? ! _- 1 - - - _ . _ - - - rs I _LDA! - ~8 LD£I ------_.- - -- - ...!l1~ ______ ___ HL - II - J"~_ - . .TS __ ----"-_.----- UNO PGM~III ---'- ... LDPI 00-- - - - _.. C1 . QJ8 I 2_o.....eG.t1.~ -1. - !----_. C 0 , I :r~ 00 1 ~ NOP~~ - B AO FF ANAl ---- 0, F pRnf.:k'AMMER THeRE '? .51 - C3 ~E 4- .J ,. IS \. - 9 CF RESET J'p A E IN-rERLOC I< CPAI Aa AD 'D~ACTJVATE I"'" 5~ - 20 A pGMR 51 - 2_ .Q~_ --3 !--- RECE.IVE.. 'DATA f='1 ElD I=ROM DATA) OPA 7 B -- ~ .,. 6 A COMMENTS MODIFIER JS 1)3 5 DATE TITLE INSTR. LABEL - lLREAD -'18 - -03 AF" UNl.OCK P'GR .cJ...AC 2 02 PROGRAM ASSEMBLY FORM MNEMONIC - --1--- N..QP..-G.t1.Rl~ f---.r--r---- YD/SEN) -- 1---_ .. f--. , -.--- _._----.- [-._- J"p RESET __. '-- .. TO ENHANCE t------ r--' . - OEL~'i 1 SECOND VISIBILITY I"'" KiSEC6I1_-=-~ ---- + J '---" _-------_._-- _ . _ - - ...N_. ___"MQ..,EGMB.!" OISEL.A~ IA8l-e. 0 (Sf -CST- -- P - - - - - - - - ._- -_. __ ._--------_.._. - - - - - ~--- -_ 2 CD .... _.- f - - . - - - - - - r - - - - -.---.------t-; M --·--..----.. t~ ... ----- 3 4 85 ~. - r-R-~ A' IE 6 .05 7 ..cD_ 8 Q~ 9 0' ._._--. - ---- ~, -- -CST(SEND ADR) LDcI - JS -.. _-._._-------_._- - r-----.-... 0 A 22 SI..Qll 6\ B II 00 ---_.--- C I\) D CD E SB - F 20 0, - - .,.. I ¢5 PGM~ ST.A RT A t:>[)~ ESS (E.~R~H~& --_.- - _.. HL CUR ADR ~ ,.. J"S - E I\J T E Ii?ANDOlS PL~ 4 -D..J G' T i(BLANK) "BLANk' TlISPLAY. ~ 45 100001zm PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR. ADR ADR LABEL INSTR. 02 CO JE 1 05 2 (ENTR 5 Z2 6 I~ 8 cn .J~ 9 SR A Oi - B IE Li)EI C lOS D CD E O~ ot, z.e 02. :Do 1 15 2 20 '03 4 - ;rs - STPD - - OB -ADR L..INE HI l:PA 51 7 C2 :IP 8 D3 9 - A 02 2.1 B 12 - - LDPl: - 20 CD -- F 02 .2.1 L"OPI 20 - - 14 en E& J"S 4 5 02. IPA - e6 7 5J FE 9 ~c A CA B - "DB ADR LINE LO 8 02 D Cq E.E en F CO ,r -,.. 2C IADR LINE UI ~ HL l-4L - J"p - RRA RRA ICD C D OE 103 E 7E F n~ I'J F LDAN RRA 2ND HALF 01= B Q) - 6 A WAIT t=nR AD[)~ESS if L.INE TO Gt"} "-,, c:;H. ~ ~c ~ , IADR L.fNE LO EXIT. RT5 I(WRITE. ADR} :IS 7 0 .. Ir . - 6' O~ _ - 2ND 9 -- (WRITE ADR) FE 8 PROM F'/~'-O TO PROGRAMM£R. ENDAbR+J 2 - AOORESSE~ I(WRITE AOfU r. OF OF D3 50 TRANSFER I" CUR ADR +1 J'p OF GO LOW. N~ O~ 5 WAIT I="OR ADrH:)J:"<:'C;" LINE . 0 51 CA 71: 5TARr ADnR~SS Hl 1 oa SYSTEM SST AOR Fa 3 ,J.A. P (E NTR 4 HEX) - 1=4 E.NTER AN D DISPLAY 4-D/GIT ~.5 CPA'! E" C , - J""S EE 3 O~ CPAr E 2 ADDRE~C:;. HL (RLA~~} FE 1 AND DISPLAY ~-D/G/T .q HEX) - 2C 0 ENi~R PGMR. E.ND - 5 D ,.. I£ND ADR 6 C - - COMMENTS J"S c.l:) 0" 22 02 <255 STPD - F a2. E - 0' 7 1--. DATE TITLE MODIFIER L'DEI 4 3 PROGRAM ASSEMBLY FORM MNEMONIC (MODE l I" ~ALF!' +.10 IF MqKO NOT p~ESENr. SEND QNE 'DLGI T OJ: PAGE A T'}J")Q':c:.c. 41, -,... (HL) WRITE; 2 "'DIGIT PAGE ADDRESS., THE.N 2--i5'(;IT LINE Al:)DRI!~~ TO r.R--'r;JI1.MMER' RRA OPA - 50 - ( XFE~) :rs - +10 L..'DAN OPA o~ (HL) 46 --- ..Mc)nE";;-L.:'NE SE T L.OW· SET I-OOP COUHT ==2. :(c}' CHEC.K ':~R. M~5It). *2 ~---~ - ...... _._._._ ... 1000012m PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR. ADR ADR 03 00 50 1 CD • Ie 2 OE 3 03 LABEL INSTR. - (XFER) 2B DCP 6 01) C2. J"p 7 F4 02 C~ Dec - DATE COMMENTS 50 4 9 TITLE MODIFIER - :rS 5 8 PROGRAM ASSEMBLY FORM MNEMONIC HL N2 2ND HAL.F' - RTS EXIT. A B C D OE 'DB (XFER) :IPA - 51 I 0 IF 1 DA F 0.3 2 OE 3 03 3E 4 5 EO 6 D3 5J 7 , 8 'DB 9 51 A IF D2 B - ~o 6 tD~ 7 00 - CD 9 B C 13 0 20 -- LDPD - EB ~p L..DPD 2 E5._ ZA_ - __ ESE -.-_ .. 15 20 LDPD -- 9 _50. leD A " B OE 03 00 C f'J £3 0 ICD E Be F 0'3 a_s HL -------.-.- II BU-SY" -- ------ - - - - - _ . _ - - - ...._ - - - - - - - ~J"S-·- - ---~-- CiELA'DOBES5ES SEI UP ___ .£08 DAIA IRA~SEE.e. HL --- foiL DE. loll. HL. -_._- ----- - HI.. -- ---- -- -- _.eli Ll . ---- . -.. . -- ~ .- -- GET NEXT DATA BYTE. TRANSFER IT TO PROGRAMME:R: _- - - - - _.. __ ... _-_._---------_ . .. -~-----_.. _........_ . _ - - - - - - (XFER) _.. _-- f- .. - - - . - - - - - - - - ---- XCPT HL -- ---- ~ Ir '-';.. J'S - .. SST ADR - - D IS f?LAt~JJS't': CUR ADR' ._3_.? 7E._ .WR.IT/; NXI_ .LOA~ 7 D3 OPA ~ E xTt. -----_--.- E.ND ADR 2A TeA~SEE8~ HIGlL -- - - - f - - . - - - . - - - - . - 51 [(DLSPAAic) F 3 SEr 3"5 E 0 - - .. ~ra RTS 5 IB 07 2A - r----------- ~J?~ ? c.o ~ - C~ 8 YES. S~T TRANSFER'i< L..OW, RESPONSe:~ L.OW RESP 1-11 IE (WRITE DATA) LDEr 05 ----tDP.L 21 5 - 51 F 4 -"'-'-' - RRAC J'p 03 30 II 1 20 r-----.-- 51 IPA RESP HI l..t>AI A r--- - ~ OPA 3E 4 . E0 E 2.3 CI (XFER) - D 2 ? r ~DAI -- 03 2,0 03 1 51 - RRAC :1P 18 03 C RESPONSEi( i-lIGH SI L.AST nATA TRANSFERRE.D? I(CUK E.ND) 47 tOOOO12m PRO-LOG HEXADECIMAL LINE PAGE INSTA. ADA ADR 03 40 CA 1 4~ J"p - HL 4 5 E3 )(CPT HL 6 C3 4B 3' 03 - Eo' END WRIT'; IE. RTS (READ DATA) iLD~T C~ 05 - D 21 L'DP7. E ~" 00 ~o IB 2 07 3 2A 4 13 5 20 6 EB 7 2A II 2(J 9 C E5 2.A IS D 20 A B E ~E F 20 D3 ~ 0 1 (i2 3 IF ])A 6 7 t:..2. 03 8 3E 9 Ao A D3 El <;c DB D 51 IF D2 E 1 C:.C 03 2 n~ 3 52 77 0 4 5 XCP iL'DPD - PSP LDPD - - - READ NYT - JP - - RSP HIGH '2. - RRAC :JP - - G'- B 00 C D3 51 - D E~ E CD F .~ DISPLAY }-IL .. BUSY" I(D/SP 4ASC) ~ #-IL ... GET A END ADR HL I-lL Be -~------~-~-----'-'----- - ~~T IJP TRANc.F~R CLJR ADR J-.lL --I- I-IL , SST ADR ~L MODEie' LINE HI GU. O~ 2.0 .51 =r= ~~ RESPQN~E i( I-J IGJ..i? 51 CI READ NXT ~ YES. AD SEJ: IB.8~SEEl?* LOW. 1---- , 51 -r- R ESPOt\lSE· LOW? 51 co RSP I-IIGH ~ .. - T S2 (HL) XCPT J"S Dr'\QF~"ES FOR. DA TA DE (I-IL) OPA - "BUSY" 05 STAN LDA! 2.0 EXIT. CPAN O'! A , HL IPA JS f'oJE)(T DATA ~~T IPA 8 3E WRITE OPA - o~ rNCr<r;.M~NT ADnR~SSJ;.S WRITE ~ t.DAl - 9 NO, ~ IPA RRAC BE 0 HL OPA 61C4 7 ~ -- LDAI 51 4 F ILDPD - 51 DB 5 B jS - en 1 8 N PLP C F - l! ICP Iep J"p COMMENTS END WRITE O~ 23 DATE MODIFIER 23 A 0.3 7 TITLE INSTA. LABEL 2 49 03 PROGRAM ASSEMBLY FORM MNEMONIC 3 7 8 03 CORP~RATION N~ (BAJ) RAM) YES. R';"At> DATA BYTE FROM eRQ6RAMMEB., STOR~ IT IN RAM I F' NeT AC.C.~"""'L1 RV RAM DJS.PLAV ADDRESS ANf'l nArA AT RAD L.aCATION ,. SET TRAN~F~R'" J.llGI-I o~ 20 51 ~ HL "r- CUR PR~MR AllR =I;NI) PRr~MR Anl<? (C 1-1 t( EN D) LI8 1OOOO12m PRO-LOG CORPORATION HEXADECIMAL MNEMONI9-r-------:--:-==:_~...!..!TI~TL::!:.E------__::::_:::_:_::_=:_c=_--~DA~T~E-----___I LABEL 03 8 ~. INSTR. MODIFIER COMMENTS ____________ ~________________________ ~ ________________________ 03 0 PROGRAM ASSEMBLY FORM ------------4 :li ~--=~-~~ ~~~=~~~~REA~--~±~'~~~~~-:__=______~._._._= ~ 4 f---------------------- J_C P______ -----Hb.----------r_-j-- _NO--'-_~_N_C~___ ~~ 1___----+---------=--5. E 3 ____________________ XCe:L 1----_-I-----.::.6-+--.z..3_f-________I'_E _ _____Hl. _____________ r-- ________________________ ._ _ _ _ _ _ _ _ _----1 __HL... ________ ________._ .____.____ _ . _ __ 7 C~_f___---------.---..J:P-- .---.---.-----------t=1-READ---~EXT DATA, 8 ~2 _ B.EAtLNXT ~------------------------___4 9 03 1--__+--~=---4_------- - - - - - - - . - - -.--------~-~---------.--- . - - - - - - - - - - - - - - - - - - _ _ _ _ f _-=-______ 8 A E' B C. ~ ~RE'AD ~ ___ ~~ ____________________ .______.___. _ _ _ _ _~ R TS .---I--=ECLX..l'-.L.IT..LL• _ _ _ __ _bDL~~ ___ r_~UBIRACT~--END AOJL-CURADR (DE-I·H,J o BD _________ CPA.. __ .~-----------t---__li__----------.--.-.----------___4 I----+-----..::E~~C~()~ ------.-LR~- -~----fE~ __ cuR;tEND ~ 2=0 Bc 7B (CHJceND) F 03 ~ 0 7A L..DA Be_ c.PA D H _______ _________~ ~-~~ _--,--- _RI~ ________________EX1.L ___ lF__C t.!R ~_E1iI2__~. __-=--_~~::Q_ _ _ _ _ _ _ _ _~ 1----~....L....:::..q2__+_.D.~ (RAO&AM1_ PSP _PE; ~ D LS£hAY_----A.QDRESS_ (')1= BAD RAM 3 cn --I--.J~t___-------t___ -.k.QcAILON...________._ _ _ _.__--I 1------4 58 ___________-:_____ ~-aL.Am<-l-- ______ 1 -_____________ - - - - - - - - - - - - - - - - - - - - . 4 1 C~ 5 07 6 IE 9 --f----=------ o=--"4---'-----_ _ _------+_ ______ -~f____------.-- 04 7 8 -=_1-_______. _.________ _ I 1 - - - -_ _ ._ _ _ _ _ _ _ . _ _ _ _ .__ ._ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ L D E'-"'I,--+ ____.__--+-_---f-________________._ _ _ _ _ _ _---1 l- c ti ~o_+-_ ___+__ - - . - - - - - ----------------------i _ _--+--______ __ - ( D lS"-P--"Hc.L!L..::.oJ'--_+--_--+ _______ .______________________ _ ~~~A~O~,~-------f_----~------~-~1----------------------~ B IE _ tDEI DLSPLAi~ ________________I 1--__+-c~<1J=--~=___t-------+_-__+---'~~~--------------~ I-----+~D=__+_'E""'".!i~--~---- _-+-........ p-""S-L..P I---+---=--:4-!~-.J.~IIdL-I-------------~s- __.H~___ ~ r-------- _. ______________ . __________________ _ (DISP -Z HEX) - ------------------- ~O~I.oo.L...+ ~~Ao~O~17-~---.----.- _____ f-- ----=------- f--- - - - - - - . - - ---~'------ - - - - - - - - - - - - - - - . - . - - - - - - - - - - - - - - - - - - - 4 1___-+-L.L....:A1~C!!!..ll:n~ +_...J.w_lU'.Ar:1.J'____'T~ T J5 ;-\ __~~_~WALT FO R. ST" 1<' E' V TO ~__+-2~aoo!..:,O~---.---I---- I(READ 1 KEY) W.E~Dc..&;EJ:p:..£Rue.....s;z..,;s;u;E::...DL.L!._,_ _ _ _ _ _ _ _ _--1 's __ 3 07 4 FE CPAl 5 10 I---~--I-----'<-=----_+__-------I__---.--- f___ ---t--------------.-----------I "SST"= KEy 1/\ .--r---------------.. - - - - - - - - - - - - - - - - - - ; _ ____ ._t....!.\r! ~~~~---~--;_.---------------------------~ ,--------e-----=--WAIT =--~..I----r_-----~-----------------------__f 6 C2 7 A 9 C)) ---1. j5 ______________________ t--____ A .5E --+~ ~-+-8'___+_"O~,3-------..... _______________ B 07 f - - - - - - - . - - - - - - I -.. ---- 11r -----------------4 ._________ 12LSJ?~_~~ AGAIN, .r"_____ (BLANK) _ __ I--------- -----------f _ _ _ _ _~ c IE LbET I----+-----=D-+-Q=~f_--- ________ _ ~__ ~Qj L~~_~- ___._________._._____________1 E 2' ____ ~.J:- HL _______ 1 - _ - - - - - - - - - - - - - - - - - - - - - - - - - - . 4 F (;~ .. BUSY" 0.3 IB 0 00 !--=-0I0L.-f~~+-'~__+_-----__+_--_c:_.--+-------~---I'--------.-.---------------~ 1 en J'S ~-4'----2=4~'~B~----------1__ 3 ICDISP 4Ascyf--- t - - - - - - - - -__- __.- _ _ _ _ _ _ _ _ _----1 07 ~--------l--.:...-:+~IooL~. e--~==~....:.rE~-jf~--~=-== ~r _~=::::.::::---_====-_ ------------.4 ~ • a 6 7 Ic~ RTS IE YFiJ..L t1J;MJ_-'=IlE_L~~-- f---->--.-~Jos ~ ~5___ - 9 EXIT. r- _______________ _____ cn _ £NTE.R~DK;'T START ADDRES~ _~..ND__DI SPL.Ay_1L-_________--I ___ ~5-f____---.---_,____t_--+__------.--- . - - - - - - - - - - - - i I----0~~A__+_O~'~--------- (ENTR4HE~ 0' ~OO-+-~c~4~2~a~·~-------_-_~~~S·~iT~~IP-'~D~--~H~~L--_+-+_-----------------------1 G' B I---N~~D~/~I~------~i___-~CUR-A.D~R~I___~--------------------~ E F 120 C 1) --t-- j5 T 49 'BLAtJk' 'DlSPLA'V. 1000012m PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR. ADR AQJi MNEMONIC LABEL 03 CO SE 1 C~ 2 I.E 3 [05 7 0' 22 8 L3 6 J~ - A B C o~ D LE - - ... Ll2EL LDCI L"DPL - OE.. F o~ ~o 05 1 2 21 EF 3 03 - 4 ell J"~ 5 IA 6 07 - 7 IE 8 nl 9 CD A 00 B 0-'- - :rs - - ~5 1.'D8 D ~ :1"5 SB F 07 - - 03 Eo IE 1 05 2 21 3 4 I - L'DP~ <;;~ - 00 en J5 6 18 7 o~ 8 2A - ~ I'" I, 2 :J.a n N~T WRITE BE 9_2. 4 0-.3 6 - en I--IL "DATA?" --'nl~p N) r- - CA 9 0 A 00 00 G\ B C 2.3 C3 D };£ E 03 F _~ J..l£X VAL.UE. (ENTR ZHEX) L ~E -- (BLANt<) ~ O~ , DISPLAY I'BUSY" (/>5 HL IIBUSY" (DISP -4ASC.) ,~ -. Hl SET UP ADDRJ;5SES IO Et.JD ADR 'FILL " -~ (HL) WRIT,;' U~ER l£~O""" ACCE.PTED --'!lLSPLAY ADbRE:5;C; AND DA"'TA OF BAD MEMORY LOCATION. ~ .Js "'I"" ~, ~ "DATA?" -CST'" LE so .., -I"" Ex,-r. , ~~~£T o~ .,..NQ. INCREMENT ADDRESS AND 3E - CUR ADk> - E:ND ADR? (CHI< END) --IC..E ML - ENTERE.D VALJ.JF- INTO RAM. - -- l'-1Et-1l"l~Y. CUR ADR S~ J'p IT. ElAl'iK "DISPLAY -r- B - 70Z 8 ENTER AND DISPLA'I _Z-'OIGIT ~I LDA - EC II DATA?" 05 CPAhL .(HL) Nil JS [(BAD RAM) -.CA 3 5 - 'DISPLAY fJ7 XCE HL DE LDPD HL ... 1 - BLANK DJSPLAY. 2A EE 20 , (BLANK) 2t2 03 Fo IV ADR A EF (X) E~D )3 E o~ l(ENTR 4HEX"' 9 D 4-'DIGIT EllD. ADDRESS AND DISPl.AV. L'D~ -... B ENTeR ¢5 Ldlil 5 C .. LJlE_I C E LBLAN k) ~ 07 E COMMENTS SJ:eJl HL za en SA 9 - DATE MODIFIER LDE'I O~ 5 TITLE INSTR. - en 4 PROGRAM ASSEMBLY FORM EIL.L + NXT WRITE! NEXT L.OCAT/ON. ~ D 50 "DATA?' IIDJSPLAY TABLE. .. lOOOO12m PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR. ADR ADR 01 -C~T- A 2 C.I I I T A BF 4 IE 5 6 05 et> 7 0<:) 9 0' 22. A 15 B 20 c cn D 5R E 07 F IE 05 , 0 2 3 4 5 6 o 0, 0' 22 17 20 7 cn 8 SB 9 07 A IE B C 05 CD D o_~ 2 F 22 0 19 1 20 2 21 3 ~~ 4 6 00 IE 05 7 Cb 5 8 IB 9 01 A 2A B IS c 20 EB D F 2A 11 .30 E JS - - - STPD :rs L'DEI ':rs - - STPD - - - - L'DPI - T (SL AN K) I-lL ~ - :rS - , b ISPL A'I .. RUSV" I(DISP 4ASC) LDPD -- ~ ~L )(CP_ HL L..'DPD J-IL. 41= L."DC LDA A H tl seA 5 ~A 6 47 7 2A LbPb 1'3 2.0 - '3 LbB JD LDA Q) c 7C. LDA SUA seA J"p - r- PUT SST ADR IN "DE SST ADR 3 57 (DsTJ -r- "- E. F ENTER AND DISPLAY 4-b/G1T DESTINATION START Ann~~g.c; ~5 L c}A r- ~ i-lL "BUSY" SUA D2 .. BL ANt< t)ISPLAY. I4L LOA E 'T DST AbR 7D D ENTER AND DISPL.AY 4-DIGJT SOURCE" END ADDRESS. (SEN) SEN AD_R ~.3 B BLANK DISPLAY (ENTR 4IHE.X) 2 9 -.+ Qj5 20 8 , --1------- L''DEI. A N HL 1 7C -- (SST)' ~. ---- - - - - - ICSL.AN K} LDEI - (IS JS - ICE;:NTR 4HEX) - ENTE.R. 4-DIGIT SOURCE SiART A ~hJ?ESS AND 'bISPLAV. (ENTR 4J.1EX) J"S STPD -. <Z5 ---- .-SST AnR 0 6' - ? -CST rMOVE'DATA] L.DEI - 4 • CD E O~ - COMMENTS CI 3 DATE TITLE MODIFIER D4 1 04 INSTR. 1 8 04 MNEMONIC LABEL o0 o 04 PROGRAM ASSEMBLY FORM , D~ -~ PUT SE~ A DR IN ,--4L SE.N ADR - A l)E.TE~MlkJE 'DATA BL.OC~ SI1!£ -1. RESULT IN Be AS EYTE C.OUNT. I-IL nST ADR T PUT nST AbR IN ... L ~ L. .-. 'I>EiERMINE MOVE. DIRECTION E I-f D CO ~ T FOR WA R1:l 51 SST Al>R> DSTADR ~BAC~W~RD MoVE, LOW a~DJ;~ 'B Yrss r= ,resT? ,_,2m m",.&&MU" MA1MJUiMf :;;;Q.]! PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR. A6RADR 04 ~ 0 041 2 MOV BAk' 71 3 O.c1 4 C.A 00 ~ LABEL 04 en - - ( HL.) (HL) ESE Be. C4 .JS - PL.P 3E LDAI 1 00 12 2 13 STAN rep 3 2_~ IC.P So 5 c~ JP - 141 6 04 - 7 Cq F"ORWAR'D Anp 8 ER Xc.p 9 0<3 EP. IA'DP A 58 c en 71 XCP MOV r=WD - 6\ CD ru - ... 3 BE CPAN (J.tL) (J..IL) 4 CS p~p 5 C4 6 ~2 - PL..P 9 3E A CO 8 c 12 JR 0 213 STAN 'Dc..p 'DCP E C~ :TP F .5B 004 ,~ ReSET - - - ~ MI=MnQY 3E LDAI BS - FF 8 C.PA B 9 C~ RTS = Q(J5 CNOP) GO MOVE. t\.IE.){T RYTE + ~ Be 6 - FE. J (BC) -; RVTE. COLJNT -2, , c N~ ,. IF B'ITf: c.cUNT -:J:("j .. ~XIT WITH 2=0 .~ I F' BYTE c.oUNT::CO... ~=1. £XIT. ,.. ENTER AND DISPLAY 4-DIGIT /A - LCCATION. 1 MOV F"WD CO 0' 22 11 L~PLA Y , DE I-JL 5 E F TC DESTINATION. I F' NOT ACLJ;prED ,.. SET~f'\URC'_E CPA R'TS - MOVE "hATA ADDRE<;C; At\lD nATA OF ~AD (lJQJ (DE) FE. o OC} o~ ,. Be B~ JE [AlU5TAORl LDEl 05 c cn J'S JF BYTE COUNT=~-., EXIT. (BAt) RAM) 4 8 ~ 'Rc. NZ 3 r:F . Z LDA'!. - 'DECREME".N" ~"T~ COUNT. "CHI< couNT) SiAN 7 0 r we EO&WARt:L MtlVE • H IGHFJ2 CRDJ;R 'RV-rE;c; l=i~ST. J 77 71 OR (Cf.ll< COUNT) DC.P 2 3E L'DAI. - HL Be 2 70 T l-IL"''DE l-l L RC. HL ~ DE CDr;.) 03 GO M("')VE". NI=X1" BYTE. ,..\....J SEI L"DAN 1c..1 = aiQS (N(')P) ~ -po MOV BAK 1 8 ~ HL 00 00 IA JS ()t:ATI~t.J .,.. SET SOURC.E (OE) 'DE F 7 M1i:MORY 1 ~0 O~ - o E.XIT. I F"' NOT ArC~PT~n bl~PLAV ADnR~ss- AND DATA OF RAD Be CA - ~ MOVE nATA TO nE.ST/NAT/ON N:l. E ~ COLJNT=<25 (RAn RAM) D ~o .,. J'S - COUNT. 1 SIAN CPAN 8 ~VT~ RE.SET 77 :BE c.s f)ECRE:M~NT ~ -JEBYTE ~ 8 A YE~ (C HK. COUNT) (DE) 4 04 I LOAN F 04 + -- IA c ~2 D 03 E Cl --- - DATE COMMENTS 'JS 7 9 _iii TITLE MODIFIER INSTR. JP 600 04 PROGRAM ASSEM8L Y FORM MNEMONIC 05 START WJ..lIG~ ICENTR 4 Hex} AnnQE~5 l)F I='/EL.D 0 OV~R OPE;RAND ADDR';"SSE'S ARE: TO RJ: ADJU_CSTE;O 5TPD 52 l000012m 1 PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR. AD-R ADR • 04 Ro J I 1 2() 2 cn 3 58 4.lO.2 __ 5 6 7 CD 8 0<3 9 A 04 STPD F 00 --~-- 4 07 5 2A 6 1<3 20 8 ES 9 A 2A 15 TBL ---------- c----95~-- - r L.DPI J..4L PSP HL LDPD ~L -- ___ CMA LDH A LDA L. 1~7 --- 1 DL I·a DE I-IL DE PL.P ADP 5 22 6 lS STPD ~ b I SPL. 9 JJ A B 20 28 Ac 2.3 0 EB E 2A F 13 -- DcP ADJ LOOP ICE HL HL XCP J-Il DE - - E- 3 ~5 SUA L L.'DA ..lL 4 7A ~c seA H 6 DA 3"P C.l 7 00 B II c 42 I\.) D BE F 05 IA ICI-4l< ~ wD BE SST) SAVf' IT A~ nls.PL ACE:MENT. (DIc\PL) - roe LDPT - L.bAN CPAN Ge:T TO A'DDRf=C;C. (11= L A~T (,)PERAND RE' 1=1)((;1). (eNT)} r I'"' SU8TRAC.T: ( Et-JJ") - CUR) _. IF" CUR> E;f\J)) .; EXIT. RESE.T r "r- L.DBI - GET AI')DRF;"SS OF' I="IRST (,,)PS=PAND (CUR) TO B~ I="IX~D (CUB. BEC.OM~S ~~~T I="'IXED) HL DE 5 (X) SU8IBACI: (nST - 1 END ADR L.OA IA "I'"' LDPD lolL 7B A ADORess (SST) , -~ CUB..ADR 2 00 - HL xc.p O~ ~TARI MO'llE. - LDPD ER 9 SOURCE. EBQM L.ASI - 1 8 GET A rc.p 1:>1 2Q r- ~MA_ --- - . - - - - - . - - -_. 19 2A GET 'DESTINATION START ADDRESS FROIVI L.ASI MQ~E • (OSI) 1 4 7 r- 1 ~ 3 8 n 1c:; P LAY "R US Y'~ 1r ~ADR 2t: 23 "r- "BUSY" 0 2 4-D/G/T ENTF;'J< AND DISPLAY FIELn E.ND .ADDREC;S. UL LDA ~F - END ADR 7C 0 r- rcENTR--4HEX) 20 1 _BLLANK..D1~ j -----------_.. _- B 70 2F K2 - (2$5 J"S - ICD/SP 4ASC) .- IDPD tJL. - IDsT ADR - 04 Bo 20 • ...,.. C F -c " - - ---! LDEI IE 3 E A - ~q 05 - :TS __ E CD IA LO. EI f--------- 21 ICON'T. CI-IG 2 U~- -------------- -------- COMMENTS CUR--AD~_ -- D 7 04 - - -- DATE MODIFIER - - - t----- 0'22 1 TITLE INSTR. C ~ 0 o LABEL 13 20 B a IE 05 PROGRAM ASSEMBLY FORM MNEMONIC IA DE SET UP _~-Wl)RD ADDRe:~~ TABLE START . .3 WD TABLE ; (bE~ T CHJ.j 53 IS -DATA IN ~-WaRD TAgLE? 1000012m PRO-LOG CORPORATION HEXADECIMAL LINE PAGE I NSTR. ADR ADR 041 C 0 CA 1 bE 2 04 3 05 4 5 C2 6 7 a 9 A B LABEL E F :TP - BE - 04 0' 12. - lDPI " - 2 Wn 'RoE CA 13 5 CD 6 004 7 C~ a 9 04 2~ B C3 C 0 04 £5 F 2.A 1 20 EB eO 2 3 4 17 ZA 1.5 (~L) YE~. rep ,:rp - jp - - Sk'lP .:rep JP - 3 WORD - PSP LDPf) - XCP L'DPD - - 1~I-tK 23 0 7A I.CP L..1:>A HL 'D (HL) SCAN J'p AC 04 - 2B 7E DCP LOAN 6 7 a - SUA H SUBTRACT: r"' I (OPERAND -SEN:.) I= OPERAND >SEt\! r(;NCRE. IT. ~~ I·U ... SUBT~AC.T! (OP,::PA .... r-. -SST) ( ~L.) C 7E 98 DA ~L. LDAN (HL) - _R el AOJ L.COP A 04 B 2R DCP HL 00 C 0 XCP L.'J)PD J-I L ,DE IV E:B 2.A E IS F ZO - , C.l - - ~ ADJ L..OOE AC 9 GE.T SQURCE START ADDRESS F=RoM L.AST Mo..;e (SST) L rep SCA J"p I" SST ADR C SOURCE ENb ADDRESS (SEN) ~ H( (Hi.) GET I='RoM L..AST MOVE. J.I L DE ~~ ge .~ Hl B InA + \....J I-IL SEN ADR E F SK'IP OPERAND'., Go TO NE.~T wt)~h IADJ LOOP L.DA SUAN E '" '-....J Hl A ~J St<lP OV~R CPE:RANO. NO. Go TO NEXT WORD. T At>J lOOP HL 2.~ ? 2 WD 1-41 5 TARL.E 'DE NZ PLP 4 IS DATA IN 2- WORD Z IC.P 3 .. S t<lP 23 78 2 , 2 WD TABLE 4D 1 A~r"'lJ:2r=SS. DE 7 Fo SET UP 2-Wl)RD TABL.!; STAR.T (DE} - NO. 12- L'DB LDC 9 0 " ~ 20 44 a EJ ~ .... 6 5 () DeB AC 04 'DE CHE:C t< OPE'R AN D CHK 3 WD lDAN - Ac bA y E. ~. DE. Nz: CPAN. JP 05 C2. -'" lDBI 5C 4 2:. 3 WORD :r:cP 13 3 JP COMMENTS DeB 04 D 0 DA 1 04 2 MODIFIER - OAT.E TITLE INSTR. - 05 Co IA ICHI< C PROGRAM ASSEMBLY FORM MNEMONIC I F' OPERAND < SST IGNORE IT. o ~ -I" 1-11 SST~ ODJ::C.tlo. ... IJ~~ AOD St;N : Dl~PLACEME.NT TC OPE~A.t...u·'}. nlSPL 54 l000012m PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR. ADR ADR . 05 00 EB o 1 7E 2 3 83 77 4 23 5 7E LABEL "J"e 9 AC - - - ---_.- 05 [CHG ADRJ 05 cn 20 2 3 en 4 5B 5 07 6 IE o B 0' 22 C 13 D 20 leo 58 - IE LDEI 2 05 3 CD 4 O~ 0' 6 22 7 1.5 8 ZO 9 CD .5'8 07 IE D 05 E CD 09 F 1 0' 22 2 17 .30 20 3 4 7 8 - LDEI :rS - - ISTPD - - t...nEI loS' 9 CD IQ~ " B o~ C 22 N 0 I~ 20 C3 -~lr .,.. - - :IS - STPD - - BLANt< nlsPLAY. (BLANK) i r' <255 E~I£'~ A~O bISe-'-~Ay. ~-D'G/T SOURCE; START A'bbRESS I(ENTRo 4HEX) HL SST ADR .l' J"S IE. A F ISTPD 'IS 1 0 E :res - AD'D~~~c:;. END ADR ---- c.n SB 6107 5 - _. ENTER AND DISPLAY 4-D1GIT F'I ELD E;.ND HL :rs - 07 B (X) - DISPLAY. I(ENTR ~HEX) SLED 1 zo <255 - Q~ BL.AN~ , -r- LDET - C • - JS A - llli-bA..N K) CD. 5 05 - ,.. _. __. _ - - - 8 F ENTER AND D/~PLAY 4-D1G1T 'lr - E 05 leUR ADR 05 9 w~Rn ~L -- 7 A PEBAILO~ FJ ELD START ADDRESS. 'JS -- NEW npI=RANf'\. 1..001:0: i=OR MnRE ~- IrENTR 4 HEX) STPD Jl 1 0 LDEI <255 - 22' I 0 STORE' __ ADJ..LOOP - 0' ---- ~ ----- J"~ 0', F STA-N - 04 D - ---- ---. .-- _(HL..) ~TAN 77 E ~- --------.--- ..Le£'_ -.HL (HL.L__ -- _LOAN A'-L __.D ~ _UlU ______ C3 IE ----- AD, __ --~------- ------- 7 C DATE COMMENTS __CHW_____ LDA~ 8 A TITLE MODIFIER INSTR. --------- _~KCP-- ---H4Q~ 6 8A OB PROGRAM ASSEMBLY FORM MNEMONIC ~ BLANK DISPLAV . (BLANK) l' ~ <255 AND DI~PLAY4-D/GIT tReE EN D ADDRF..s~ ENTEI? ~(1{ I(ENTR 4HEX) HL sEN ADR -r- BLANK D/SPI.-AV ICBLAN K) 'F r- 05 ENTER AND DISPLAY 4-D/GIT DESTINAT/O'" START A'DDRESS I(ENTR 41-1E>O 1-11.. , "DST ADR J"p T 55 Go CUAt<...It:.t: AhllP;:o;S cp,::"'ANnc:;,.. 1000012m PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR. ADR ADR 05 1 8D 04 ~ 0 4 PROGRAM ASSEMBLY FORM MNEMONIC LABEL TITLE INSTR. - - DATE MODIFIER COMMENTS + "--./ CONi. CHG 2 C.3 3 C2 It 1.0 4 C.A 5 D2. " ~1 II CO CI 7 DA E2 II 8 EA II 6 3 WD TABLE -C~)7- J"p UN .. 9 ~2 II A r=A B CD " 51 E D4 c.o F DC Cl PO OS 50 E,4 EC 2 ~4 3 Fe 4 5 01 , J 6 21 7 31 8 . 9 22 A 05 PI SO SI LDPI Be II DE HL.. " II SP [SIP!) J!L 2A LDPD HL -~2 STAt) B 3A _Ci C ~E 2 LDAD LDAI Wl) 'TABLE D om E Of F l~ LDDI ~o IE LDET L."DHI 1 2E 3 3~ 4 5 8 ,;~ 9 EE A B D F OS 70 AC.AI SUAI. SCAl: ANA! XRAI 1=' FE ORAI en 2 CA 7A 5 -0 9 C~ 7A 1=1 .i - AF - ,~ . (REG DUMP) RTS NO 7~O3 , E}(IT. D'SPL.AV RJ;~ISTER coNTENTS IN 130~ 'DISPL-AVS. PI-P AF PUS'"' AND PULl PSP IAF TO 6\ B F5 Q) C C5 PSP N D PSP E D5 E5 PSP HL F E.I PLP ill. - 730~ JS 6 7 -~~ IS i~C3 CARD 11\1 THE RAC.k:: C' !(CHK 7_~O3) NO PLP 'I'" AF lP - 1=1 GD OS JS - os 8 pSP - $\'" 3 4 -CST- 1='5 I(NMI.- SVc.) 05 ICPAI OPA rPA Ir ~B 1 o L.DMI. (I-Il) ADA!. c D3 ~E ;l-RVTf: OPERATIoNS. l.DL I c.." n' nE' (')~ LDCI C.E 7 6 TARL.E LD8I. 2' 2 o uN __J"S C.4 1 B.YTE OPERATlOtJS SO 20 &.1 D :~- PO PI cc C TABLE elF" o t\I 8e. _DE Sf) o R~C.I~T~RS 'DI~PLAY TI-IEJR C.ONTCN I':) A"'ALV~ER. l000012m PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR. ADR ADR • 05 R 2 DI Cl F, 3 C~ 0 1 A4 7 8 C~ 6 89 J..4L DE 22 02 STPD 1-4 ( RSAVE+2 - PSP 2 3 041 20 s F~ ---P-sp 6 SI _. PLP 7 22 AO 1 O~ 2 04 A3 IE 4 en 6 B8 7 8 9 C7 AD E R() F 07 05 Bo FE; 1 10 - X'CPT ··SSlT"KE'I. .TS - CPAX 4 05 1----_.- 5 C.2 AD - 8 9 05 05 CZ 0 A A3 6' B 05 EJ ~ C N D en E ISB F 07 D ISPL.AY C.uNj"iiNT~_OJ:' I ( ~LAY e.MR.liAM~ HL ~ "I"" i{OISP _4 ASC J HL REAl) I<E.YBOARD " V'RI=Al"') 1. f<EY) -r--- , 1-" SS Til,: I<EtJtL ~~ -- - DCB :TP - PLP Nl I"" H~X ~Qj-E~? Yf,S= No --. I r= N Q G_ CUAI\.lr..s: REG. CONT&:NTS, T KEY II f; S T" wA IT " FOR IT. "SST" I<EY. ,~ .,.. Do ~Qure PAIk'S (I-IL 'DE Be AF). N~ N)(T PAIR HL " J'S - IS KE}' ---=:.=_ CHG REG) J'p NEXT PAIR. DlSP-'2ATA) ...:J~_ ~~----.- :~-= DC 1)2- --.- "I'" PAIR <zS~ JS XC.PT .TS SET ~ - -- c:cuNT = 4 T 0"1 - ReG. -CONTEIJT5 START ADDRESS. , ._- L.'DEI 2 7 aSAVE ue SEI -r- HL - - REG. PA~R NAME iARLE SJ;;! SLABT ADDRES~ , J-IL L"DBI - ue. "r- ._---- 3 6 HL REG NAME - NX'T PAIR --------------- ~ LDP! E3 cn ' ___ t - - 1 - . - R5AVE+~ - cn B C - PSP 0' 18 ~L HL - E~ A ..AE--.---.. . -..- - t - - 1-----. LDP! 00 5 . - -1----------- ------. t-- SIEO eo -- HL. R ~A VE..±A...__ -->--. 21 ':0 0 ..'5 £5 21 00 ~I£N..T5_EQR..Dl SPLA V. 1-'_- HL 4 --I- . -- Be STPD 0' 20 THE.REt-- ---_.- -- .2Q --.- - - _ . _ - - - - - - _ .. _ - _ . _ - - - - .--l~2<jj~~~~~ ~L __ :.-_.=~ =-~~.~=---~=-_~=-.-.:.___ 5T_O.RE __ RJ~6JS_rg.J~._AblQ FLAG FF RTS' .ELP F - ----_._.- ~A1. f--·---------~-_f·--·IE.-DAT,"\~.FE-i-13P.-3--bLO'T E 22- E .Re.AD. .__13{J3~UT poRIL __ ! 1)0 1 D - DATE ---- 1----_._- --------_._--_ ... +_ ....... - .. --_ .._-_._ .. _------_ ... _. C.5 C - ------_._------- ----- COMMENTS f X1T. ---~-=~=~--~-- -----------------.---- ----1-- LP~.RTS __ c-AE_~~~ ~ 0 B • ~~------. }(CP D A - -- __ _QE_~ ~B C 9 OS PLP LBSAYE 2CJ 8 o -- PL.~ MODIFIER - 00 B F OS f=-- - TITLE INSTR 22 (BEG DUMP) STEIL LH~------- A E LABEL llB_ ~Hti.-MQ.3) .IEA_ 'DO FE. 1=1= S PROGRAM ASSEMBLY FORM MNEMONIC T BL ANt" n'C;PLAV. (BLANK) 57 l000012m PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR. ADR ADR 05 MNEMONIC LABEL cO ZA INSTR. L.1"lPJ') - TITLE 2 20 E5 FI PSP ~L PLP A~ 5 2A 04 20 LDPO 6 4 7 - E5 PSP HL PLP A 2A LDPD Be.. HL B 02 20 - EB 2A F 00 05 })o 20 1 C~ D2 3 4 5 Cs - RSAVE +2. )(CP LDPD - - RTS (CHG REG\ PSP 1-1 L DE HL RSAVE 141 Hi 6 E5 PSP HL.. 7 01 8 OS L'DPI Be. oJs 9 o.s IE - - ass ~3 LbEI B 03 - C 21 L'DP.I D 08 E 20 F CD Eo 11 EJ'.UE.R AND DISPL.AY 4-DIGIT H E.X VA L.U E . I-IL E.NTR 'RLJFR - (ENTR -4HEX)+l.g . o :rS - 1 0, EE XCP HL 'DE 3 El 4 73 PLP STE.t\! (~L.) 5 23 rcp 6 72 ST~'" I-H (lolL) 7 2:!. :rcp J4L 8 PL.P PLP 'DE B Dl CI 31: 10 C ~E. CPAI D 10 E C~ 9 . - 2 A ~ EXIT. Be I'lc.p 'DCP PSP , De: '05 2B 2B A o HL C.I E CoNT~N.TS RCE;AVE ..._4 9 D RESTQRE C.URRENT REGIST~R AND l=LA(;S. I"' RSAVE+~ 8 C COMMENTS HL ~ - DATE MODIFIER 1 3 05 PROGRAM ASSEMBLY FORM ~Lw ~, - ~EGISTER Be LnAI - STORE VALUE AS CONT':;~TS. I" _S£7 ~ =1. IQj - R'TS 10) ~ EXIT. F OS Fo CS 1 ~. H L :- 2 BD AQ (sp) C4 D 6 7 8 C5 AO C I\J D c.~ A B E F AO TABLE 8__ o c BD BD PAIR NAME E C2 C.3 AO CI 9 R.E(,.,IST~R :: (sp) SD " ea - -C~T- 3 4 5 0 REG NAMI:; = (SP) A r: = ~ -CST- (SPl 58 1000012'71 PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR. ADR ADR o 0' 00 01 1 03 03 2 4 21 OD 5 20 6 C3 7 OF 8 09 0, CD A CO 3 B OlD C 21 08 2.0 D E OF 0<0 I o· 01 2 FE 3 10 D2 2B 5 6 7 8 9 A B C o O(Q z F 0 '8 07 1 D~ 2 ID 3 23 4 C3 5 OF 27 0' OC 8 C:3 9 OF 0' CA [43 J'S - LDPI - NXT ENTRY JS - - - -- c-J"~ J'p - - 2 O~ Ba 5 CA 6 OF 8 9 0 5' eX> c [\) D A B E F 0' Ie 28 OC ----- ------- ------ PLP DCE rcp JP S=-UL.L rcc SET 'DAiA ENTRY BUFFER START ENTR BUFR+2 ADDRESS , NXT ENTRY seT r;.NTRV COUNT::..q (+1)' 'DISPLAY "- _ _ It AS PROMPT. J T (PISP 1:'- __ ") ~ I-4L seT DATA ENTRY BUt="F'E.R ADDRESS. r r;NTR BUFR - - J'p NOT HEX' - CPA'I. - LDA --- r- [(READ 1 KEY) READ KEy[:lDARD F'OR ENTRY. , NON-HEX ENTRY? r uSST "-: KEY 10 CO NOT HEX ,. NO. ENTRY BUFFER FUL.L.? 2BUFR FULL ~ - - r- --------.. _--- - r---- .-~---- DE ICC LDDI leI) 1'1) 0_7 :rs - - 5 TORE ENTRY AND D/SPL.AY. ----_.. - HL -+) NXT ENTRI '--" .... ----------- -- ~XT ENTRY BUFFER FUL.L· LOO#< F=OR CORREC.TIOf".l ACCEPTANCE. ali _._--- t--- "r- -- - - .z 15 U I<EY 115ST ? , ACCEPT ENTfi. -r- "CLR "=- KEY 13 Ni! NXT ENIRY NO, ,. - YES IS t<~" "CLR"? -------- c IS TJ.4/S VERY- EI~5I t;.NTRyl - - - - - - - - - - - - r--------------- -- .i! __________ ~----- NXT ENTfll' f-- , :ICE DCP NO (DISP HEX) S;P...A ___ _A 'jP START t J'p It; Ao I" DE - ENTRY couNT:: 2 (+1) ~ HL PSP - :n 4 (23 (HL) A JS B UFR SET -~ STAN LDD jp C2 01= Be 03 Dec. +14 - 0 COMMENTS ~ 13 1 MODIFIER CPAI F 7 - (E:NTR4~EX) E 3 o - 0" FE D - JP 77 57 D5 C - LDP.I 27 0, C.O 2B - CA E A (ENTR 2t-1W L.DPI DATE TITLE INSTR. 0, 01> D 6 MNEMONIC LABEL 80 1 4 , eb PROGRAM ASSEMBLY FORM -r- NO RL.ANK L.AST ENTRY DISPLAVED~ POINT TO PREVtOU5 r::UJ/::'J:J:R L OCATICN FOR CCRRE.CTE.D ENTRY. ." HL Ad (DJSPLA y') 59 ......_&1 _ _ "'.£ &NMiiAMiWm._4MiM&MtiMUi1Tl\;UilAi4;;A4#4A44mW"#M44;; ;;,:#lI 4# :;;';4 « ' a;; P " ;;WP##A¢ ¥ q PRO-LOG CORPO,RATION HEXADECIMAL LINE PAGE INSTR. ADR ADR 0' 410 1 2 4 LABEL - OF ACCEPT ENTR L.DA CPAt 5 6 C2 JP 7 OF 8 O~ 9 A .2 J OB 4 0' B 20 C 7E D 07 E 07 01 F 0 07 23 1 2 a(;' - - - lDPI - LDAN RLA 01 N2. NXT ENTRY ~ (I-fL) RL.A 1ep 1-11- ORAN L.DD (HL) A 5 7E LDAN RLA RLA (Jolt) OJ 9 07 23 B C B' SF D EB E C~ COMBINE 1ST 2 ENTRI£S PUT IN REG. 'D . I'" RLA RLA HL 8 YES SET ENTRY EtJFF,E.B. ADDRess TO FIR.ST ENTRY. ENTR BUFR rc.p 07 r- HL 51 07 o BUFFER I=UL 1. ? r- 23 6 t '--" C. 4 7 COMMENTS NXT ENTRY 3 A 0.' MODIFIER TP C3 0'79 DATE TITLE INSTR. FE 3 PROGRAM ASSEMBLY FORM MNEMONIC -- COMBINE 2ND 2. EN,RIES PUT IN R~G. FE. ~ RLA RlA rc.p t4L ORAN (HL) L.'DE A XCP HL DE F ENTRIES RTS IN I-IL REG. PAIR. o 1;:.)( l T. F '0 55 (D/SP HL} 1 CD 2 ~R 3 07 - Ie Ice: 7D I-DA 6 01= 7 OF RRA RRA A OF en:: 57 C CD <;8 D 07 E Ie B 54 70 CO 0' F 1 ~B 2 3 07 Ie 4 7C 5 DE 6 OF LDD JS - ICE L DR L'DD J'S C 07 D C, MSD ot: R~G.. L. IN NE:.XT 'DISPL,AY TO L.E.I='T. A ('DISP HEX) 1~ H " - DISPLAY LSD OF REG, H IN 2ND D ISPL.AY TO LEI=T. ('OJSP I-4EX) F H I:)ISPLAVMSD OF REG. 3 RD 'DISPL.AV TO L-Er=T. H IN RRA 9 "co - D/SPLA~ RRA RRA RRA <;8 ,~ 1.. J5 0': B L5D OF REG. l- IN 'DISPL.AY DESIGNATED BY (e) CD/SP HEX} ICE LDD 8 57 CD DISPLAY RRA ;OF A I'" RRA 7 0 N - 4 9 L.. :rS 5 8 - LOD - o A (DISP HEX) r E.XIT. RTS (E}IiLXIT -:: <E)SNT~V ... 3 . E F 60 -----~----"-- ..- ---- ... ------------"----~-~----"-------- 1000012m PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR AOR ADR O~ • 8 e 0 1 2 3 5' 4 F5 CD 6 <ED 07 a 1=1 CJ.4AR'~ -- JL --f--- ~-- PLP C.2 J"p C O~ D CD :rs E BI F O~ - ~ 0 7E LOAN 1 FE CPA! 2 I=F 7D 07 7 ~F a 7C CHAR's 1(200 MseCAT) ( Hl} - - - r--- - FF RTS - - - - .J-DA F'F :: END. EXIT I 4 __ SUAI - B_ ~7 LDW C C3 J"p - - - - - - - - - - - _ . -. ."----- A fi - Qj(l5 A - 80 + -------~- [(MESSAGE:) - ---- F C% Ao 'DB (CHI< S1 '52.1_ .IPA_f------------- -------2 3 D~ DO FE FF 4 C8 5 6 FE: CO 7 C~ - 9 AB C 0 E F 0(; Bo R1 2 3 4 f----- 5 6 AB_ 0kL F='F cQ$ ______ RTS :r~ - - - - -f - - - - - - FE. Ic.~ 1----- • 0 6' Fi f - - - - - - - - - 107- eX) I\) - CD B ~7 D 07 Ie E 07 C F C, - ~- Be DE; LAY .Z:;"'C M/LLISECtlNOS • ___ lE ___ - laltse DATA) ~ Be -~_.JlEL.A" 2 00 M I L.L. 5ECON OS. ~~~ - ~S A YES: Z=/: ~O: r.:CJ :DEL~~ -.. 1 <::J:;.CoND • !(LONG AT) - ~:!L ----------------- -- 02 E)('-T. r-_r ~r=.~ 01 1(200 MS,;'C~T) LDP:! SB -- 9 -- ~QQl1SE~~ ------ ----- - - - - - - - - ~[LONGLSTr~~ f---~ 7 - =t __ _lP Fl 07 ~-- It-J.E?.UT PORT _____ ~_. EXIT WJTJoI .2=1 YE~ ~.1 ~2 R("JrH CLOSEI> '? Ri5 ~ --CPAI.. 1 - - - - - - - - - - - - 01 [(500 HSEC AT) LOP.! .tIF Ba OE -----t-- J~ E AD_ -.-2.3_Q3. =!=L~30Z I/-IERE? CPAI Aa ~- (I SE'~T1 A OF'MESSAGE. SCAI DE. 00 1 ,~r;ND ----------------_. 07 __ L OL. L-DA 9 C, N~ 8 - A E __HL. ________ - D' 6 --r--- r--- 1 - - - - - - ~'SPL.AY) g2 4 CHARACTER TO RIGHT SlOE' QE DIS~l..A~ EACi-l 200 MS~Cc\ - - - - f-- B ca ______D15_Pl..AY. MESSAGE EBOM L.E.I='T TO RIr;~T AnDING 1 MORE r--------- J?.sL AF A 3 --- Dee rep D COMMENTS ( HL) LDDN 23 5 ~ MODIFIER - 8 DATE TITLE INSTR ID 7 O~ LABEL IE (MESSAGSJ ___ f-~I>_~_I_ - - - - - - - - - ---------QjB 08 5 9 PROGRAM ASSEMBLY FORM MNEMONIC --- L-DCI_ t - - - - - - - _J'S - ~- r- ~~ DISPLAY 2 MEMORY LOCATIONS HEX DATA IN PC~'T'ONS (E) &:WTIiY TO <: E.l ... .3 (DJSP ZNHEx) -. LDE:r ,- - RTS I 07 ~ E 'X IT. 61 1OOOO12m PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR ADR ADR O~ 1 ~O 2 3 D3 51 OPA - 4 OE LDCI 5 02 - 6 bB IPA 7 52 A1 C8 FE CPA! C,FF RTS A B C Co (MODE""') LDdL __ - .~ ___,,) 51 ANA ~ " 1 OE L.DCI 2 0"1 '[)3 CD - ~D 5 6 07 Ie ICE 7 O'[) 'Dec 8 C2 9 J)~ 0' JP - - B 01 C OS 05 - D' PLP 0 E F 0 1 2 3 c~ T SE T • M~80 £ XIT.~~)~ J, OR (;1 = 2. trLAG THEIJ ~::~ ~ N 9Al"J ~IIR PRESENT. T~S T PRI!SENT., FaR MCJaOB WITH ,,)IJ~ ::t> ~=1-. l F ;z:: a5 M ~/!O • _'D 1SPLA Y 4 UNDERLINE.t5. (_ __ ) IN J_~LIJONS 2. -,5 AS ~ ERQMe:r· DF :: ,.. II It <ZS~ :IS 4 A e " SET ADDRESS BYTE COUNT EXIT. DE NEXT" MODE· LINE LOW. , . FF DE ¢2 - COMMENTS T T PSP F 02. 'Do 'DF ~ (ZSZ, RTS DATE -. SET ~¢ 52. A - cn ISP MODIFIER LDPI E ot; D5 TITLE INSTR. 3£ 9 ~ LABEL C 0 8 PROGRAM ASSEMBLY FORM MNEMONIC LOPI - RTS (DISPLAY) - ~--- N~ NEXT .. " 'It-' Be .1"" SET F£NTR'I CDuN-r =4 (+/), (}JS ass o ~. DE EXIT. ==i-= 4 5 6 7 8 9 A B C 0 E F O~ Fo .-- 1 2 3 4 5 6 7 - 8 0 A " B <:x) N - o 9 C 0 E F 62 l000012m PROGRAM ASSEMBLY FORM PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR ADR ADR • 07 00 1 1)5 en 3 42 4 07 5 3E - -~~ - CD Do A 81 - 7 1)3 CD D 40 E 07 F CD 0 - - Ala 2 0' "01 PLP 3 CI PLP 4 lc. c; ---- 5 DISPLAY CURSOR PATTERN I=ROM REG. D. .- TURN I"' ON~LL LE-.O'S FF . D¢ -- 1(200 M5EC AT) DI:L ,'I ""- 200 MSEC'S , -r- J"CS JS - 1 -- -~-.- ...• JS 0' c COMMENTS - -f - - - - - -- ~~OR5) _._--_._- - 9 FF DE - - _bD.AI CPA - 6 B MODIFIER PSP _J.S DATE TITLE INSTR CS CJ:L ASHER) PSP_ ~C. ___.. ~. ~.~_ 2 8 Q7 J MNEMONIC LABEL TURN OFF ALL AND LED'S. , [CCLR CURSORS ." cuRSORS DEL A'i ~ 500 MSEC'S . [(SOO NSfC AT) DE Be. , .EXIT. B.:lS--t--- 6 7 I J 8 OS [(DISP 4ASC) LDCI 9 04f A s, B CD C o D 01 2 I'D 23 0 on 3 C2 IA 07 4 C~ 1 2 CDISP.N) '07D F E LDDN JS - - T (J.H.J N =<c). Iep ------------- HL _O_c_c_ . ----_ .. _-- jp - -- - --- - .- 9 - E 2F Sf; 0 30 C'[) 1 ~B 2 07 3 Ie 4 7£ 5 OF OF 6 7 • - 8 9 0 A " B CD IV - C Or' OF 57 CD 1~8 - R1S (n.sp 21-1W '-DDN ~~ - - _. - LDD F c~ • -r ... 1 =(14"\ " DiSPlAY t-.l. 2HEX'iALUES· FROM MeMO~~ IN 21'1 DISPL.AyS FRoM ~=-(<;). --_. (OISPZ. NHEX) .- .. (HLJE~I1'~(HLJ+N· EXIT. ~r- (HL) __._----C£)altn-::: (E'j+~~.- DISPLAY 2 HE!X r,.u.. p.4.r.TeR~ IN MEMORy LOCATiON CHJ.l•• IN J::uspL.A~ ea~lTICtJS (~l, (E }+I 'DJ~P H.EXl .- .. r----------~-.---.----.-- ... ... -- --_. -.~---- - .. - ....- . --. ---. _._--- - - -- - - --.- _- .. _ _- ---.-.-~- -_ ...- - - - _ . ---- A ~s - ICE Ie 23 N~, ('~L\ • c--~.-HT .. It:? J~F£T. - N~ LDAN .(HLl RRA RRA RRA RAA ... D ------.------~- rc.£ 07 E .. :rS - __ ._---- -------- - 27 OJ c9 C -- _. " - <OISP ZHEX) Dec. JP B 0'7 01 ---~--- E')(lT _WITH CE)EXIT~rs'/ CD (OISP Z N HliX) ."J'.S 2F 0'0 C2. A ------ . -1-------.-. LR3.L~ _. - (nlSP N) - r---- -~ Ni! 6 8 = LEFTMoST D'SPJ.AY PosIT/aN (EJI:NT~" LEFTt--10ST DJSPLAV CHAR. =(I-4L)ENTR'I <DJSPLAY) 'DeE 5 27 DISPLAY -4 CJ·iARACT~RS FROM TABLE. (if A sell CHA/~/5j lJIc;PLAY N CHAR's FRO,..,. TABLE -+ 0~ rep RTS ~DISP HE.X) (Eh~)(/r -:(&)+2 ~HL)E~IT:; (HL}+I HL EXJT. 63 1OOOO12m PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR. ADR ADR 07 . -4 4 2 3 4 5 6 7 07 5 LABEL ICLR r:I IO~"'OS) 0 1 00 " 3E OF CCUR~ORS) A2. LDA1 - D3 DO 3E LDA:! - J'S A 73 B 01 - LDA 0 iOF RRA E 01= F OF OF RRA RRA ANA! 2 OF 3 D3 OPA 4 DO 5 .3E 6 04 7 C.3 73 9 07 ReGISTER 0 SITS 0-7= D/SP,LAY POSITIONS 0-7. SET MASt< r=OR. AITS 0-3 SET CU L.OW· OUTPUT MA<.;t<. (A) = Cc:U ·0 0,0 x xl x: CURS. KIT. STROBE' RIGNT siDE; ot: 7.303 bl£.PL..AY. + o x x (STROBE) r ~ D r- _SET MAc;.K' 1='01< R/TSo -4-7. RRA E" 8 . 3 2J I 0 T - c 7A ENTER WIT,., REGISTER DPRE.-LOADED WITHCUR50R MASt<: O=OFF', 1=ON t D RIGHT 00 T r POSIT/OIliS D0 CD COMMENTS 00 - 9 0 MODIFIER LOOI ANA CPA DATE TITLE INSTR. 8 1 PROGRAM ASSEMBLY FORM MNEMONIC - <25F r T '00 LDA! - L£FT JP - SET c.D + STROBE (STROBE) L.OW· OUTPUT MASK. L,£t=T SIDE OF" DISPL.AY. r ~ A ,<;, AO (BLANK) 50 E IE (DISP 8) SF CD ~o ~D 1 01 5B C 07 F~ NEXT DISP LODI SPACE (DISPL.AY) - Ie C2 JP , ICE SF 07 - 6 C~ RTS NE.XT DISP ~ A B 07 C 51 ~o 7A - 0 ])3 1 DO - 2 7B LDA 73 E~ F7 - D3 CPA 6 Dl 1='- ORAl 8 OS - PARITY BIT OPA 5 ~ .. 3 2. I 0 I ADDRES~ (A)= CX x )( X WR AZ AI AO) 1~ S£."I WRITE ill'JIl! L,OW $. 1 ., WRITE Blr " B E£ XRA! (X) C N 0 08 D3 'Ill OPA C, j "1 , BITS 0-2 TO CONTROL. POR.T·, SE.T \AIR-IT';' L INEE I-IIGJ.I ('81T 3) = ~ . r- 1:>1 - "'6HT OUTPUT DISPL,AY poSr"rON I'" DI 1>3 F 1 POSITION ~r WRITE BIT 9 - 7~O~ 0-7 IN A - L.EF" £ - - TO C~,&H2ACTER DATA PORT. I DISPLAY I a Ie a III ~lB Ii1 GIl DQ$ 0 E OUTPUT ASC.II ANAl 5 7 -... 'D15PL.AY - 4 DISPL.AY, 'DISPL..AY LeA~T SIGNIFICANT HEX DIGIT IN REGISTER D. OPA (STROBE.) N~)(.r , A 'D L'DA ORAl F' 80 07 7 I("'EX~ASC.I' ) LDD (IlISPLAY) L.AST OISPL.AY? NO. 00 , - D J'S F E - ..7A I(DI~P HEX) l1)A CD EO 9 = (/Je => YES. EXIT. 7 ~ 8 (E) r- o N~ - 4 5 = (ASCII SPACE BLANK) n,5PLAY ASCI' CHAR. If>J (O} IN ALL 8 DISPLAYS t='ROM L.E.I=T TO R.IGHT. Fa - 3 OUTPUT BL ANKS TO ALL 'DISPLAYS. -r JS 2 .. T LDEI - o , '01 ,... SI;.T WR.ITE LINE I·UGH:a1. WRITE BIT NOTE: X =1)oNT CARE' Al , 1)1 RTS = es E.XiT. 1000012;77 64 - - - - ~--.-~--- .. --~-~~---~-- ~- -- ...-.. ~-~-.~.-.---.-----~---~--~-----~---~.---.-~--~- -_._- PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR. ADR ADR • 01 e 0 CD 1 D' 2 C2 4 5 80 01 6 Cb 7 .Ef: 8 07 9 ICREAD 1 KEY) B C C.2 D 80 E SF 07 CJ 0 l~ SB 7A 07 4 o LDA - 9 A DO DE I:PA 31= E ~A 0 EE 07 DB 8 9 A - .. LDE - - 4 - E' 3F - XAA AB C2 ~P C3 g, 8 07 B9 78 BA IF 0 - 07 6 C - BCJ 7 IV DQS '00 , I'" NXT C()LM A OC 'DA C2 E 07 F C3 I F NO KEY OR MUL.TIPLE KEYS CloseD. MOVE TO NeXT cOl.Ufv1N. - _ . - r---~ KEY C L.OSED· 'DEBOUNC.E IT. J (DEBOUNeE ) D<2S 3F £ N2. NXT COLM ,~ Be r- ENCODE f<EV BY FINDING Wf.lICH RoW J AND WHICH COLUMN k' KEY IS" L.OCATE.I:>. (;:Q-S o-3j (}J¢ ¢a:s 00 LDA 7A D IF COLM COUNT RRAC ])A :TP Cl 04 B - 07 5 CD 0F ANAl 00 3 A IPA Do E 2 SCAN ~eYBoARD BY E.NARLING ONE COLUMN AT A TIME. AND L.OOKING l=OR A KEY Ct."'<1 Jl:U: JS LDPI 1 I'" n PE 01 80 'D E BOON C.EOPEN ING , BB 3F D F NZ 'RE:AD 1I<EY) - - C UNTIL.. OPEN. (SCAN t<BD) :TP '3 B - WAIT (D~BOUNCE) ANAI '3 4 7 - 07 5F C'D 3 CL(,)c:;.,:'f"}. RLA OPA 6 - - NXT COlM D3 D I'" 8C OF E~ U= SO I(READ 1. t<EY) PSP lPCI 7 DO \<EY , - N~ 'De: 8 B (StAN KBD) PSP LDD 5 -0 " t<BD) ANA'! 2 B JP - E~ C C HECt( I='OR ANV -I" ~s 57 1 OJ - 5 6 F 01 A :1"5 D5 (R£AD CS 2 93 ..- 07 1 COMMENTS MODIFIER 15 - DATE TITLE INSTR JP c.n 'Dc, 07 A • LABEL 07 3 PROGRAM ASSEMBLY FORM MNEMONIC .<= -r- CcNV';'RT COLi JMN OUTPUT TO A CoUNT K. ~ ROW couNT rCB JP - RoW COUNT LOA +1 COlM COUNT ~CONVt;RT E - -J"p ROW INPUT TO A .. COUNT. j: RRAC. ICC. "3"P , CI ENCODE 65 1DOOO12m PRO-LOG CORPORATION HEXADECIMAL LINE PAGE INSTR. ADR ADR 07 C 0 aA 1 07 MNEMONIC LABEL - on 3 7B 4 CA 5 cn L'DA jp 6 0'1 - C7 ct; 8 04 9 OD C2 B Cl C 07 Co CI ENCODE - - - F C9 RTS DB (E\CAr.J ALL) IPA 3 4 5 Do E' co 6 3E 7 8 9 OF '03 'Do A DB B i'DO C E.(O 0 3F E c~ (SCAltKBD) • 0 E~ 1 OF 2 3 4 s cas RoTS N·i! + TARE 8 B7 9 CC} B F' 80 C C~ SA N.O. ~ 7~()3 INPUT PORT. CLOS~D. S1 AN))/OR S2 X LDAI YES. EXIT WITI-I .i! =0. ALL. I< EvBOAR'D ~UM~S-"- ~NABL.E 0F D0 1 .3F ... TOGGLE SWITCH INPUTS CONVE.~T ~=CJ. o LSO IN R£G.A _IaA5CU IS (A) >~ 7 <2fA CI <Z~9 ~ -I"" YES ~ ('1 - CONVERr TO '87 EXIT 1 ORA! - MA~~ Cf=F' - RTS <2S-~ . RoW rNPUTS ¢F ADAI - R~A'D E.X IT. I F KEY IS CLOSED (HE~-tASCII) ANAl CPAI J'p - T + T D~ RTS E.A 07 C~ t<&:'v'c; ACTUAL PCJS/TJoN INMPJRlX. OPA Fe. OA DA 6 7 TO T. READ F 07 E EXIT WIT~ ENCODED KEVVALUE X::ixM+K INRE:G.A X CORRESPONDS T i- - rPA ANAl - I NTO ACCUMULATOR. Ni!Ant> ROWS DQS ANAl ~ u= j"* 0 A bt> .i Ie M TO K. (M -= af4 = it at: COL.UMNS) GZS4 - CO PUT E.XIT DE PL.P 2 I + B i! Be. 'Of 1)1 COMMENTS RoW CO()NT+I PL.P E 01 Do D ADAl: 'Dec J'p EXtI DATE MODIFIER 'Dec:. - AtltLRows TITLE INSTR. C2 A PROGRAM ASSEMBLY FORM NC. COfolVE:.R.T TO BClJ - T + B<?J RTS 8~. leXIT, 0 liE F C5 0' ~UNeE) 01 Fo 2B 1 2 3 4 5 OA CD F7 07 CI pSP lDPI J'S - PLoP RTS Be Be Be AJ:: -0 08 DC.P LDA Be 9 F5 I(LoNG AT) DELAY 7B PSP F8 A 81 C " B ca ORA C FB - N - 0 E F 01 FI C' JP - PLP RTS 'V 20 M-.S.EC~. (LONG AT) C~ (X) JlERQUNCE DELAY aJAaB 6 7 F ... I ~ EXIT. DELAY r" N~ =(RC} B - N~ _. t nT =24 N~ + AI: o . t=.1 time !ifo..fe .~ A:. 2q (x01?5J 0 r ! J (280) DEL.AY AF :. N ... = AT-At. "24-1:. f.J g... .. WlU!..1 h r' ,'n Hex r EXIT. 66 1OOOO12m o APPLICATION SOFTWARE MODULE DESCRIPTIONS The enclosed software module descriptions are intended to provide the user with all the information necessary to access, utilize or move the routines into his program. The modules described are totally independent of requirements of the Monitor program, and are intended to allow the user to fully exercise the capabilities of the 7303 Keyboard/Display Card. There are several other modules available to the user that are not described herein, because they were written to the specifications and tailored to the needs of the Monitor program. The user is encouraged to study the listings carefully, should he find it desireable to utilize those modules. o o 67 fIollJLE NAME :_{_ME_S_SA_G_E)_ _ __ ENTRy ~680 AooRESS: _ _ _ _ __ FuNCT lOOAL DESCR I PTI ON : o This module allows the user to display a message in the alpha-numeric displays of the 7303 Keyboard/Display Card. The message can be any length and is displayed in a billboard fashion, i.e., the message moves accross the display from right to left. A new character appears at the right each 200 milliseconds, and an old one disappears at the left. The message must be stored in memory, and can be any length. The first character of the message should be at the low address in the designated memory space and the end of the m!ssage at the high address. The message is stored as a string of 8-bit ASCII characters with parity bit either 1 or 0. The message body should be preceded by a string of 8 ASCII spaces and also followed by a string of 8 spaces. The last character of the message must be an FF Hex. ENTRY REQU IREMENTS : Enter this module with the address of the first ASCII space that precedes the message in the HL register pair. MEMORY SPACE OCCUPIED: MEMoRY REQUIREMENTS: 0680 to 069E roM: 31 ReGISTERS ALTERED BY THIS ROUTINE: PROGRftM (200 BYTES RAM: ___ BYrES All registers are altered. o fJbOOLES UTILIZED BY THIS ROUTtNE: MSEC 6T), (DISPLAY) ADDITIONAL CCM1ENTS: o 68 • (1 SEC~T); (500 MSEC AT); f1lWLE N.AME: (200 MSEC ~ T) 06A8; ENTRY AnDRESS: 06Bl 06AB; ------- fuNCTIONAL DESCR I PT ION: These modules provide the user with delays of 1 second, 500 milliseconds, and 200 milliseconds duration. The timing is approximate and based on the clock rates provided on PRO-LOGls 7801 8085 CPU Card. For users of the 7803 zao CPU Card, the delays are approximately 1.25 seconds, 625 milliseconds, and 250 milliseconds duration. ENTRY REQUIREMENTS: None. MEMORY SPACE OCCUPIED: c MEMoRY REQUIREMENTS: REG ISTERS AI-TERED PROGRAM 06AB to 06B6 roM: 15 BY THI S ROUT INE : BYTES B, C MJOOLES UTILIZED BY THIS ROUTINE: (LONG AT) ADDITIONAL C(M1ENTS: • 69 PPM: _ _ BYrEs ft\)OOLE NAME: (FLASHER) ENTRY AooRESS: 0700 ------- o FUNCTIONAL DESCRIPTION: This module causes the user's desired cursor pattern to be displayed over the last displayed data or message for approximately 200 milliseconds (250 msecs. for ZBO). All cursor segments are then turned off for approximately 500 milliseconds (625 msecs. for Z80). The last displayed data or mes.sage is not changed. When the cursors are on, all LEO's are also turned on, then turned off when the cursors are removed. The module can be used to flag the attention of an operator to the displayed message with a blinking pattern, by access;ng this module in a repetitive loop. ENTRY REQU IREMENTS : Enter this module with the desired cursor pattern as an 8-bit value in register o. Each bit (0-7) corresponds to a display position (0-7). If the bit is 1, the cursor segment is turned on; if the bit is 0, the cursor is turned off. MEMORY SPACE OCCUPIED: MEMoRY REQU IREMENTS: REGISTERS PROGRftM 0700 to 0714 roM: 21 ALTERED BY THIS ROUTINE: BYTES RAM: ___ BYTES o A,F }'bWLES UTILIZED BY THIS ROUTINE: (CURSORS), (CLRCURSORS), (200 MSEC .6T), (500 MSEC .6T) ADDITIONAL Cavi1ENTS: o 70 • MoDULE NAME: (}I718· rJ71A (DISP 4ASC); (DISP N) ENTRY ADDRESS :_'P_'_'_'P_ __ RlNCT I OOAL DESCR I PTI 00 : This multiple-entry module allows the user to display 4 or N (1 to 8) ASCII characters in the alpha-numeric displays on the 7303 Keyboard/Display Card. The ASCII data to be displayed must reside in sequential memory locations, the leftmost character at the low address and the rightmost at the high address. ENTRy REQU IREMENTS : Enter this module with the character count (01 to 08) in register C (DISP N only), the leftmost display position number in the lower three bits of register E, and the low order address of the display data table in the HL register pair. MEMoRY SPACE OCCUPIED: c rtMoRY REQU IRe-1ENTS : REG I STERS 0718 to 0724 roM: 13 ALTERED BY THI S ROUTINE: BYTES A, F, C, D, E, H, L PRoGRAM ]VbOOLES UTILIZED BY THIS ROUTtNE: (DISPLAY) ADD ITIONAL RAM: _ _ BYrES Cai1ENTS: • 71 ftbruLE NftME: ___(D_I_SP_2N_HE_X...... ) __ ENTRY ADDRESS : _ _ 07_2_-7_ _ __ () fuNCTIONAL DESCRIPTlOO: This module allows the user to display the data contained in N (1 to 4) memory locations as 2-digit Hex numbers in the displays of the 7303 Keyboard/Display Card. The data stored at the low order address is displayed on the r-ight, and data stored at the highest address is displayed in the leftmost desired positions. ENTRY REQU IREMENTS : Enter this module with the number of memory locations to be displayed in register C, the rightmost desired display position number in the lower 3 bits of register E, and the low order address of the data in the HL register pair. MEMoRY SPACE OCCUPIED: Ma«>RY REQU IRf}1ENTS : 0727 to 072E roM: 8 PM: ___ BYrES BYTES o REGISTERS ALTERED BY THIS ROUTINE: A, F, C, D, E, H, L PROGRAM JVbDULES UTILIZED BY THIS ROUTINE: (DISP 2HEX) AnDI.TIONAL CCM1ENTS: o 72 • f'bWLE NPME: 72_F_ _ __ ENTRY AnDRESS : _ _0_ (Dr SP 2HEX) fuNCTIONAL DESCR I PTlOO : This module allows the user to display the contents of any desired memory location in the alpha-numeric displays of the 7303 Keyboard/Display Card. The data is displayed as a 2 Hex digit number in 2 display positions. ENTRy REQU IREMENTS : Enter this module with the address of the data to be displayed in the HL register pair, and the desired rightmost display position number in the lower 3 bits of register E. MEMoRY SPACE OCCUPIED: MEMoRY REQU IREMENTS: 072F to 073F roM: 17 REGISTERS ALTERED BY THIS ROUTINE: PRoGfWv1 BYTES RAM: _ _ BYrES A, F, D, E, H, L ]VbOOLES UTILIZED BY THIS ROUTINE: (DISP HEX) AooITIONAL CCM'1ENTS: • 73 MbDuLE NAME: (CLR CURSORS): (CURSORS) 0740"; 0742 ENTRy AonRESS: _ _ _ _ __ FuNCTlOOAL DESCRIPTIOO: This multiple-entry module allows the user to display different combinations of cursors in the alpha-numeric displays of the 7303 Keyboard/Display Card. The cursor character is a display character with all 16 segments turned on. It can be displayed over existing displayed data, then be turned off without altering the previously displayed data. Entry at the label (CL~ CURSORS) turns off all cursors displayed. Entry at the label (CURSORS) causes any desired pattern of cursors on or off to be displayed in the a display positions. The pattern is contained in register D as an a-bit binary number. Each bit position (0 to 7) corresponds directly with the 8 display positions (0 to 7). A bit set to 1 turns a cursor on; a bit set to 0 turns a cursor off. ENTRY REQU IREMENTS : Enter (CURSORS) with the desired cursor pattern in register D: 1 = on; 0 = off. Enter (CLR CURSORS) directly. MEMoRY SPACE OCCUPIED: MEMoRY REQU lREMENTS: 0740 to 0759 roM: 26 REG ISTERS ALTERED BY THIS ROUT!NE: BYTES RAM: ___ BYrES o A, F PRooP"*1 ]VbOOLES UTILIZED BY THIS ROUTINE: (STROBE) AnD ITIONAL Ca-t1ENTS: For further information about the cursor control, see the 7303 USER'S MANUAL. o 74 ~- ..---..----~.""-.--"~~--".".., - . " . - " " - - - - - - o ftbWLE N.AME: __ (B_LA_N_K)_;_(_DI_SP_8)_ ENTRY AooRESS:_~_75_B_;_~_7S_D_ _ FuNCTlOOAL DESCRIPTIOO: This multiple-entry module allows the user to display the same character in all 8 displays of the 7303 Keyboard/Display Card. Entry at the label (BLANK) causes an ASCII space to be displayed, thereby blanking all 8 displays. Entry at the label (DISP 8) causes the ASCII character contained in register D to be displayed in all 8 displays. ENTRY REQU IREMENTS : Enter (BLANK) directly. in register D. MEMoRY SPACE OCCUPIED: C MEMoRY REQUIREMENTS: REG I STERS ALTERED Enter (DISP 8) with the desired ASCII data to be displayed ~75B to ~766 RJM:_~1..... 2 _ BYTES BY THIS ROUTINE: R¥1: _ _ BYrES A, F, E PRooRN1 fi:>OOLES UTILIZED BY THIS ROUTINE: (DISPLAY) ADDITIONAL Cavr1ENTS: For further information regarding the alpha-numeric display control, see the 7303 USER'S MANUAL . • 75 MbDULE NAME: (DISP HEX); (DISPLAY); (STROBE)ENtRV ADoRESS: 0768; 076D; 0773 FuNCTlOOAL DESCRIPTlOO: o This multiple-entry module is the primary display/control routine for the 7303 alpha-numeric displays. Entry at the label (DISP HEX) causes the least significant 4 bits of Hex data in register D to be displayed in the display position whose number is contained in the lower three bits of register E. Entry at the label (DISPLAY) causes the ASCII data in register D to be displayed in the display position whose number is contained in the lower three bits of register E. The ASCII data can be of any parity. Entry at the label (STROBE) causes the write line one the selected display chip to be strobed from high to low to high. ENTRY REQU IREMENTS : Enter Enter Enter Enter (DISP HEX) with the Hex data to be displayed in the lower 4 bits of register D. (DISPLAY) with the ASCII data to be displayed in register D. both with the display position number in the lower 3 bits of register E. (STROBE) with bit 2 of register E set to 0 to strobe, the right 4 displays, etc. ~EMoRY SPACE OCCUPIED: 0768 to 077F MEMoRY REQUIREMENTS: roM: 24 REGISTERS ALTERED BY THIS ROUTINE: PROGRAM (HEX BYTES RAM: BYrES o A, F, D (DISP HEX only) r~IlJLES UTILIZED BY THIS ROUTINE: -4- ASCI I) AnnlTIONAL CcMvtENTS: For a more detailed description of the operation and control of the 7303 alphanumeric displays, see the 7303 USER'S MANUAL. o 76 o ftbOOLE NftME: (READ 1 KEY); (READ KBD) ENTRY AnDRESS: 0780; 07 8F ------- FuNCTIONAL DESCRI PTION : The 7303 keypad is arranged as a 4 X 6 matrix, with the key faces and positions numbered in Hex fromm 00 to 17. This multiple-entry module detects, debounces and encodes a single key closure. Multiple key closures are ignored. Upon exit, the accumulator, register A, contains the encoded value of 00 to 17 that corresponds to the positional value of the depressed key. After entry into this module, the keyboard will continue to be scanned for a key closure until one occurs, at which time it will be processed and the routine exited. Entry at the label (READ 1 KEY) will cause only a s"ingle key closure to be processed, i.e., the key must be opened or released befor another closure can be processed. Entry at the label (READ KBD) will cause the routine to continuously process any key closure. ENTRy REQUIREMENTS: None. MEMoRY SPACE OCCUPIED: o ~RY REQU IREMENTS: REG ISTERS AI-TERED PRoGRJ\M 0780 to 07CF roM:_8_O_ BYTES FM: ___ BYrES BY THIS ROUTINE: A, F ]VbOOLES UTILIZED BY THIS ROUTINE: (SCAN KBD): (DEBOUNCE) AnD ITI ONAl CcH1ENTS: See the 7303 USERS MANUAL for more detail regarding the operation and control of the keyboard. o 77 ftbOOLE NAME: (SCAN ALL); (SCAN KBO) 0701, 0706 ENTRY AooRESS: _ _ _ _ __ () fuNCTIONAL DESCRIPTlOO: This multiple-entry module detects if any toggle switches or keys are closed. Upon exiting the routine, the zero flag reflects the keyboard/switch status. If Z = 0, a key or switch is closed. Entry at the label (SCAN ALL) detects the status of switches, then keys. Entry at the label (SCAN KBO) detects the status of the keys only. ENTRY REQUIREMENTS: MEMoRY SPACE OCCUPIED: MEMoRY REQUIREMENTS: None. 0701 to 070E roM: 14 REGISTERS ALTERED BY' THIS ROUTINE: BYTES R.AM: _ _ BYrES o A, F PRooRAM ftbOOLES UTtLIZED BY THIS ROUTINE: None. PooI.TIONAL ~ENTS: See the 7303 USER'S MANUAL for a more detailed description of the operation and control of the toggle switches and keypad. o 78 o f'bOOLE NftME: 07E0 (HEX --+ ASCI I) ENTRY AooRESS: _ _ _ _ __ FuNCTlOOAL DESCRIPTlOO: This module converts the lower 4 bits of register A to an 8-bit ASCII equivalent, with parity bit set. Upon exit, the converted value is in register A. ENTRy REQU IREMENTS : Enter this module with the Hex value to be converted in the lower 4 bits of register A. MEMoRY SPACE OcCUPIED: o MeMoRY REQU IREMENTS: 07E0 to 07EC roM: 13 REGISTERS ALTERED BY THIS ROUTINE: PROGRPM A, F [tOOLES UTILIZED BY THIS ROUTINE: ADD ITIONAl FJV4l: _ _ BYrES BYTES CcJ.t.1ENTS: • 79 None. MoDULE . E'N. rRv ADDRESS: _~7EE _ _ _ __ NAME: (DEBOUNCE) fuNCTIONAL DESCRIPTION: o This module implements a 20 millisecond (25 msec. for 180) time delay for the debouncing of switches and keys, although it can be. used for other purposes. ENTRY REQUIREMENTS: rtMORV SPACE OCCUPIED: ~RV REQUIREMENTS: None. 07EE to 07F6 roM: 9 REGISTERS ALTERED BY THIS ROUTINE: PRooRN1 (LONG BYTES Rtt1: ___ BYrES None. o fJbOOLES UTILIZED BY THIS ROUTINE: ~T) ADDITIONAL CCM1ENTS: The delay time of this module is based on the clock rates used with the PRO-LOG 7801 8085 CPU Card. Users of the 7803 180 CPU Card can expect a 25% increase in the delay time, due to the lower clock rate. o 80 f1)WLE NAME : _ _(_L_ON_G_~_T_)_ __ o 07F7 ENTRY AonRESS: _ _ _ _ __ FUNCTIONAL DESCRIPTION: This module provides the user with a variable time delay routine. The delay is implemented by downcounting the contents of the BC register pair (16 bits) to zero. The delay time can be found from the relationship: 6T = 24 NBC t + A t where t is the state time of the processor, NBC is the decimal co~nt in BC, and A is the number of state times executed that are not in the delay loop itself. Therefore, the count for any time delay can be found from the relationship: NBC ENTRY = 6T - A t 24 t (NBC must be in Hex) REQU IREMENTS: Enter this module with the time delay count in the BC register pair as a 16-bit binary value. o MEMORY SPACE OCCUPIED: MEMoRY REQIJ IREMENTS: REG ISTERS '/J7F7 to '/J7FF R.1M:_9__ BYTES ALTERED BY THIS ROUTINE: PROGRPM f1)OOLES Ann ITI ONAl PJYII :_ _ BYrES B, C UTILlZED BY THIS ROUTINE: None. Cc:M1ENTS: For the 8085, A = 29. For the Z80, A = 31. The longest time delay that can be handled by this routine is approximately 500 milliseconds, depending on the processor clock rate . • 81 o o o • o • o o USER'S MANUAL 2411 Garden Road Monterey, California 93940 Telephone: (408) 372-4593 TWX: 910-360-7082 Telex: 171879 1068218 500 4/82