Preview only show first 10 pages with watermark. For full document please download

I~_`q_@~~~~_o~®~_o~o

   EMBED


Share

Transcript

I~ THE DIGITAL GROUP S TOR AGE CSSB-O-Rft' S Y S T E M r; ) ~_______________________ ~I~_'Q_@~~~~_O~®~_O~O____ po box 6528 denver, colorado 80206 (303) 777-7133 TABLE OF CONTENTS Page I. II. III. IV. V. VI. VII. VIII. CSSB-l INTRODUCTION . . Specifications . 4 SOFTWARE INTERFACE . Commands . . . . . . Status . . . Input Data . . Output Data Mechanical Considerations 5 5 6 6 6 6 HARDWARE INTERFACE . . Computer Interface Deck Interface . . . 8 8 8 4 1] 11 11 11 THEORY OF OPERATION Head Electronics . Bit Synchronizing Electronics Group Coded Recording Recording Format . . Data Flow . . . . Control Sequencer Data Status Logic . . . . Clocks and System Timing . . • . . Motor Drive and Sense Electronics Motor Control Electronics 15 15 16 17 17 19 19 CONSTRUCTION . . . . . Using the Controll~r in a Digital Group System. 22 24 CALIBRATION Oscillator Calibration . . . . . Motor Speed Calibration Read Amplifier Gain Calibration 24 24 24 . 26 DEBUG Motor Control Electronics . . . . . . . . Head Sense and Bit Synchronizing Electronics . Read/Write Electronics . 26 26 26 27 APPENDIX . . . Parts List . PROM Pattern . Connector Pinout . . . . . . Component Placement Schematic • . . . . . Transistor Orientation . Driver Software Description Recording Format • . . . . Flowcharts . . . . . . . . Program Tapes and Listings . Phi-Deck Maintenance . . • . 28 29 31 32 33 34 35 36 40 41 43 96 r;) ~_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ~I~_o_~~~o~_o~~_O~O~_ _ po box 6528 denver, colorado 80206 (303) 777..7133 LIST OF FIGURES Figure Page Dedicated I/O Ports . . • . . . . . . . . . . • Multiplexed I/O Ports with Dedicated Strobes Bus Oriented Ports . . . . . . . . . . . . . . Head Electronics Waveforms During a Write Operation . Head Electronics Waveforms During a Read Operation Bit Synchronizer Timing . . . . . Recording Methods . . . . . . • .. ... . 4.6 Recording Format . . • • . 4.8 4-Phase Clocks . . . . 4.9 System Clock Signals 4.10 Motor Control State Diagram • 5.1 Phi-Deck Wiring . . . . 7.1 Single-Step Clock . . . 7.2 Digital to Audio Sensor . 3.1 3.2 3.3 4.1 4.2 4.3 4.4 9 9 10 12 12 . 13 14 15 17 18 20 21 27 27 CSSB-2 ~ ________________, _____ ~(~_o_~~~_o~~~o~o____) po box 6528 denver, colorado 80206 (303) 777-7133 List of Tables Page Table 2.1 2.2 4.5 4.7 6.1 CSSB-3 -s Status and Command Ports . . . Deck Selection . . . . 4-to-5 Bit Translation Table . . Valid Sequencer States . . . . Wiring Chart . • . . . . 7 14 16 25 r; J ~_____________________ ~I~_o_~~~~~_.~~o_o~o_ __ _ po box 6528 denver, colorado 80206 (303) 777-7133 I. INTRODUCTION The Digital Group Cassette Storage System is a total magnetic tape data storage and retrieval system capable of controlling up to four Phi-Deck cassette transports and accessing any of over one million 8-bit bytes within 20 seconds, using standard C-30 Phillips cassettes. The system is ideal for general purpose data and program storage, file copying, editing, and sorting operations. Each deck is fully controlled to prevent tape breakage. Electronic braking precisely controls tapes for fast forward and rewind-operations. A 4- to 5-bit translation scheme called Group Coded Recording, allows higher packing densities with a soft error rate of less than one'bit in 10 8 . This system operates at 1600 flux changes per inch, yielding a data transfer rate of 800 bytes per second at a tape speed of five inches per second. SPECIFICATIONS Recording Density: 1600 FCPI (Flux Changes Per Inch) Data Density: 1280 BPI (Bits Per Inch) using 4- to 5-bit Group Coded Recording Data Rate: 800 Bytes per second (6400 Baud) Data Capacity: ~~o,OOO ~4U,OOO bytes on each side of a C-30 audio cassette bytes on each side of 300 foot data cassette Tape Speed: 5 IPS Read/Write 100 IPS Fast Forward/Reverse Speed Tolerance: ±20% (i.e., the system will read a tape that was recorded 20% from the nominaL speed w~thout adjust~ent. It will !ead tapes outside this range by adjusting the data rate control.) Error Rate: Soft - less than 1 bit in 10 8 Hard - virtually zero when using the software package supplied with the system and a good quality audio tape Power: +5V DC ±5% 1:0 Amps nominal 1 drive 2.0 Amps maximum 4" drives 4.0 Amps peak for .1 second during drive enable +i2V DC unregulated (limits: IlV-20V) 0.4 Amp average with tape moving 0.7 Amp peak during motor start CSSB-4 po box 6528 denver, colorado 80206 (303) n7·7133 II. SOFTWARE INTERFACE Since the absolute method of controlling the cassette system will differ for each installation, only a basic interface will be described. The user can then modify the basic interface to meet his own requirements. COMMANDS The command port (see Table 2.1) interprets the various commands into tape motion and activates the read/write electronics. The two select bits, SELl and SEL2, select the active deck, according to Table 2.2. The selected deck can only be changed when all decks are stopped (status bit NOT BUSY is on). Otherwise, even though a command may specify a different deck, the original deck will be used. ENABLE/DISABLE (Enable=l, Disable=~) controls the deck capstan motors so that they may be tu~ned off under software control. The capstan motors should be enabled during and at least one second prior to any other commands. STOP/RUN (Stop=l, Run=0) controls tape motion. The STOP command also takes up slack in the tape. FWD/REV (Fwd=l, Rev=~) controls tape direction, and SLOW/FAST (Slow=l, Fast=~) controls tape speed. Note that since "slow reverse" cannot be performed, a "slow forward" is automatically substituted. RCD/READ (Record=l, Read=0) controls the Read/ Write electronics, and ERASE (=1) will erase the tape when RCD is selected. All commands other than the RECORD or ERASE commands should have RCD/READ=~ to prevent recording spurious glitches'on the tape. Table 2.1 Status and Command Ports COMMAND PORT Bit ~ 1 2 3 4 5 6 7 STATUS PORT Definition (1 active) Definition (1 active) Bit ~ SEL 1 SEL 2 l=ERASE l=RECORD l=STOP l=FORWARD l=SLOW l=ENABLE OVERRUN/UNDERRUN READY (data ready or ready for data) STOP (possible jam or end of tape) NOT BUSY (user may change decks) 1 ~=READ 2 0= RUN 0=REVERSE 3 ~=FAST ~=DISABLE Table 2.2 Deck Selection SEL 2 SEL 1 DECK ~ ~ ~ ~ 1 ~ 1 1 1 1 2 3 ~_C_SS_B_-5___________________________________ ~(~ __o_@_O~~O~~_O~~~O~O~_____) po box 6528 denver, colorado 80206 (303) 777..7133 STATUS The status port (see Table 2.1) provides information on the state of the controller. Four status bits are brought out, ~eaving four input bits for other uses. Two of the bits, STOP and NOT BUSY, supply information on the deck status. STOP is an immediate response to a stop command or ~ jam. NOT BUSY occurs about a second after STOP turns on, signifying the deck is totally stopped. STOP is used by the software in all cases, except to switch the selected deck, which can only occur in a not busy state. The other two bits are status bits for the read/write electronics. READY indicates that the deck can accept another data byte (in Record) or that a new data byte is in the DATA-OUT port (in Read). READY is reset about one millisecond after it is set. It is also reset by a command, data in, or data out strobe. OVERRUN/UNDERRUN indicates that the computer has not serviced a READY by supplying or looking at the new character within the required time. It will remain set until a new command is issued. It is to be treated in most cases as an error condition. INPUT DATA (FOR RECORD) The data input port requests the data bytes which are to be recorded on the tape. The first byte should be loaded either prior to issuing the record command or within about five milliseconds after issuing the record command. Each subsequent byte of data to be recorded should be loaded when tht READY status goes high. Loading the new byte will automatically reset the READY line. The byte should be loaded within .5 milliseconds after the READY signal. Otherwise, OVERRUN/UNDERRUN will come on, and the record electronics will go into erase mode. This may be allowed to happen at the end of a data block in order to record an inter-record gap. If a 'new command is to be given immediately after the last recorded byte, the OVERRUN/UNDERRUN bit must come on before the command is given. If the command is issued earlier, part of the last byte will not be recorded. OUTPUT DATA (FOR READ) The data output port is loaded by the read/write electronics with the data being read from the tape; After issuing a read command, the electronics will look for a sync pattern and then load the, output port with the first data byte. At this time, READY will go high. When the byte is read, the READY signal will be reset. The byte should be read within .5 milliseconds after the READY signal. Otherwise, OVERRUN/UNDERRUN will come on, and the read electronics will be halted until another read command is issued. MECHANICAL CONSIDERATIONS Since the various tape and head movements require certain amounts of time to stabilize, consideration must be given by the software to insure error free read and record operations. I ~_C_SS_B_-6_________________________________ ~---o-~-~-o-~-o--~--o--o-------) pO box 6528 denver. colorado 802061303l777-7133 1. Never issue a record command (or turn on the record bit) when the tape is in any state other than 'slow forward, and the tape is stabilized against the head. The tape may take as much as one second to align itself with the tape guides on the head and an unaligned tape may record errors. A good practice to insure reliable recording is to read the previous block without error. This implies the tape is tracking correctly for the record operation. 2. When issuing a read command which causes the head to corne up against the tape, noise and random patterns as the tape becomes aligned may cause false synchronizing and give erroneous read data. Therefore, it is a good practice in this situation to wait about a second, and then reissue the read command, using only the data from this second read command. 3. When recording the first block of data at the start of a tape, issue an erase command, and then time out about five to seven seconds to allow the tape leader to pass before recording data. 4. To allow the recoraing of two consecutive blocks at different points in time, always go into erase mode after recording the first block for a time longer than the space between blocks. (This is easily done by ignoring the READY after the last byte has been recorded, and timing out for the erase time. The electronics will immediately begin erasing without glitching) When the next block is to be recorded, it is begun somewhere within the erased section, thus preventing any glitching and subsequent false synchronizing on read operations. The following bit patterns are recommended for issuing the various commands: eNA~~& COMMAND J~,zi-f- 20- 30/3~- lS~l#+- ) t,'_ STOP FA$T FORwARD FAST REVERSE READ RECORD ERASE STANDBY Bit: Sw~ f~vJ ~~ ~~ ~'fvfrS . I~' 7 6 5 4 3 2 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 ~ 1 1 0 1 1 ~ Selected Deck (Note: Selected deck may only be changed when status bit NOT BUSY is on. ) 0 ~_C_SS_B-_7______________________________ ~(~ __o_@_O~~~~ __O~®~~_O~~_______) po box 6528 denver, colorado 80206 (303) n7-7133 III. HARDWARE INTERFACE Computer Interface The basic interface of the cassette controller to the computer occurs through four controller I/O ports. These ports may be connected in various schemes to fully utilize the hardware arrangement of the computer. The computer's output ports port. The computer's input status port. Each port has strobe information into the output in order to read the connect to the command port and the data-in ports interface to the data-out port and the its own strobe line which is used either to internal latch or to activate the tri-state port. All outputs from the controller will support ten TTL loads, and all data or control inputs are one TTL load, The command strobe is two TTL loads, the data-in strobe is three TTL loads, the status strobe is four TTL loads, and the data-out strobe is five TTL loads. The data-out and status ports are tri-state, activated by their respective strobes. All strobe signals are active low, and should remain high when not in use. The command data-in and data-out strobes should be low for a period greater than 500nsec, but less than one millisecond. A strobe greater than one millisecond is likely to cause false status indication from the read/write electronics. Some typical connections are shown below. Figure 3.1 depicts a setup where all input and output ports are provided by the computer. Unless all strobes are obtainable from the computer, a third output port will have to be dedicated for software controlled strobe pulses. The scheme in Figure 3.2 uses this strobe port, but takes advantage of a bus system, since the stropes are no longer tied to specific ports but are under software control. Figure 3.3 uses a bus system found on more complex systems. Here, 'inputs and outputs are shared on the same line and controlled totally by the strobe signals. Care should be taken when using this method not to load the bus beyond its capacity. Deck Interface The cassette controller must also be interfaced to the decks. Refer to Figure 5.1 for the wiring of the decks. The board has four separate connections for each of four decks on all pins except ALLCAP, CAPSUPPLY, ALLENGSW, and ALLENGSWGND. The connectors supplied with the deck cables (when decks are included with the controller) will plug into connections for decks ¢ and 1. When de~ks 2 and/or 3 are used, the above signals must be wired into the connector for deck ¢ or 1. Also, HDGND is a common head ground, and all cable shields must be terminated at these two pins. CSSB-8 po box 6528 denver, colorado 80206 (303) n7-7133 () {J) {J) tl:I I \.0 Controller ST Computer c ontroller Strobe 1J S'l~ Out )J Command ST Strobe 1 computer Command Out A ST Out 1 Data-in Data-in ~ ~ -- -- In Strobe ST In 0 Data-out ST ST Data-out •Out PfIIr+ {Jp. 7 1 B 1 Spare In A pw-- ST ~I\ Status - In 1 Status - == - Figure 3.1 Dedicated I/O Ports Figure 3.2 nultiplexed I/O Ports with Dedicated Strobes (Used with Digital Group Systems) Compu t er Controller J ST Bus Command , ST Strobes ~ Data-in ST Data-out ST Status Figure 3.3 CSSB-IO Bus Oriented Ports· r;) ~____________~__________~~__ ~I~ __o_~~~~~_o~@_~~O~____ po box 6528 denver, colorado 80206 (303) n7-7133 IV. THEORY OF OPERATION Ii:t;AD ELECTRONICS The head electronics consists of IC27 and IC28 which drive the head during record and IC13 which amplifies the head signal during read. IC27 and IC28 (75l25's) have tri-state outputs which normally are in the high impedence state during a read operation so that they won't influence the low level signal going from the head to the amplifier (IC13). During record, only the sections of IC27 and IC28 associated with the selected drive go into a low impedence state and drive the head in a push-pull manner. R6, R9, R20, and R23 are used to limit the current through the head and should be adjusted for a current of 1.5 times the head saturation current if the standard head is not used. Figure 4.1 shows typical waveforms for the record drivers. During a read operation, section 1 of IC 13 is used as a pre-amp with balanced inputs and a gain of 3.9. Section 2 is an amplifier with a gain of 22. Section 3 is a low-pass filter and differentiator which produces zero crossings at its output whenever the input signal has a peak. The low-pass filter reduces the differentiator's sensitivity to noise. Section 4 is a Schmitt trigger which detects the zero crossings and produces a TTL compatible signal at its output. Figure 4.2 shows typical waveforms for the read electronics. BIT SYNCHRONIZING ELECTRONICS This section of the controller is used to generate the proper fixed frequency clocks for record and variable frequency clocks synchronized to the data during read. The data is also converted from NRZI encoding to level encoding. This section of the electronics consists of IC9, IC37, IC50, IC4l, IC42, IC55, IClO, ICll, T13, and associated logic and components. IC9 'oscillates at 14 times the bit rate (it takes ten of these bits for every eight bit data byte that is recorded) and is adjusted using R28. During read, IC37 and its associated reset circuitry divides the OSC signal by 8 if the data is coming in slow, by 7 if the data is coming in on frequency, and by 6 if the data is coming in fast. The incoming data rate is checked every time there is a data bit of value "1". There is no correction for data bits of value "~". This compensates for small rapid variations in tape speed. Large speed variations generate a DC error voltage with IClO and ICII which is fed back to the control input of oscillator IC9. During record, IC37 divides OCS by 7 and T13 turns off the DC feedback loop. GROUP CODED RECORDING Since a flux density of 1,600 flux changes per inch was incorporated, a special effort was made to also increase bit density in a packing scheme which maintains self-synchronization. Figure 4.4 illustrates this convention, group-coded recording, in a comparison with some older methods. ~____CS_S_B-_l_l_______________________________________ (~~ __o_~_O~~~~ __ O~®~~_O~W~_____) po box 6528 denver, colorado 80206 (303) 777-7133 I ! l- 1 i I I II i -I 1 I I Output of driver A i : I I I I I 1 ; : I Output of driver B Figure 4.1 I Head Ele ctronic~ wavefofms Duri ~g 1 1 Typical Encoded Data i a VJrite QPerrtion 1 1 Ie13 Pin 8 Pre-Amp 600mv P-P ±50% Ie13 Pin 1 Differentia_t_o~r~____ 2.SV P-P ±30% ! Ie13 Pin 14 Schmitt Trigger I 1 i I Fiaure 4.2 i I I i i i Head ElectroniC~ waveffrms Durf~n-g--a--R-e-ad , ,, . QPerrtion I 1 () Ul Ul to I I-' W --- OSC Sample Data (transition In EA ~'!DA TAi) i I I i (no transition in RAV.lD~TA) ! I PAW DATA DATA MCLK ......-----~ Note 1 ~----.... tlote 1 I--_ _ _ _~ Note 2 _ _ _ _ _ _-'1 Note 2 DCLK t'J=:; RA tvDA TA y=:;tv, t i X=:;Z, Z=RAWDATA Note 1: Note 2: This pulse is always 3 OSC cycles if DATA is ~ or RECORDING. This pulse is either 2 or 4 OSC cycles if incoming data is fast or slow respectively and DATA is 1. Figure 4.3 Bit Synchronizer Timing ~ I NRZI, non-return-to-zero, illustrates a recording efficiency of 1.0, where recording efficiency is defined as the highest ratio of BPI (bits per inch) to FCPI for a given format. There is,; at most, only one flux cnange per bit. Unfortunately, this is not a self-clocking scheme, and is therefore impractical for use on a cassette system which has inherent speed fluctuations. PE, phase encoding, was designed to overcome such limitations by providing a flux change at the center of each bit period which would synchronize a clocking circuit. The direction of this flux change indicates whether the bit is a 1 or~. The ~ecording efficiency of this method, however, is only ~.5. Bit Stream -+ NRZI PE GCR Figure 4.4 1 1 1 I I I T ~ I I ~ I r--1 r ~ I r r r I L--J I I I I I I Recording Methods GCR, group-coded recording, at first glance appears very similar to the efficient NRZI method, but with one important difference: No more than two zeros may appear in a row in the bit stream. This guarantees a clock pulse at least once every three bits which provides synchronization. Since a restriction of no more than two zeros in a row cannot be placed on data, a translation scheme is used to encode.4-bit groups into 5-bit groups, and the above restriction is then placed on the 5-bit groups. The translation table is shown in Table 4.5. Since the format is essentially NRZI, we have 4 bits per 5 flux changes, or a recording efficiency of 0.8, which is 60% better than PEe po box 6528 denver, colorado 80206 (303) 777-7133 RECORDING FORMAT A synchronous format is automatically added by the electronics to the data being recorded. Of all the 5-bit patterns possible for use in this system, the only pattern not used is 11111. Therefore, this pattern is sent 15 times at the beginning of a data block (75 ones). The purpose of using this pattern is twofold. First, since the start of a block must be found by dropping the head anywhere on the tape, the electronics searches for about 20 ones in a row, and this pattern only occurs at the block start. Second, the ones form a steady clock frequency and allows the self-correcting clocking circuitry to achieve sync in the fastest possible time. After the ones are recorded, the five bit sequence, 00101, is recorded as a sync character. This particular sequence uniquely defines the absolute start of the block. At that point, the 4 high bits of the first byte are translated to 5 bits and recorded, and then the 4 low bits are translated and recorded. The rest of the bytes are recorded in a similar manner. If a new block is not immediately started, an erase signal will begin after the last byte. Figure 4.6 depicts the format. I I I " I I I I I I I I ~ ~ I-' I I I I i I I I 1 , ... ~ I I.__ I II I I :I I' I I , I- I I II ,I I,' I I • ~~ ,..1--.., ~I- ! : i- -- I ~I- I I I ,..i- '1 I II ! I I ~ I : II J I Ii " II I ~ -W- ----~ ~~ - I , ~~ , I fJ I I J ~ ~ ~- ! I BYTE RECORD COMMAND ISSUED ERASE LOW . I I BYTE n HIGH I _, A Figure 4.6 BYTE 2 BYTE 1 LOW ! I I ~ I T !I ! j I I --- _JI I HIGH SYNC 75 ONES 1=,1 Recording Format DATA FLOW Record - Data is strobed into IC46 and IC47 with the data input strobe. IC3l and IC32 select the half-byte to be recorded as well as the sync address. IC29 is a ROM which then encodes the 4-bit code into the 5-bit code and sends it to the 5-bit shift register, IC's 30, 5, and 24. The data is then shifted into IC4 which provides the record signal. CSSB-15 r;) ~__________________ I~~@@_=_@~~O~_o~®~_O~O~__ po box 6528 denver, colorado 80206 (303) n7-7133 Read - Data from the read circuitry is clocked into the 5-bit shift register (IC's 30, 5, and 24). After each half-byte is loaded, data is routed through the selector (IC's 31 and 32) and into the ROM decoder (IC29). Here, the 5-bit code is decoded back into 4 bits and is loaded alternately into IC43 and IC44. to be strobed out. CONTROL SEQUENCER The flip-flops whose outputs are RECORD, RUN, B, and A control the sequence of events in the reading and recording processes. Refer to Table 4.7 for the valid sequencer states. The command strobe forces the "SEARCH FOR ONES" state immediately, and system clocks put the sequencer through the appropriate states when the strobe is removed. For record mode, the sequencer will go to the "GENERATE ONES" state at the next CLOCKI pulse. The system then waits for IC's 7 and 20 to count out 75 ones and produce the ONESDONE signal. During this time, the ONES signal forces IC29's chip enable to output all ones into the shift register. After the ones are recorded, "SEND SYNC" is entered which produces the SYNC-GEN signal to load a sync pattern into the shift register. Next, "RECORD A" is entered and selects the high bits of the data byte, loading them into the shift register. Finally, "RECORD B" loads and sends the low bits of the data byte. "RECORD A" and "RECORD B" are then alternately repeated until either the next command strobe, a tape stop or jam, or an underrun condition. The latter two events will force the sequencer to the "GAP" or erase state. Table 4.7 Valid Sequencer States RECORD State RUN B A 0 0 1 1 1 Function GAP GENERATE ONES RECORD A RECORD B SEND SYNC 1 1 1 1 1 0 SEARCH FOR ONES SEARCH FOR SYNC READ A READ B f3 f3 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 0 I'/ I CSS1J-16 (ltlJL@ cQ]~~~ ) po box 6528 denver, colorado 80206 (303) 777-7133 For read mode, the sequencer remains in the "SEARCH FOR ONES Il state until IC's 7 and 20 detect about 20 consecutive ones. If a zero occurs, IC7 is reset and the count begins again. When sufficient ones are found, ONEDET tells the sequencer to go to the "SEARCH FOR SYNC" state. Each read bit is then shifted into IC30 and all five bits in the shift register are selected and routed to the ROM. The SYNC signal occurs when the proper sync bit pattern is found. The "reset to 9" on IC20 is then released and the sequencer is synchronized to the data. Also, the "READ A" state becomes active, and the next five bits of data are shifted in, decoded, and loaded into IC43 as "READ B" is activated. The next five bits are operated on in the same way, except that IC44 is now loaded, and the sequencer goes back to state "READ A." This sequencer repeats until either a command strobe or an overrun occurs. In the second case, the "SEARCH FOR ONES" state is again forced until the next command strobe. DATA STATUS LOGIC READY and OVERRUN/UNDERRUN are controlled by IC21 and only occur at the times the shift register or the data output latches are being loaded. READY is set at the end of state "RECORD B" as the second half-byte of data is loaded into the shift register. It must then be serviced by the time "RECORD A" is entered, since the new first half-byte of data is needed at that point. If READY is not reset at this point (by the input data strobe), OVERRUN/UNDERRUN will latch on. In read mode, READY is set at the end of state "READ B." It is at this time that the second half-byte of data is loaded into IC44. IF the output data byte is not read before the next half-byte is loaded, the OVERRUN/UNDERRUN flag is latched on. CLOCKS AND SYSTEM TIMING There are four major clocking signals derived from a four-phase clock system. MCLK, the master clock, with DCLK, the data clock, generate ECLK, as in Figure 4.8. IC20 is used to divide DCLK by 5 and get a signal, DIVIDE~BY-5, once every data half-byte. This is combined with other clock phases and sequencer states to obtain the clocks and signals shown in Figure 4.9. nCLK ~ DCLK ECLK Figure 4.8 4-Phase Clocks L -_ _ C_SS_B_-I_7_______________________________ (L~ __ ~~~~~O_®~O~~_O~W~_____) O_ _ __ po box 6528 denver, colorado 80206 (303) 777-7133 MCLK DCLK i -+- - : I ECLK I , i - I-("Search for Sync" State or "Gap" State) CLOCKI DIVIDE-BY-FIVE I I I I i ! j I I I (data shift) i : : -1 I I , I i I , I I I I I I : ~ ~ I I (All other states) CLOCKI : I ~ i I : i, ; : T : I i, ! ~ i ! CLOCK4 i -1 SHIFT I ! (shift register clock) I CLOCK3 : I-- Si I (rdy-over) CLOCK2 I Figure 4.9 SYSTEM CLOCK SIGNALS S=shift L=load (Load pulse does not occur in READ mode) (arrows indicate the active edge) MOTOR DRIVE AND SENSE ELECTRONICS The purpose of this section of the controls is to provide drive to the motors, braking for the motors, deck selection, and sense tape motion for feedback to the motor control electronics. TAKUPDRV goes to the low state whenever the takeup reel should be driven during read or record. R46 limits the motor torque during this operation. BOTHDRV goes low whenever the motor control electronics senses that the reels should have braking torque applied or that there may be slack tape in the cartridge. R45 limits the torque during this operation. ALCAP is used to turn on the capstan drive motor. ENGAJDRV goes to the low state whenever the motor control electronics senses that the head and pinch roller should be moved toward or away from the tape. T7, T8, T9, and TlO are used to brake the engage motor whenever it is not being ,driven. FFDRV and FRDRV are used to drive the tape in the fast forward or fast reverse direction whenever those commands are given. Transistors T2, T3, T4, and T5 in conjunction with steering diodes Dl Dll and DIS are used to provide drive to the selected deck. Diodes D12, D13 and D14 apply drag to the undriven reel during the fast forward and reverse operations to prevent excessive tape speed and to slow the tape as it nears the end of the reel. Transistors TIl and T12 generate a signal called SPIN which tells the motor control electronics that the undriven reel is turning during. the fast forward and reverse operations. The PULSE signal has small negative going pulses on it whenever the takeup reel is turning. This is used to detect tape jams and end of tape during the read, record, or erase operations. MOTOR CONTROL ELECTRONICS The motor control electronics senses the status of the tape motion, the position of the headbar, and the commands given by the user and sends control signals to the motor drive circuits. The status'bits STOP and NOT BUSY are also generated and sent to the user interface. The following discussion provides the user with a description of the primary control signals. The user should look at the state diagram given in Figure 4.10 to determine how the deck is actually controlled. PULSES is generated' by a one-shot (IC23) that goes active whenever a command is given and the deck is in the stopped state. PULSES stays active as long as a pulse is received on the PULSE line at least once every half second. If a pulse is not received within the allowed time, PULSES will go to a 1 and cause the deck to go toward the NOT BUSY state. The DELAY signal is also generated by a one-shot (IC23) and is used to inhibit tape motion sensing for 1/2 second after a command is given to allow for the tape to accelerate to the proper speed. This one-shot is also used to time the BOTH signal after a STOP command or tape jam is detected. CSSB-19 r; ~___________________________ ~I~ __ Q_~~~~~_O~®~~_O~W~O_____) po box 6528 denver, colorado 80206 (303) 777-7133 Any FRCt1D unless shown elsewhere Any FFC11D unless shown elsewhere Any STOPCMD unless shown elsewhere .5 sec .5 sec from PULSE or STOPCr1D any SLOWc.r··1D STOPCMD note: Names within circles are motor control signals. Labels on lines indicate commands given by user or events within controlleL. Figure 4.10 Motor Control State Diagram __ l' ~_C_S_SB_-_20_______________________________ C~~ ~~~~O~ __O_~~O~O~W~______) o_ _ po box 6528 denver, colorado 80206 (303) 777-7133 Figure 5.1 ORN* Phi-Deck Wiring DECK WIRING MOTOR, HEAD, and SWITCH CONNECTIONS 9 8 NINE POSITION MOLEX CONNECTOR REV FWD 7 6 YEIJ* 5 4 3 SUP ENG ALLCAP CAPSUPPLY ALLENGSWGND 2 ALLENGSW 1 NC POSITION 1 HAS NO CONNECTION RED* CAPSTAN WHT* BLU* *Wire Colors may vary I' C BRN* 4 NC~------------------~ HEADBAR SWITCH NOTE: Four position mo1ex connector may be cut between 2 & 4 to separate HDGND from HDB and HDA. CSSB- 21 1. 2. 3. 4. 321 VIKRON HEAD saturation current=4ma write current=6ma read output=5.5mv bandwidth 100KHz HDB HDA No Connection HDGRND (Shield) r;,) ~_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ I~~_o_~~~o_o~~_O~O~_ _ po box 6528 denve" colorado 80206 (303) 777-7133 QUIT will go to the 1 level if the manual stop button is pressed, if a STOP command is given, if no pulses are detected' and there is an active SLOW command, or if SPIN goes low during any FAST command and DELAY is not active. QUIT is equivalent to STOP on the user interface. V. CONSTRUCTION Tools: Fine tipped, low wattage soldering iron, "wire solder" (around 20 gauge resin solder), small diagonal cutters, needle-nose pliers. T~st Voltmeter 500KHz or better oscilloscope 'Frequency counter Microprocessor, Mini, etc. Equipment: Estimated Construction Time: 6 - 11 hours 1. Using the component placement chart given in the appendix, insert the 12 16-pin sockets into the PC board. If the sockets have an indicator for pin one, orient it away from the edge connector. Invert the board by placing a book on the sockets to hold them in and care~ully solder all pins. 2. Insert and solder the 36 14-pin sockets as described above. 3. Insert and solder the 6 8-pin sockets. 4. The controller and deck need +5 Volts at 1 Amp nominal and +12 Volts at 0.7 Amps peak. Insert IC12, using silicone grease and the heat sink. Solder R57 and R58. 5. Apply power to the board and check voltages. The 9 Volt supply should be between 8.4 and 9.6 Volts. The 5 Volts should be between 4.75 and 5.25. 6. Remove power from the board. 7. Insert and solder the three resistors rated above 1/4 watt (R44, R45, and R46). 9. Insert and solder the data-rate potentiometer (R28). that it may be adjusted from the top of the board. 9. Insert and solder the remaining resistors. 10. Orient it so Insert and solder all polarized capacitors (C2, C13 - C19, C22, C27, C30, C32). C13 and C14 are marked with a + or The others have a solid section of color on the positive lead. The board has + notations to aid in orientation. l\ r ~~C_SS_B__-2~2____~~______________________ (iliffi@~--Q-~-~-o-~-a--~--O--o-------) po box 6528 denver, colorado 10206 (303) m·7133 11. Insert and solder the various remaining capacitors. 12. Insert and solder the four lN4148 diodes and the 15 lN4001 diodes. All diodes should be oriented so that the bands on the diode are toward the right side of the board. There is also a diode symbol on the board to aid in orientation. 13. Insert and solder T6 - T12 into place. The emitter lead for these transistors is marked with a dot on one of the transistor pads. The appendix contains a pictorial to aid in orienting the various transistors supplied in your kit. 14. Insert and solder the FET (TI3). Orient it so that the drain is toward the top of the board (opposite from the connector). 15. Insert and solder TI - TS. These transistors are placed vertically with the leads inserted fully through the circuit board. Note that the emitter lead is marked with an E on the circuit board. 16. Insert all IC's into their respective sockets, observing correct orientation (pin 1 away from edge connectors). 17. Wire the board into the microprocessor's I/O structure, as described below. Connect the Phi-Deck by slipping the Molex connector supplied with the deck onto pins H - ~ of the controller's 36-pin socket._ Orient the Molex connectors such that the orange wire is on pin R. This puts the deck into position~. Remove the protective plastic shield from the digital head on the transport if one has been supplied. 18. If deck I will also be used. connect its Molex connector similarly to the connector for deck~. Bend the pins out on the 36-pin socket and slip on the connector. Decks 2 and 3 must be rewired at the connector, since several of the necessary signal pins are common to all of the decks. 19. Connect the shielded pair from deck ~ to pins I and A. Connect the ground to pin 5 or E. If deck 1 is to be used, connect the shielded pair to pins 2 and B (reverse the connector's orientation) and rewire the ground pin into deck ~'s ground connector. For decks 2 and 3, a different method of connection must be employed, as no more Molex connectors will fit. 20. Proceed with the initial checkout of the board by following the steps under section VII, DEBUG. 21. When the board seems to be working properly, perform the oscillator calibration and read amplifier gain calibration procedures under section VI, CALIBRATION. Calibrate the motor speed only if it is absolutely necessary. The Cassette Storage System is now ready for use. ~_C_SS_B~-2_3_______________________________ C~ilim® __o_~_o~~~~ __O_~~O __ O~O_______) po box 6528 denver, colorado 80206 (303) 777-7133 USING THE CONTROLLER IN A DIGITAL GROUP SYSTEM The connection diagram in Figure 3.2 of the controller manual is used with the Digital Group Software packages. Most systems will use the wiring chart (Table 6.1). An optional stop switch may be wired to the controller. A normally open momentary push button which brings the manual stop pin (8) to gro~nd will stop all deck movement. VI. CALIBRATION Oscillator Calibration Motor Speed Calibration To insure compatibility between decks and tapes among all users of this system, the data rate should be adjusted to meet the standard specifications. Before you proceed with the adjustment of R28, the controller must be placed in the record mode by issuing a record command from the computer. This disables the DC feedback path to pin 5 of IC9. Adjust R28 for a 112 KHz signal at pin 3 of IC9. In record mode, this will produce an 8 KHz signal on DCLK. This bit rate (8,000 bits/sec) will record 1,600 flux changes per inch at a tape speed of five inches per second. The data rate is then 6,400 baud when referenced to the data transfer rate between the computer and the controller. - The capstan motor on the Phi-Deck is preadjusted to 5 ips at the factory. The following adjustment may be made periodically to keep the deck speed within tolerance. (Note: Side B of your tape has approximately one minute of a 4 KHz test signal recorded on it. This is equivalent to 1,600 FCPI.) Using the 4 KHz test signal recorded on the reverse side of the cassette supplied with your controller, monitor the tape signal in the read mode on IC13, pin 14. With a non-metallic screwdriver or alignment tool, adjust the tape speed through the hole on top of the capstan motor so that the frequency of the tape signal is 4 KHz. ~) I ~_C_S_SB_-_24________________________________ C~---o-~-~-o--o--~--o---o------~) po box 6528 denver, colorado 80201 (303) m·7133 Table 6.1 Wiring Chart Phi-Deck Board PIN # 6 7 8 9 10 11 12 13 I/O Board (Ports DESCRIPTION CONNECT TO' PIN # 007 006 005 004 003 002 001 26 25 Data Output Lines 24 23 22 21 20 oo~ 19 R 15 16 17 Data Output Strobe 017 016 C B 18 014 19 20 013 012 21 011 14 o DIS Data Input Lines A Z Y X DIf6 Data Input Strobe 23 L * Not Bus~" M * Stop N * Ready P * Overrun/Underrun R Status Strobe S * Enable/Disable T * Slow/Fast U * FWD/BKWD V * Stop/Run W * RCD/READ \~~ X * ERASE Y * SEL2 Z * SELl A Command Strobe 22 -B Man stop W U 22 Status Port 21 20 19 S o C Connnand Port B A Z Y X W T ~~~--------~~ ~-3) DESCRIPTION MSB MSB-1 MSB-2 MSB-3 LSB+3 LSB+2 LSB+l LSB MSB-3, MSB MSB-1 MSB-2 MSB-3 LSB+3 LSB+2 LSB+1 LSB MSB, LSB+3 LSB+2 LSB+1 LSB MSB-2, MSB MSB-l MSB-2 MSB-3 LSB+3 LSB+2 LSB+l LSB MSB-1, Input Port 2 Output Port 1 Output Port 2 Output Port 1 Input Port 2 Output Port 1 Output Port 2 Output Port 1 Stop ••----1- Momentary, Normally Open Switch * These pins may actually be wired to the opposite pin on the Phi-Deck Board connector (i.e., pin L to pin 10 on the Phi-Deck Board). CSSB-25 r;,) ~_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ I~~~_o_~~~o~_o~~_O~'O~_ _ po box 6528 denver, colorado 80206 (303) 777-7133 Read Amplifier Gain Calibration VII. First, record several minutes of test data onto a tape that you will be using. (Once you have decided on a type of tape that gives you good results and that is readily available, you should not change tapes.) Now place the controller in read mode and read your tape. Monitor the signal at IC13, pin 1. If the amplitude is not within the limit shown in Figure 4.2, try different values of R18 until the amplitude is within limits. This adjustment is not critical and your controller will give good results even if your amplitude is not within the limits specified. DEBUG Reread the software section to be certain the correct procedures are bt.-! .. ng executed. Insert controller card (do not connect Phi-Deck yet) and t: n power on. Issue input and output commands to the I/O ports and verify that the strobe signals are present when the command is issued. Also, verify that the data is being latched in the command and data latches correctly (IC33, 46,47, and 28). CONNECT THE PHI-DECK AND PROCEED THROUGH THE FOLLOWING SECTIONS. MOTOR CONTROL ELECTRONICS Place an old cassette into the deck (if the motor control electronics is not working properly this.t~st may destroy the tape). Issue a fast forward command and check tape ~ovement (these commands are given in the Mechanical Considerations portion of this manual.) Issue a fast reverse command and check tape movement. Remove cassette and issue a stop command. Both reel motors should turn in opposite directions. ,Reinsert the cassette and issue a record command. The head should engage the tape and the takeup reel should turn. Place your finger on the takeup reel motor pulley. The head should disengage within 1.5 seconds after stopping the motor. If any of the above tests fail, refer to the Theory of Operation for the motor drive and sense electronics and the motor control electronics and proceed to trace the problem. HEAD SENSE AND BIT SYNCHRONIZING ELECTRONICS Place controller in record mode and output data bytes to the controller every time READY comes true. You should see waveforms similar to those shown in Figure 4.1 at the outputs of the selected head driver (IC27 O~ IC28). Waveforms similar to these should also appear on the head of the selected drive. ~__C_SS_B_-_2_6______________________________________ ~_~ ___o_~_O~O~_O~~~_o~o~______~) po box 1528 denver, colora. 10_ (303) 777-7133 The read amplifiers may be tested by using the tape you made in the previous paragraph, placing the deck in read mode after rewinding the tape, and looking for the waveforms given in Figure 4.2. If the voltage at IC13, pin 1 is clipping or not within the range shown, refer to Calibra-tion for Adjustment. This adjustment is not critical and is probably not the cause of the con~roller malfunction. The bit synchronizing electronics may be checked by verifying the timing diagram shown in Figure 4.3. READ/WRITE ELECTRONICS Test all of the clocking signals depicted in Figure 4.9. If a signal is not present or correct, trace back through the logic generating that signal. Make sure about 0.2 Volts of the tape head signal is present on record, and not on read. Check that RECORD reflects the selected state and ROY had a pulsing signal when recording or reading. The basic clock, IC9, may be removed,' and a bounceless switch (Figure 7.1) used to single step the syste,m (14 clocks per data bit). If an oscilloscope is not available, an audio amplifier with the circuit in Figure 7.2 can be used to probe for clocks and data flow. For example, recording or reading in hex "SA" will sound like a 4 KHz square wave on pin 6 of IC5, and (on record) a 2 KHz square wave o~ pin 3 of IC4. (This signal is not present on erase and read.> to socket on IC9, pin 3 (le9 removed) prob e .01 4.7K aux l.npu t m' ~O _1_r-vvv __~~1_K--..+-f; of amplifier .1 ~ o Figure 7.1 Single-step Clock Figure 7.2 Digital to Audio Sensor ~_C_S_SB_-_27____________________________________ (_~ ____ @~~~~ ____O_~~O ____ O~O~______) o____ po box 8528 denver, colorado 80206 (303) 77!"-.!J3~ VIII. CSSB-28 APPENDIX A. Parts List B. PROM Pattern C. Connector Pinout D. Component Placement E. Schematic F. Transistor Orientation G. Driver Software Description H. Recording Format I. Flowcharts J. Program Tape and Listings K. Phi-Deck Maintenance r;) ~____________________~~I~_a_~~~_~_~~o_o~o_ __ _ po box 6528 denver. colorado 80206 (303) 777-7133 A. PARTS LIST DESCRIPTION 74S00 7400 7402 7404 7408 7410 7411 7420 7451 7473 7474 7475 7486 7490 7493 74107 74123 74125 74153 74155 74173,8551 74195 74S188,8223,6330-1J 75451 LM324 LM340T-8.0,uA7808 LM35S LM555 2N4403 2N5129 2N5139 2N6109 2N6410,MJE2050 MPF971 1.5Q,1/2W 7.5Q,lW 18Q,2W 47Q 82Q 220Q 470Q 510Q 680Q lKQ 1.2KQ 2.2KQ 4.7KQ 5KQPOT CSSB-29 QUANTITY 1 8 1 2 1 2 1 2 2 1 6 4 1 1 2 1 1 3 2 1 2 1 1 4 1 1 1 1 4 1 2 4 1 1 1 1 1 2 1 1 1 1 8 7 5 2 2 1 CIRCUIT REfERENCE IC49 IC1,8,10,14,16,17,25,38, IC15 IC34,40 IC36 IC19,39 IC18 IC6,22 IC2,24 IC41 IC3,5,21,42,50,55 IC33,46,47,48 IC26 IC20 IC7,37 IC4 IC23 IC27,28,45 IC31,32 IC35 IC43,44 IC30 IC29 IC51,52,53,54 IC13 IC12 Iell IC9 T7,8,9,10 T12 T6,11 T2,3,4,5 Tl T13 R44 R46 R45 R53,57 R27 R12 R48 R58 R32,33,34,35,36,37,38,39 R6,9,20,23,26,31,55 R15,16,19,30,42 Rl,29 R2,49 R28 r;) ~__________________________ ~I~ __ o~_o~~o~ __ o~~_O~O_ _ _ _~ po box 6528 denver, colorado 80206 (303) 777-7133 DESCRIPTION 10KSl QUANTITY 13 15KSl 22KO 39KSl 47KSl 100KSl 1S0KSl 220KSl 1 Meg Sl 220pfd mylar .0015mfd mylar .0033mfd mylar .005mfd mylar .Olmfd disc 14 .1mfd disc Imfd tantalum 2 . 10 100mfd electrolytic 1N4001 IN4148 TO-220 Heatsink, THM6072B 4-40 Screws 4-40 Nuts #4 Lockwashers 8-Pip DIP Sockets 14-Pin DIP Sockets 16-Pin DIP Sockets Dual 22-Pin Edge Connectors Dual 36-Pin Edge Connectors PC Board 1 2 2 1 1 2 1 1 1 1 1 1 2 15 4 CIRCUIT REFERENCE. R7,8,10,11,14,l7,21,22, 24,25,43,47,54 R50 R40,41 R4,5 R3 R13 R51,52 R18 R56 C4 Cl2 C2~ C3 C5,6,7,8,9,10,1l,20,21, 23,26,28,29,31 Cl,24 C2,15,16,17,18,19,22,27, 30,32 C13,14 01,2,3,4,5,6,7,8,9,10,11, 12,13,14,15 016,17,18,19 1 2 2 2 6 36 12 1 1 1 I " ~_c_s_sa_-_30_____________________________________ C~---o-~-~-o--o--~--o---o-------) fh} box 6528 denver, colorado 80206 (303) 777-7133 B. PROM PATTERN A4 A3 A2 Al AO 00000 o 0 001 00010 00011 o 0 100 o 0 101 o 0 110 o 0 111 o 1 000 01001 01010 01011 o 1 100 o 1 101 o 1 110 o 1 1 1 1 1 0 000 1 0 0 0 1 1 0 010 10011 1 0 100 1 0 101 1 0 110 1 0 111 1 100 0 1 100 1 11010 11011 1 1 100 1 1 101 1 1 CSSB-31 1 1 1 1 0 III BO Bl B2 110 111 101 101 110 100 1 0 1 101 111 010 011 011 111 010 011 011 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 B3 B4 B5 B6 B7 o o o o o 1 1 1 o 1 0 o o o 1 0 o o o 1 1 1 o o o 1 1 1 1 . 0 1 1 1 1 o 1 o 1 1 o o o o 1 1 1 1 o o 1 1 1 1 1 1 o 1 1 1 o 1 1 1 1 1 o o o o o o 1 1 1 1 o 0 0 0 0 o 1 1 1 o o o 0 1 0 0 0 1 o 1 o o 1 o o o o o o o o o o o o o o o 1 0 0 0 0 0 o o o 1 1 o 1 o o o o o 1 1 o o o o o o o 1 1 o o o o o 1 o 0 1 1 o o o o o o o o ( { ) ~_____________________________ ~~ __ o_@~~~~_o~~~O~O~____ po box 6528 denver, colorado 80206 (303) 777-7133 . C. CONNECTOR PINOUT Top of Card Pin No. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 Note: Component Side Description Bottom of Card - Circuit Side Pin No. HDA~ A HDAI HDA2 HDA3 HDGND 007 D06 005 Data 004 Output 003 Lines 002 001 OOft1 Data Output Strobe DI7 DI6 DIS DI4 Data DI3 Input DI2 Lines DII B C D E F H J K L M N. P R S T U V W X Y DI~ Z Data Input Strobe +9V Out ENG3 SUP3 FWD 3 REV3 ALLENGSW ALLENGSWGND CAPSUPPLY ALCAP ENGI SUPI FWD 1 REV 1 A B C is E F H J K L M N Ii R Description HDB~ HDBI HDB2 HDB3 HDGND DATA READY IRQ n/c n/c n/c Not Busy Stop Status RE!'ady Port Overrun/underrun Status Strobe Enable/Disable Slow/Fast FWD/BKWD Command Stop/Run Port RCD/READ ERASE SEL 2 SEL 1 Command Strobe Man stop ENG2 SUP2 FWD2 REV2 ALLENGSW ALLENGSWGND CAP SUPPLY ALCAP ENG~ SUPft1 FWD~ REV~ n/c = no connection Pin 1 on 22-pin connector = +5V Pin 2 on 22-pin connector = GND Pin 22 on 22-pin connector = +12V CSSB-32 L -_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ r;) LIilim® __~_@~~~~_O~@~~~O~__~ po box 6528 denver, colorado 80206 (303) 777-7133 DETAIL 3 ;,: ,< ~ :' .. ~,'''~ ~ () " .'\\';' '\ ,;' '\ \~;r \. PADDLE CARD TO COMPUTER '. I, ~ ~ , ' PADDLE CARD ~.' TO PH·I-DECK \" , CONNECTIONS BE11IIIEEN CARDS - DETAIL 1 1 A ~OOO~0000i60000~OOO '1 00000 0 0 0 000 0 0 ~~ 0 t. 0 20 ~. 25 20 1 J" 4~ 4. 4t • 4~ ~. 0 ~ 0 0 0 0 GOO 0 0 0 0 0 0 C C C $ IN 36 OUT C .r1/0 PORT CARD 36 PIN SOCKET BOTTOM VIEW WIRE WRAP CONNECTIONS PHI-DECK CARD 36 PIN SOCKET 1 A ~ 0 0 0 ~ 1" o 0 0 0 0 C Y) g 0 e. r 0 0 H J 0 K 1.-- V1 ;J p rz )J 5 T IA V vJ y. ¥ z A 0$ 0 0 0 0 O~O ° 0 0 0 0 0 0 0 0 0 0 ~ c i3 ~ F H- J 0 L 038 IV '70 K 0 10 25 0 k f1 0 IN OUT PHI-DECK CARD CONN~NS TO PADDLE CARD BACKPLA~-DETAIL 2 PHI-DECK CARD 36 PIN CONNECTOR o 1 A 1 '1 2 3 4 0 7 8 5 5 HEADS~-T--T----T----r-' 000 000 0 0 000 0 0 0 0 0 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 ro ~ ~ o 0 0 0 0 000 0 0 0 0 000 0 0 ~ ~~ ~ 000 ~ ~ ~ , BOTTOM VIEW PIN SIDE DECK 2 > > N Q Z II) " + Q z + " 1 5 '1 5 Q Z " 15 20 22 20 22 > Q + " It) Z PADDLE CARD 22 PIN CONNECTOR PADDLE CARD CONNECTOR I JI--..,----,.....-.....--..--..---......+-oyo--~ '--..,.....-r-..--..--..---~-r-..,.....J o 0 0 0 0 0 0 0 0 0 0 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 o 10 0 0 0 15 0 000 000 20 PIN SIDE o M o M DECK 2 H o Q DECK "'_-IItH Q DECK 3 ""H o Q 9S DECK 1 o H FRONT OF CABINET Q o F. TRANSISTOR ORIENTATION ~o~ :0: l-A-i IWI 1- - - - --I I I I I I I I I 1- ..... © ®® OB OE CASE A Transistor 2N6109 2N5139 2N5129 2N4403 2N6410 MJE2050 MPF971 CASE B B C E I:,--~--~ CASE C _____ - ..... "- C B E D I I I I 1- _ _ _ _ _ I .... .... .... B I 1 E C tEa 8 CASE E CASE I I I 1 CASE F Case D A or B A or B B F E C _C_S_SB_-_35_________________________________ ~(~ __ ~_~~o~~_o~~~O~w~O_______) a_ _ po box 6528 denver, colorado 80206 (303) 777-7133 G. DRIVER SOFTWARE DESCRIPTION The software supplied with the Digital Group Cassette Storage System contains deck control subroutines to allow the user to concentrate on appiications. The READ and RECORD routines provide all error recovery during read, and data verification during record. The software package consists of several major routines to aid the user in controlling the decks. These are the RECORD, CMDOUT, READ, and REWIND routines. There are numerous minor subroutines the user may invoke if he feels the need to control the deck on a more basic level. The sample 8080 l:'rogram given below is a simple example of how to use the major routines. The sample program will read the tape on deck ~ and write the data on deck 1, one block at a time. This program will halt if an unrecoverable error occurs. The major routines are described in more detail following the example. (Note: The sample Z80 program may be found under Program Listings.) * SAMPLE PROGRAM TO COPY A TAPE ON DECK ~ TO A TAPE ON DECK 1 * ONE BLOCK AT A TIME * LABEL START REDBLK _ _C_SS_B-_3_6_ _ _ _ _ _- MVI STA CALL MVI STA CALL SUB STA IN ANI JZ MVI STA LXI SHLD LDA STA MVI CALL PUSH MVI CALL POP CPI. JZ CPI OP:t;l 0\·... ,-,'.' tte da~ .. f.\.~;l\$~--\ede.'P~\ta:l.. POINTR+l con-4:fh t\ ~ t f)rde r byt.e. 4. ~ister E contains the mode. ~ indicates that the data block is.to be read into memory starting at the lo~ation specified by POINTR. 1 indicates that the' data block is to be checked for errors only (in this mode POINTR is not used). 5. RETRYS (Register D) should be initialized only if the ALTRD or ALTRD2 entry points are used. It is automatically initialized to 10 if the READ entry point is used. The user should normally use the READ entry point. 1. 2. "a. hi'" When the read routine returns control to the calling routine, the registers and memory are modified as follows: 1. Registers A,B,C,D,H, and L are modified. I ~_C_SS_B_-3_8_______________________________ (~---o-@-~-o-~-o--~--o--o------~) po box 6528 denver, colorado 80206 (303) 777-7133 2. 3. COUNT (Register B) contains the number of bytes contained in the block: ~ 256 bytes 1 1 byte 2 2 bytes 255 255 bytes ERROR (Register A) contains the error code after a read operation has been completed. The error codes are: {21 No errors 1 Unrecoverable data error 2 Unable to find block specified by ID 3 End of tape or jam The CMDOUT routine is used to issue commands to the transport. Memory location DECK must contain the number of the deck that is referenced by the command. Register C must contain the command to be issued to the deck. The valid commands are: COMMAND VALUE IN REGISTER C STOP FAST FORWARD FAST REVERSE READ RECORD ERASE STANDBY 1 1 1 1 1 1 0 1 0 0 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 CSSB-39 '--_~______________ Cm(Ql~jJ\@[]~ po box 6528 denv~tr, ~Iomde ,80206"(.103)' 177-.t •• \.J- ,"'" , ~' l H. RECORDING FORMAT This appendix shows the block format as it is recorded on the tape by the driver software and controller. Each byte recorded on the tape consists of 10 bits or flux changes (see hardware description). DESCRIPTION 75 one bits SYNC character IO high ID law COUNT CRe 1 CRC 2 DATA CRC 1 CRe 2 TOTALS * BYTES RECORDED 7.5 .5 1. 1. 1. 1. 1. 1. to 256 1. 1. 16 to 271 *The record routine will erase to an equivalent of 271 bytes for short blocks so that all blocks will be the same size. ~_C_SS_B_-4_0________________________________ ~(iliffi® __ ~~~~~O_~~O~O~O~____~) 'O ___ __ po box 6528 denver, colorado 80206 (303) 777-7133 ERASE ERASE =1 pop ERASE, STOPS =5 PUSH STOPS =1 PUSH POINTER INCREMENT lOW RESET POP COUNT COUNT (PUTI 10 HIGH RCD26 PUSH ERASE, STOPS lOR CRC I ALTPUTI 10 LOW (PUT) COUNT PUSH COUNT PUSH ERASE, STOPS = IDW-1 DECREMENT COUNT H SAVE CRC2 (PUTI CRC 1 = POINTER POINTER + 256 (PUT) CRC2 SAVE COUNT = REWIND RECD1 POINTER POINTER + COUNT L ERASE FOR 4 SECONDS ERROR SWITCH CRC, POINTER =0 LOAD DATA BYTE INCREMENT POINTER SWITCH CRC, POINTER POP ERASE, STOPS PUSH ERASE, STOPS PUSH COUNT INCREMENT lOR SAVE CRC2 RECORD 1 BLOCK IRECORD11 (PUT) CRC1 (PUT) CRC2 POP COUNT DECREMENT SAVED COUNT no RECD3 POP ERASE, STOPS, COUNT PUSH ERASE, STOPS, COUNT INITIALIZE POP ERASE, STOPS DECREMENT STOPS DECREMENT COUNT H COUNT =e POP POINTER COUNT COUNT COUNT = l l =0 ~CS_SB_-4_1__________________________________ ~(~_~_~~~~~_o~®~_o~W~~__~) po box 6528 denver, colorado 80206 (303)861-1686 l·m~s·'·1 ( AL TRD 2 R056 _~c. . . __--') )'-_-II!>....IL..... Ell;' STACK POINTER POP RETRIES, MODE (D,E) POP COUNT(B) R054 "ETRIES, ~("IDE ( pop B; ADJUST MOVE COUNT TO B FROM 0 PUSH COUNT (B) (GET) LOAp' _POINTER (H,L1 (GET) PUSH POINTER (H,L) RDS SWITCH CRC, POINTER RESET CRC STORE DATA INCREMENT POINTER SWITCH CRe. POINTER RD55 no R050 0= COUNT R053 (GET) ERROR= 1 ROS7 (GET) SAVE COUNT LOAO lOR DECREMENT SAVED COUNT XY" lOT-lOR RD9 ERROR =2 POP RETRIES, MODE RDa n CSSB-42 RD54 (UfJU~~L®~~ ) po box 6528 denver, colorado 80206 (303)881-1888 J. PROGRAM TAPE AND LISTINGS ****************************************************** ** The tape supplied with the program listing is an ** AUDIO CASSETTE recorded at ll~~ Baud in Suding format. This WILL NOT load from the PHI-DECK. : : : : ****************************************************** The program tape contains four programs in the following order: 1. Phi-Deck Demo for 2. Z-8~ 3. Phi-Deck Demo for 4. 8~8~ Z-8~ Ops System 8~8~ Ops System Each program includes the PHI-DECK driver routines in the program listing in locations ~9~0H thru ~B9DH (~110~0 thru 013235) . CSSB-43 r;,) ~___________________ I~~~_o_@~~o~_o~~_O~W~__ po box 6528 denver, colorado 80206 (303) 777-7133 Z-S¢ PHI-DECK DEMO SOFTWARE 1. 2. 3. 4. 5. 6. 7. S. 9. 10. 11. 12. 13. 14. 15. 16. 17. IS. 19. 20. CSSB-44 Programs are loaded via audio cassette. At completion of a successful load a listing of P.hi-Deck commands will be displayed. In addition to the displayed options, there are three possible options - "R".' "S", and "P". "R" will return control to the Z-8~ Ops System which includes: 1 Read - Read an audio cassette 2 Write - write an audio cassette 3 Octal Dump - Storage Dump in octal 4 Octal Program - User programming in octal 5 Hex Dump - Storage Dump in hex 6 Hex Program - User programming in hex 7 Phi-Deck Ops "s" will display memory in either hex or octal depc:;nding upon last option (hex or octal) chosen by the user. "P" will allow user to program as in Z-S¢ Ops System in either hex or octal depending upon last method chosen in Z-S¢ options 3 thru 6. Reset will return control to Phi-Deck ops. "P", "R", and "s" will operate when in Storage.Dump, Program, or Phi-Deck Ops. Phi-Deck option "#" allows the user to select any of 4 decks (¢-3) by pressing shift # then desired deck number. To return to PhiDeck Ops press Y. The selected deck number will be displayed in the options listing upon return. Phi-Deck option "¢" will copy a tape from deck ¢ to deck 1. This is not intended as an efficient method of duplicating tapes, only as a demonstration of Phi-Deck routines. Page ¢15 is being used as a 256 byte buffer in the Copy. Tape option. Phi-Deck option "1" will erase a tape on the selected deck. Phi-Deck option "2" will fast reverse the selected deck. Phi-Deck option "3" will fast forward the selected deck. Phi-Deck option "4" will place all decks in standby. The capstan motors will be turned off. Phi-Deck option "5" will stop the selected deck. Phi-Deck option "6" will issue a read command to the selected deck. This will not read data from a tape. Phi-Deck option "7" wili issue a record command to the selected deck. This will not record data on a tape. Phi-Deck option "8"will record 256 byte blocks of data in a fixed pattern. Phi-Deck option "9" will read 256 byte blocks of data from a tape in a fixed pattern. An "e" will be displayed on the monitor for blocks in error and a "g" for good blocks. r;) ~________________________ I@@_o_~~o_o~~~O~O~___ po box 6528 denver. colorado 8020613031777-7133 CHANGES TO Z-8~ OPERATING SYSTEM FOR PHI-DECK DEMO LOC OBJ ¢54E ¢54F ,0,0 ,07 Address for key 7 ¢5F~ 13 B7 A¢ D¢ C8 C9 Spaces 7 ¢5F1 ¢5F2 ¢5F3 ¢5F4 ¢5F5 ¢5F6 ¢5F7 ~5F8 ¢5F9 ~5FA LABEL OP OPERAND COMMENTS P H I A~ C4 C5 C3 CB A¢ CF ¢5FB ¢5FC ¢5FD ¢5FE ¢5FF D3 ,0,0 ,01,03 ,01,04 ,0,0 ,07 ,04,01 ,04,02 ,03 ,05 ¢4D6 ¢4D7 ,03 ,05 ,05,0,0 ,05,01 ,05,02 C3 ,0,0 ,07 D E C K 0 D1l1 P S Return RST 8 L-_C_S_SB_-_45--_______________________________ ____ LC~O@_~~O~~_O~~~O~~O_______) po box 6528 denver. colorado 80206 (303) 777-7133 Z-8~ PHI-DECK DEMO SOFTWARE 0757 ez· ,758 AD 08 75A D8 08 __ 7~'C D2 08 075E CC 08 0760 DE 08 0762 E4 08 (2764 EA 08 0766 F0 08 0768 ~6 e·8 076A BF ee 076C 8e 08 076E FF 076F A3 A0 D3 C5 CC A0 C4 C5 C3 CI 0779 04 077A CS CE A0 D5 C~ A0 AD Ae 0783 e620 NCP e640 e650 Z;E60 :uV; 072e, D~ 0730 0740 0750 MSG1 27610 DW D'tt 11: IW SELEC'l' ADlaESS 1 SELECT ADtRESS e·8D2H 2 SELECT ADtRESS 08CCH "-' S1LECT ALDriESS e'8DE:r 4 S"ELE C'I' ADtRESS e8E4E c; SELECT At1RESS e8EAH 6 SELE err AILl1ESS ? SELEC'I AD1RESS 02F0H 08B6H 8 SELECT Al)LRESS 08BFF 9 SELEC'I' ADDhESS 0880H # SELEC'l Al>CRESS ERASE eFFE '# SEI DECK' e·77e DB 4D e670 DW l'w :w 0ee0 Dw iZ6916 e700 :cw 0710 r~i DVi eEADH Z8D8H 0 ~ ,-' SPACES , Dll ' I ~ USE - 0790 tKNBR DW ' 0' 0784 e6 ItEee DF 8D 078:· Be A0 C3 CF D0 D9 A0 D4 C1 te C5 7se 15 0810 DW '0 COpy TAPl' 0820 DE 10791 063e Dw SPACES 21D '1 ERASE' 0840 D~ 25D 06t0 DW '2 FAST REVERSE' DB SPACES 18D '3 FAST FORWARD' 0780 D3 B0 B1 A0 C5 t3 C5 0798 19 0799 :B2 A0 C6 1:4 A0 D2 C5 D2 D3 0?A7 12 07AE ]3 A0 C6 D4 A0 C6 D7 C1 L2 07B6 12 07E7 134 A0 D3 CE C4 C2 0?C0 17 07Cl Bo Ae D3 D0 07C7 1A 07C8 136 A0 D2 C4 ?CE lA 07CF CSSB-47 D2 C1 Cl D3 C: 16 C5 0860 D4 C1 D9 SPACES 0870 tW e880 DB 08S0 D~' SPACES lBD '4 STANDBY' ege0 DB DW SPACES 23D '5 STOP' 0920 0930 D] SPACES 26D '6 READ' 0940 0950 DB C1 D3 CF D2 C4 2910 D4 SPACES CF DW C5 Cl DW SPACES 26D '7 RECORD' (iliJj@~~ ) po box 6528 denver, colorado 80206 (303) 777-7133 ]7 AIO D2 C5 C3 C} D2 C4 e7L7 18 07D8 B8 Ae D2 CF D2 C4 C5 D3 D4 C1 D4 C1 07EA 0E 07EB E9 A0 D2 C4 Ae t4 D4 Ae C4 C1 07FB 57 07FC De C8 C9 C~ C3 Cb CF CD CD C4 D3 080:C eel 1060E FF D4 A0 C4 C5 C1 C: D3 C1 D4- tw SPACES 24D '8 RECORD TEST DATA' 0980 0990 BE DW SPACES 14D '9 READ TEST DATA' 10100 DP Dw SPACES 87D 'PHI D:F:CK COMMAN DS ' IE IB DB LW e·D 110110 Ae C4 C3 C1 CE A0 10210 1030 MSG2 le4e e80F 107 1050- D4 C1 D0 C5 C2 C5 C9 CE A0 C3· CF De C5 C4 ((;821 ee eb22 FF 0823 06 0824 t2 C~ C3-CF C4 C9 CE C7 D4 C5 D3 D4 C4 C1 D4 C1 C7 C9 D"w 1100 1110 MSG4 1120 1130 0:> RETURN ERASE SPACES f:C 'RECORDING TEST DATA' eFFH LB 1:;£ 1:1' DIN RETURN ERASE SPACES 6D 'TEST DATA BEING READ' 0D ~FFR AIO AIO C7 C4 0E4E e·6 084F e0 08510 FF CSSB-48 1090 LE DB A0 e83A 0851 D3 C5 CC D4 A0 C4 CE AIO CE C2 C5 D2 B0 AD E3 0869 28 086A DB A0 063·9 e€ D4 C1 CE C1 1Z60 10710 MSG3 10210 I)2 e,838 IF D3 t4 C9 C5 RETGRN ERASE SPACES 'TAPE BEING COPIED' 0FFH 7D A0 0837 e·0 C5 C1 C5 D2 DE C5 C3 Ae 06112 D4 C4 C2 A0 0960 0970 11410 11510 1160 MSG5 11710 DB DE DE 1180 1190 DE :ew SPACES RETURN 0FFH ERASE 'SELECT DECK NUMBER (0-3)' 6D 0D C5 C3 C5 C3 1:5 CD A0 A8 A9 D~ SPACES 40D , 'DECK # (ldfl@~®f®!!W 1-( ) po box 6528 denver, colorado 80206 (303) 777-7133 C4 C5 C3 C1 A0 A3 A(l' r&71 12e0 DNBR DW '0' 1210 1220 ~E D~ 56D SPACES 'DONE? (Y?)' 12~0 tE e'D 1240 1250 1260 TV 1272 ~:~ 1280 12SZ 1300 1310 >!~ 13212 NOP NOP LD EL.~SG5 ]0 0872 38 e-873 C4 CF CE C5 BF A0 A8 D9 bF A9 087D ee eE7E ee e87F e·0 088e 21 5(l e.8 ~cE3 0883 3A Bk:. ~A 2886 F6 F0 06E:8 :32 71 Zt: 088] e68P CD ee e2 28EE DB 00 0890 F'E B4 e8S2 :D2 A5 ea e695 FE Be 0897 DA 8E e.g 089A e6gA 32 8~ 07 135e 1360 137e· 1:3 ee. E6 0~ ~)89F 32 B0 0A 08A2 C3 ae· ~8 1450 146e. 1470 1420 (l8BC C3 A0 0B 0E:BF 0SBF 21 38 08 08C2 CD 00 02 1500 1~20 1530 1570 0E:C5 C3 CC 0] 1580 1590 08CC 0E A0 08CE 1620 FFWD (leCE CD 9B 0A 08Dl CF 1650 * 08D2 0E 80 1660 F'REV lJ:ED4 1670 ~8D4 CD 9] 0A 0€D7 CF 1680 1690 * )"3"? <"0"? JP OR YES, JliMP TC KEYBOARD (LOOK FOR A ~UMEER) (DKNER),A IF BETWEEN 0 & 3 t LOAD DECK NUMPEn IN MESSAGE 3D MASK ALL EUT 3 LSf'S (DECK) ,J. LOAD LECK NUMBER A'I "DECK" TV DISFLAY MESSAGE ~ITH NEW DECK 20H CONVERT 'TO' LOWER CASE CP e,F9E JF aST NZ,TV En LD CALL JP Lt CALL JP LD CALL JP )!t 1600 Cpy 1610 1630 1640 C,IN ~:: 15t0 RDTD 08C8 eeC8 CD e0 (lC eeCB CF tiCTL 154(l 1e-50 0B2E ::~ 1480 CPYTP 1510 CP JP LD (lSA9 08]:3 C3 C8 08 e8E6 21 22 08 08]9 CD 00 (l2 NC,DONE YES, CHECK lOR "}" ANr. 1410 1420 1430 e8A7 FE F9 e. 2 0B4H LD 144Z DONE. 08Bel CD 00 CP JP ;~ 08At F6 2(l C2 80 08 08AC CF 08At ebAt 21 IOE 08 LOAD k&L ~ITH DECK SELECT MESSAGE LD A,(DECK) LOAD A WITH DECK # OR eE0H CONVERT TO ASCII LD (DNER),A LOAD rECK NUMBER IN MES SAGE ARE.~ CALL TVEDIT CALL TV EDITOR IN e INPfT iROM KEYEOARD ~~ 1390 1400 089D e6~r 1330 IN 1340 RETUR~ CALL RS'I LD CALL RST LD CALL RST # "'('? NO, JUMP 10 ~ESSAGE RESTART AT PBI DECK COMMANDS IF "y" HL,~SG2 LOAD E&L WITH MESSAGE AREA TVEDIT CALL TV EDITOR CPY JUMP TO COpy TAPE ROUTINE HL,MSG3 LOAD H&L WITH MESSAGE AREA TVEDIT CALL TV EDITOR RCDTD JUMF TO RECCRD TEST DATA ROUTINE HL,MSG4 LOAD E&L wITH MESSAGE AREA TVEDIT CALL TV EDITOR RTD JUMP TO READ TEST DATA ROUTINE COPY CALL COpy TAPE ROUTINE 8D RESTART Ct 0A0H LOAD C WITS FAST FORWARD COMMANt CMDOUT OUTPUT COMMAND 8D RESTART C,80H LOAt C WITH FAST REVERSE COMMAND CMDOUT OUTPUT COMMAND 8D RESTART __ __ ~_C_SS_B_-4_9____________~_________________ rrn~~~o ~~~~~ o_~~o __ o~o~_____) po box'~ denver, colorado 80206 (303) 777 7133 e 08DB 0E (lI8DA CD ~BDD CF 08DE 0E 08E0 CD 08E3 CF 08E4 0E e8E6 CD 0EI9 CF 08EA eE e8EC CD Z8EF CF 08.fe (liE 08}2 CD 0€I5 tT eBSB-50 70 9E eA F0 9b eA .. E0 9E C,0ECH CMDOUT 8D C,70H CMDOUT 175~ tiST eD C,0F.0P. LD 1760 STOP 1770 CALL CMDOUT 17E~ RST eD C,0E~H 1790 READ LD 1800 CALL CMDOUT itST ED 1810 C,0E8H 1820 RECORD LD 1830 CALL CMDOUT aST 6D 1E4e 1700 ERASET LD EC 91= 0A 0A E8 9B 0A 1710 CALL :aST 1?2Z 1730 STNDEI LD 1740 CALL LOAD C WITH ERASE COM~AND OUTPUT COMMAND RESTART LOAD C wITH STANDEY COMMAND OUTPUT COMMAND RESTART LOAD C WITH STOP COMMA~D OUIPUT COMMAND RESTART LOAD C ~ITH READ COMMAND OUTPUT COMMANt RES'IART LOAD C WITH RECORD COMMAND CUTFDT COMMAND RESTAR'r I r;"----.---:;:;;,;;::-...--------...) ------------------------_I~~~~ box 6528 denver, colorado 80206 (303) m·7133 po e0 eE Ee Ct 9P. ZA AE eA 0BAe· 0€ _IA~ BA4 0BA7 48 e:EA6 CD e·EAf tB 02 Ee e~ 2:EAl CA AE 01 i: BAD eBB2 05 eEE3 C2 ZIFE 16 A7 e·j3 IZI:BE 4£ e·.bE9 CD AE' eA e2 ZlIC Dl e·2 eEf·E E6 03 el..G efe4 I::: eG~-- Z34e Z9~F ';.. f.. s(,~ 2E Z~ E0 ~37e ~~ 0:520 r ~ Si· ~ ~ f: ~ f. e9ZA 2? 'S1 2A Zge 1: ~SeE 71 2Sei ::?4 e·~le eSl~ t/ c:. v c'" ..... .L~ C~ If (:,r It 01 CD 7? k?E iSlA :?C lS1:£<,., 7r ?~~ '- Cft. 3f i9 ( S:-11' ::1 L-.l Z~;?.( E1 C~Gl ~F_ iS~:: 4'7 rr 9? '- : r o: ~ \ -- ... ~:- ,-... f ( ~ r - VA NL~ - LOCATED :~ ~E~OhY (LAS1' bLOCK + 1) ~.LT"P.D 2462 :'EC A e47e JP FOP rE NO ERASE, STOPS POP FL COU~T C,90H STOP E,A SAVE ERROR CMDOUT A.B RESTORE ERROR 051e eS?12 0::1::0 i\CL10 I: ~I....., e5Se r \ -;- 91 2A l~70 FG~Nt I O? JA"1 A ~ l tIl INC RET -:!~ I:~-l -:: - T A? E i CALL ~530 7' 2 - BLCCY ( i tR ) ,FL 2540 t; 1) II. PLOCr.. PL IDW=0 ? A.L P Z.RCD1e YES r,l1D RE~F.IFS = 12 E,lD CEECK MODE (S- ~. i.. "_ ~PrtOP' 24::12' 2-422 RCDl2 ~)4ge !-i"C D21 0~00 RCD27 + iitROrtS INC ID OR JP lL LD 7E \" 1 ~ '- ge Z4:3e 2144e ~~O eRC ~1Ti LL LD LD CALL LD (~ '- ~4le· ~42e ::J ... , :'Z e4ee 2"':-1 e9 rz~1'7 (' ~ 2 ~ ~? ~~~GPY ~EGISTERS - A,~,CtrtE,E.L,IDRtPOIhT~ r,l: ERASf=-l ~D 2,5D STOPS~~ FUSH HL COG~T PGSP. PE ERASF, STCPS LD P.L,(IDW) rEC rL IDR=IDA -1 .-{L2CntL LI rc: I~ ALT~REL 2 ~] 632~ e~ I~~ ',' ~ge ~ e " Z~~V ~\ ) I IrA - 1 ~:~ (, 2. f ~ ::~ L 2. 7", ;:~ ~ 2f2 '," l:2 9 2 ::~ Zg~~ < LLCATE~ 2 1 2S(~ IYT~) LATh (LAST DA1A - ~EGIST~P A i.. 24 L Mt:tv~CRY j (FI~S7 es::(Z' ~ I~ L0 CAT E ~ I N Mi: I' CRY - I ~ I,: - :., CCA'1 I L I ~ Mi fI-1 C :: Y (:F I ~ S 1 B LOS r: COJNT - }~GISTE~ ?,L ERhC~ ZS~2 rlETr~~ - D::cr NUMFrP. LOCATEI. .? 0 I :~ T1.~; r>', I IYFAGSTiI) AFTE~ ;:: CV T F U': : iSe2 Z ~"'i DRIVER SOFTWARE Z,~CD13 ERBeR'? CALL llEWIND LD C,e.EC? ERASE CALL CMD0UT ~_:~_~'_J.~_"~___________________________ (~~_~~_=_~~~~~_O_I~~_O_~~O~____) po box 6528 denver, colorado 80206 (303) n7-7133 0931 3E 28 ec..~"Z· ,-",-."-' CD 81 e92·e 11 eA e£~8 05£e 06e'~ e937 D5 1=· 0S29 CA 4~ e93C 0E EC eg e·640 CD 9B 0A 0650 e941 D~, e660 e942 CD DA iZ9 eS4~ I1 0670 e6~0 38 09 069Z 0946 C~ e·949 eS4A E1 e?00 D1 ~?10 094:£3 D: E5 IZ94D 2A E7 0730 e'A 1S e9t1 14 09~e· e740 i750 0760 ZS:2 C2 D4 (2;9 1t 09::f 1C Z8~~ 0?92 61 e9 e8~e A'7 -'- l81e e·9tB 1E 00 ~)820 D~ 083e rE 2E40 eS:D B1 0A 0·9~0 e~6Z. 22 B1 e·A IB e9€E 0E7e eS67 eeS0 e95F 2A e962 2:3 eE RCD1a e2E0 E8 CL 9:3 ZA 09EC CD DA 09 0S69 Dr 112 e971 E6 0L 0973 D1 -c 0f74 CA 50 ~.., 0S77 11 0978 1D eS79 C2 0c:...... e9 0SEF iiCD19 lJ770 e78e· ~9~'A 0f1~E RCD14 2720 09~C 0S:::7 CA RCD13 0e10 e620 RCr15 2630 ef.~E eeee 12900 0910 e~20 0930 0940 ~'f:~e 0960 e970 e~2e. 097C 097E ~E 0~, 0900 C~ 2e e9 0S81 3£ 05 10010 1e1e· RCD17 1020 103e 0SE3 cr 68 0A 0986 E1 eS87 D1 eSSE 1)5 0989 ~c:. egaA S? .:.;J~ 0~EB 82 098C C2 93 09 098F 63 0990 CA 1F 09 0993 2A B5 0A 0996 22 B1 0A CSSB-54 1~40 10~0 A,4en 4 SECONDS CALL DELAY ERAS ~, STOPS POP tE PUSH DE 1) ELOCKS ERASE (ERASE DEC D Z,RCD14 JP C,0ECE ER.ASE LD CALL CMDOUT PUSH rE CALL RECRD1 FOP DE JP RCD15 ERASE, STOPS EL PO~ COUNT FOP DE PUSH IE ?USH P.L RL, (POINTW) POINTER LD COUNT EIGH = 21 tEe D INC D NZ,RCD16 NO JP LEC E INC E Z,RCt17 )ES JF COUNT = COUNTL B,E LD COUNT:L =0 E,0D LD SAVE COUNT PUSH DE rE,HL E1 fiL,(IDR) LD INC HL (IDR),HL LD DE,HL EX C,ZEBE RECORD LD CALL CMDOUT CALL RECRD1 TAPEIN ERROR? IN AND eBB GET COt!NT POP DE Z,RCD19 NO JP DECREMENT STOPS POP IE 01 DEC E t-:Z,RCD20 NO JP A,3t ERROR=3 LD RCD21 JP APPROXIMATELY 10 ELOCKS A,5D LD CALL FR E~ASE, STOPS POP HL COUt\T FOP DE PUSH DE PUSH fiL COUNT=~? SUB A LD e5E.0 RCD26 10e0 1~7e 1080 1090 11fl0 1110 1120 RCD22 1130 - ADD JP ADD JP LD LD l r NZ,RCD22 NO E Z,RCD12 YES HL,(IDW) ( I DR) • HL ~~@i®!!W ) po box . . . . . . . . . . . . . . . . . . . (303) 777·7133 '2999 16 06 114e '?;8SP 1E 01 11~e ~b9t CL :OB 0A 09A0 3C e'8A 1 :;D 0StA2 Il 09P-2 CA AA 0:: ~:~:.A:= 14 ,-S'A'7- C2 ~:: ~19A.~ if. i'l :z S.f_ C 1.-.'2 c- ~' •.:... 2"SAF 2~ 09EZ :22 .J~ LA eSI~ 1160 1170 122~ rE RCt~4 1260 LD EX POP INC tEe JP ,- . • ,_" 1 z ,r~CD24 L r,lD :-r1. E~ASE=l ( 1 r ~: ) ,1.;::" I'i,hl I'~ C0 Ct\ T !! == l 'i D r Z,RCD~'~ D D~C 13~l YES D£cn ~'t~EWI cr.:, NTb eS1:E E5 es,EC 2A ]'7 'l,A 09:EF 24 esce G2 1:7 C'; 1330 FUSH EL 1~4e. 13~l L~ PL . _ , (POI"""" !~ l,' .It )\ INC P' 1::, ~ ~ Lr Z9C~ 1~'i it;' ~OP pr • .J ~1 e9C4 C3 e~ S~ ~9 C7 2A P7 Z A 0SCA 16 e~ 1:: f·z ... ... I"'" ~. -. , ... , 141 ~) ~t!' ~ ~ CD 22 J37 e'11 09te, 97 14:!.e ,~L 09Dl C3 21 e9 144f' jF if ee, 09D7 CZ ~.i ~915 !" . 0~tA 1'" '7 ... "± :" (. ;; 09LA Z9:0A ZSDA 1~ ~:, :i.e t:~ '7 r e91A Z9DA 1 :: 4~: ::~ e~l·A 1~~: ~ 'I' 1~' c·~, ;:-- 2SiA ~:SIA I \. 2~rA . : L n Er-' r. i'. '~ ccu~~ 'IE "C -.a. ) 'tI~ , _ ..... \ ;,: A:'~"i~. IN?Ur:.3: ID lCl~T ~~'';lSTEF - o~I~TER - j f' '[ rz;: Ci lSI-F CD 4S eA ~( 1 f. ~~, 170"- l?lZ ISSUED C}: ::. LL'~ L "'- f t, (; ~ == 2 ~ f, ~EGlS~~q (, 1; . (!,.A~::~' estA Eo B~ ," ( 01 =. 1 F: Y ,., ? ': ~ ;', T ;i.:;. - e·stA E:~ ~ =:3 21 i9~)E 4A S r. CU.L ~ I RRGISli~ i£SDA 1,:, ::, /; • !lITltriN. egrA ~8I,A I MUST 'I' eSI:A ... ,J> ~ S ? 0 P. E ~ A:' LIt.. (; • r, ~ ~ ~dt lJ NAN D S TC1- r,' Z9DA - F.,'~r 1 ;;.. ~i i 1 ~ :-:Z ;~~ 1 f'~'~' 1 f 1 i.. ::' 1 r::C 2 1 f:;" ~:. " e9~_1. ~, J? ;CP1::' '.~.;C' :'.1 (H .=."!:' (' n\, . ...~ 1'" ,.,', .., I' \., .~ ~ \ ..,.. l 1::-:( t: - E~::. :-, ,', 1:: £, r ::: ZSlIA _., 1~ ~. • _ 14ti· 147e ~e. .. (}<:\1J).~= 14~e 1'1:.(' ~:? T T r 14 < ( '''1C C 19 eSr4 15 (rOINT"'),~r. .,..,.... '- FRASE ~CD2e I :'lC I NO INCliEME~T HL, ( I D~\) INC rt Etv' l N'I I 1 f.: L~ , ERR OR? D L:C 124i2' 12:Q: - \. CA C7 Z9 29BA 15 tOP INC JP 'I eSb7 A A J? :27l ,:Z if 09:=4 :1 09E5 ! 4· e£-:E6 1~ INC rEe 115·Z 1192 12212 1210 123~ 2A L,tD ~ETRIES = ~ E,1D CHECK MODE LD CALL AT/1' it r 2 It I ~. :l;·T.~ 'L '.'~. _.~_ ~,l ':, /'f, :;·G IS'! f ~ .l.,~ ~-~':L'" ..."l. ,::- };. y ';' ~~ oS y .,... _ .. ) ,,-: :) '0' .... 1 :..' .,. ." i ' ::. r ... " "-' L ~ CSSB-55 ~~~) ~_____________________________ ~__ O_~~~O~u~o~~_O~O~__~ po box 6528 denver, colorado 80206 (303) 777·7133 09~2 42 f.A ~SEf, 4E!l'9E? CD 42 0A 129EA 54 09EB 4L CD 42 0A 4A e9Fe CD 42 eA 09EC eSEF 09F3 58 0SF4 09F5 09Ft 0SF7 E~ 4. C,E CALL FUT C,B LD CALL PUT D,H I· 'D C,L Lt' CALL PUT .,.~ 172:2 1740 1 r/t0 1?6~ 177f2 1780 1810 13212 RECDl 1&3e "''2: 18.40 1&50 1662 1872 lese t:.v E3 09FE CD 42 lA 09FE 05 0SFC C2 F4 129 0SFF 54 < lE~0 4_. c. ..... 0A 190e 1910 19216 1930 42 ZA 1£4e 19:,e rlECD3 0A0e 4D 42 ef. 0A~<4 29 4. ..... _t:. eA e·A 1960 1S70 19&0 1990 2eiZ0 2010 2e20 20~0 02 0F 15 ZA 8F 0A 07 25 0A C0 3F ~~ * ::C 20412 )~ 2050 GET 2060 2070 2080 2090 eRe 21Z0 2110 2120 2130 2140 eRCA 2150 2160 2170 2180 2190 2220 2210 . 2220 2230 2240 2250 22f0 2270 CSSB-56 ., ' IN REGISTER C CRC IN E,L A,H,l ALTERED TA?EIN STA'IUS IN ,10 2fee ...1 .2U1' DATA A~D 25se Ok D~: Z,PUT J? o.LIPUT CALL DOU'l CRC JP !t ETM I Nt' 24~e ',' ,', REGISTER A,C ALT~RED 24 cQ' 'I' ,'. THIS P.OUTlt'-lE '~'ILL GlARA ~:TEE 2472 'I' ,'. 24E0 ,,' LECK SELECTION C,90H S~OP 2490 REWI~I: LD 2 :;~'{' CALL C~DOUT IN 'IA?EIN 2510 rt ~ \\: :R eA68 0AEC CD eRe HIGH DONE 'TEST EIr.£' 7 RESrrOitE 2 A,r NC,CRCFIN EIT ? 'Ii AS 11 1~ YES :',A eRe LC'I~ DONE E7 Il' J..':: E 17 r( A ,? A29 eA37 I 2660 2f70 FRA 2680 269e. 2700 2710 2720 2730 2740 FF 2750 2760 2770 2780 ,','.' 2790 " )" 2800 DELAY 2810 I1 28G0 283e e8? 2 , TiE"Air Z,?.EwA RET FA.ST REVERSE, FA3T FORWARr SEGISTER A CONTAINS MULTIPLE e} 1e~ MILLI-SiCON:CS DELhY !1.EGIS1E2 A ALTEREL PUSH FLSH AF C,80E Lt CALL CMDOUT POP AF CALL tELAY C,90F. LD CALL CMDOUT POP BC RET PUSH IC PUSH AF C,0A0E LD JP FRA tELAY MU LT I PLE OF 10.0 ~s IN REGISTER A REGISTERS A,B,C ALTERED EC,29:B4H LD DEC Be INC E DEC E ~~ ~v (@L@@]~~ ) po box 6528 denver, colorado 80206 (303) 777-7133 EA:87 C2 84 '0.A 0ABA :;:D ~AfB C2 8.1 0A 0A8E C9 ~AeF 0A8~ 0A8F 3E IF" eA~l D:: 21 0A9~ IF e2 e·A9~. JP ~~ 28ge :;:~ DEC A JP NZ ,DELAY RET INFUT DATA. EITE (DA!A hE!URNED IN c) rlEGIS1ER A IS AL1ErtEL 2S10 2S2e 29j0 2S412 4F eAse zr DE ·iZASE 1'2 01 eA9A ("9 0ASE 0A9:[; f:A8B eA9:B 2,A Bi eASE :El 2840 28:·e 25E0 2870 2se.e ~A ZA9F D3 02 Z0~~ ZAA3 1'3 Zl 304e ~AAe 0AA8 79 0AA9 D3 ~2 0AAE 3E 5F 0AAD C3 A3 0A eAEe 0AE0 0ABl eAE3 ZAB5 0AB7 eAE9 0AE9 0AB9 0AP9 0AB9 0AB9 0AP9 0AB9 0AB9 0AE9 eAB9 0AB9 0AB9 0ABS 0AB9 0AB9 0AB9 0AB9 0AB9 0AB9 0AB9 0AP.9 LD A, ltllE OlJT IN STROEE TAPEIN LD C,~fJ.. LD A.0DFH ODT STROBE 29~e 2 9f..~' ?BT CUTPUT CO~~AND (DATA IN REGISTER C) 2f-7e. * LECK IS Ori'r ~ITE LATA 2~fe * 29ge * REGISTEB A IS ALTERED 3e,,20 CMDOVT LD A,(DECK) ()!t C 3010 OUT 'I' APOUT 3020 0AA1 2·E 9F 0AA5 C3. 96 eA ZAA8 N-Z ,D1 rI~A LD A.9:FE 3e 6e' ~:( 3070 :!e STROBE JP DI NA OUTFD! DATA (DATA IN REGISTER C) RE~ISTER A IS ALTEaEL 3080 DOUT LD C~DA 3050 CUT. A, C TAPOU! A,5FH 3100 JP CMDA 3110 ~120 ):c VARIAFLE DATA ARIA LS 1D tECK NUMBE~ TO EE USED 3130 DECK DS 2D READ ID 3140 IDR 2D READ POINTER 315e POINTR DS LS 2D NRITE IL 316e· ID~ 2D wRIT~ POINTER 3170 POI~TW DS 3180 ~c REAt ONE PL0CK 31ge ):e DECK RE~AINS RUNNING AFTER RE!URN 3200 >:~ INPUT: DECK - DECK NUMBER LOCATED IN 'MEfv10i 1 3210 * 3220 ~~ POINTR - LOCATED IN MEMORY (FIRST BYTE) 3230 * 3240 ~:; ItR - LOCATED IN MEMORY 32 ~'0 ):c RETRYS - REGISTER D 3260 ~'t (ALTRD ONLY) MODE REGISTER ·E 3270 * 0=READ 3280 * 3290 )'~ l=CHECK OUTPUT: 3300 * 3310 ~( DECK, POINTER, IDR UNCHANGED REGISTER - A,B,C,D,H,L ALTERED 3320 COUNT - REGISTER E 3:3,3~ * 01=1 :BYTE 3340·* 00=256 :BYTES 3350 * ERROR - REGISTER A 3360 * 0=NO ERRORS 3370 * 3380 )',: l=CRC ERROR 2=BLOCK NOT FOUND 33se * 30S0 OUT LD * I ~_C_S_SB_-5_8______________________________ (~---o.-~-~-o--~o--~o--o--~------~) po box 6528 denver, colorado 80206 (303) 777-7133 3400 ):( 0AP9 ~FS ~~ '-AB9 0AB9 3440 ,;( 0AP9 34 :;.(2 ':( 34te i.e 0AB9 eAP9 0AP9 16 0A eAEB D5 eAFC ZAEC 21 ~0 0{) ZABF DB 02 0AC1 :;,7 0AC2 eE E0 £'AC4 CD 9b 0A e'AC7 7A eACE E6 ~4 0ACA CA D7 eA 0ACD ZE 04 0}.CF CD 81 eA ~}~D2 16 01Z- 0AD4 C3 C2 ZA 0At? 06 3A 0AD9 50 34?e READ 3480 RD54 34S0 ALTRD2 IOU 35e0 RD5 LD 351e IN 352e 352·0 RD51 3540 3550 3560 35?0 3580 35S0 3600 3610 3620 Rt5e, 3630 RD57 3640 RD~~, 3650 0ArA DI) 02 0AtC E6 0F lADE C2 90 0B 1AF.'1 1r JAE2 14 3€70 3660 0AE3 36ge 15 ZAE4 C2 DA e'A tlAE7 05 0AE8 C2 D9 0A eA EE CD 4F eA 0AEE 3E 02 0AF0 D1 0AF1 15 0AF2 C2 B:a 0A 0AF'5 C9 0Ai'6 CD 15 0A 0AF9 41 0AFA CD 15 0i1 0AFD 59 0AF'E 0B01 !ZB02 0Be5 0B08 0B09 0B0A 0B0D 0:E0E _ 11 1 0E11 * 342e ,:~ 343(2 ':( CD 15 0A 51 CD 15 0A CD 1= loA 97 84 C2 Be 0A 85 C2 :BC 0A '11 0B11 7B 3=END OF TAPE OR JAM ENTR! POINTS: READ - NORMAL EN1RY ALTRD - DECK ,ILL BACKSPACE FIRST, USER MUST SUPPLY RETRIES A:l~D2 - NORM~L, EXCEPT USER MUST SUPFLY RETRIES. LD D, 1 e.n RETRIES PUSE DE RETRIES, MODE 3660 3700 371e 3720 3730 3740 RD2 3750 37E0 RtS 377.0 3780 3790 RL52 3see 3810 3820 3530 3840 3850 386e 3870 3860 3t~0 3900 3910 3920 3930 3940 3950 * ~~ * RD54 EL,0D T~PEIN RESE'I eRC STAjUS D,A C,0EeE REAr CALL CMDOU'I A,D STOP? LD ANt e4H JP Z,RD50 NO A,4r .4 SECONDS LD CALL DELAY D,0D STA':'US=0 LD RD51 JP LD B,3AF. 8 SECOND TI~EOUT LD D,? IN TAPEIN STATUS A\JD eFR READY? NZ,RD10 YES JP DEC DE INC D DEC D NZ,RD53 JF DEC B JP Nl,RD57 CALL RE'I.!IND LD A,2D ERROR=2 POP DE RETRIES, MODE DEC D NZ,RD54 JP RET CALL GET IDE LD B,C CALL GET IDL LD E,C COUNT CALL GET LD D,C eRC1 CALL GET CALL GET CRC2 CRC=0? SUB A ADD H JP NZ,RD5 NO ADD L JP NZ,RD5 NO BE TAPEID COMPUTE -HL IDR =XY A,E LD LI:- LD ~_C_SS_B_-5_9_______________________________ (~~ __ ~~~~~ O_~~O __ O~O~_____) O_ _ __ po box 6528 denver, colorado 80206 (303) 777-7133 -ZE1Z' t:..:-. 1." . J. i .-. -i H 1~' C" ..' 01:.1 f t'F ir:17 E} ~ - .. -r r ;::ftr 2S'(2 3LJ:r T ~'. l..IJ.J li 7 ~ C"~ IT I" A A,} '-- .... ,,~ ~ '- ,... .- (t:. 4liJ;Z I. ~ ~=-l~ 9C 4rlZ 5~: Z::lp.. ~ry .~ 4(~::' , ell? 29 e}; 1 C e:tlD I :i AtI· , 4e~~z "0 t:: ..... rr t::::: r· ., 4 0.: ':! 4~ ",2 p, Tl' /I ,'} r. !"\.I.: l lflF 29 ~~t,? e'=lF '"'C ~, 4~70 eF2~ 7C 4e22 4e,ge A ~ :. l-. :;1II J? k:E ~lee J? 2E lE2E C€ 'L't:.,... ~E2A FA 32 01: el:2D FE 04 411e CPL 412~ ArD JP CF J? 2F21 CA ei:24 t'''' -~ ;s·t 2'1 ~ -, o..,JJ e·l~7 (~ 0f2? 'E'A ..... \.1 'Q .- 0A CD ?A eA e·E~·2 (Z FC ". A eb:'E 1C ~lZj(, ~1~~ 41:Z, 41t0 I~3 0l-"'~ I ..... \.. ....... 41~'~' I [,1 0E39 ~lE? 41'~~ ~2.ee 421e 1:2 lD e:t2A CA 45 i? ~ ~ ..... 7. ~ T\ .I.J e,E~F ce e€ CD E8 eA 1;''' .wL 0A ~:E:42 Z::~=' ~2 424~ 2E4f 1)1 42:'i? el:47 c==...: 0~4E 2A B3 eE~:: £5 e:t4C ~1 ei. eE4? C1, 1~ .. r 0l:~2 1v 1l1:::2 1D ,...,.. 21:.::4 :. !' 422v 11[6 42EZ lA ee eA ~'b 4270 42 ~V) I;~ ~ ~ ~ t. ~t j. ~ .:. :. . 'I' P. EG I S::;:1-: ~ ~ .... . c..... ....7. 43f0 43'('0 -J L.,I:-l 2D CCMFUTE FF rELAY COMP ALrl+1 FOrt ,...,~ t::. ., M,ID;3 4D GREATER THA!\ THRESHCLj)'l NO R"'~ ...J .... C y=e? YES i~ 4ZEe Ri:S: rEC (:?),EL S~~'lCF cae ,PCI~';~~::" (EL).C STORE. DilLA 13Urv:? POINTER h~ (S?),FL S~'ITCE C~C. POINT'S2 DECREMENl CCl: ~T I 4~·SiZ JP NZ,RD56 44e0 POP PC 4410 442e· ..,. .. INC ~x ADJ:iST ST ACt. POI~!ER 0bf4 CD 15 ZA e:bE7 DE e2 443~ 444~ 0B69 lF eBfA DA ?B 0E 44:0 tirlA 4460 JP C.ALTRD YES 4470 44E0 RHA liRA A 013€E 1F 0Ber DA 9f CSSB-60 I fJ.,F. PCP FC CCUNT CALL GE'I' CA1L GET 'IAFEIN STArus I~ 0E72 ~? 0B73 E4 1 ....... ~ ~z,::r~~ 45ee JP SUE 4:110 ADD 4490 ! ! 1 , ~·4 .... ? E 43~0 eB r .~.:. J y C E 71 eBeD IF ... .... 1 ~~C ~rt 2I~~ eA • ll::'; , ~:- I ~ 4~G0 ~'y ~~ \.I.'-I! .. J. CALL FR JF RDZ B,D COUNT 1L ,v'I ......... ,.... ?OP !)E ~ETRIES, • J\J.LI~ CCUNT PuSH Fe EL, (POI~Iii) LL :>TT c:: :: PL 1] hL,en RESET eRC CALL GET ",,' et v !.L..,I" ... €~ 4~40 ZE5C C2 4F ZB~F Cl 016e Cl 0Et1 er 15 ~!, ... AI'L 4330 ~3 .. ~ ~=j'~/;:' .~ DFC JF .... v eE:,A 0Etf ,- : ) II. :"If'';I3'IF.5 F~,E1 1. E Z.?]Y3 ~~ e:O:9 t 4 .. , {:. M,RL5 CALL Fl f;Et7 ~!.. ~ I '" u ....... 42s;e 43ze 431e ~ P, I D2 ';F 42~e rr: v'- , '.II ~fJe\C', .:l.~ .- ... II' tl.(~:'F) .£.J_ \ (lV~itRljN? STOP? C,RD11 YES A A H (iliJl@~~ ) po box 6528 denver, colorado 80206 (303) 777-7133 eh74 C2 7F 0E r1E '('7 E5 "78 CA 85 0B lI.It7E ~,E e:e:S7L: CD 6E: 0A ~li 01 0138e u_ i2:B62 C3 I i eA ZBE:: 50 e:a8f 15 0:E57 CD 15 0A eEfA 14 058] C2 87 eE8E 07 0BEF C9 0:090 Ef eB 0B~2 CA F6 eA 0139: I i 0B9f CD 4F 0A e.ES9 2E 123 ZE9B C3 Fl Z,RD19 GREATER THAN 1 FLOCK A,5D FR A,lD ERROR=l JP LL DEC RD2 I,] D I i~C J? I' IN Cli EMENT SAVEL CuUNT ,4c4i2 SUB 11 ERROR=0 465? HET 4=2Z 4:40 45te 4560 4:·70 4580 4~,90 4600 4610 4620 4630 ALTRD rtD19 P.~9 4660 RDll6 124- ~A NZ,ALTRD L JF ADD JP LD CALL LD 45212 4670 46E0 4E90 4710 4-710 CALL GET Al~D JP POP Rl;ll NZ,aD9 NO SAVE COUNT DECREMENT SAVED COUNT STOP? Z,RD52 NO RETRIES, MOtE LE e'4 E CALL R~wIND ERROR:;;· A,3D Lf JP RDE illn:@ ) ~_____________________________ ~~__ o_@~~~~_o~~_O~O~___ _ CSSB-61 ( DO box 6528 denver colorado 80206 (303) n7-7133 8~8~ 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. PHI-DECK DEMO SOFTWARE Programs are loaded via AUDIO CASSETTE. At completion of a successful load, a listing of Phi-Deck Command options will be displayed. In addition to the options displayed on the screen, there are also three options possible - "R", "S", and "P". "R" will return control to 8~8~ OPS System options which include: 1 READ Cassette - Read an Audio Cassette 2 WRITE Cassette - Write an Audio Cassette 3 TV Storage Dump - TV Display of Memory in Octal 4 Keyboard Program - User may program in Octal 5 PHI-DECK OPS "s" will display memory as option 3 in 8~8~ OPS System. "P" will allow user to program same as option 4 in 816816 OPS System. Reset will return control to Phi-Deck Commands. "P", "R", and "s" will operate also when in Program, Storage Dump, or Phi-Deck OPS. Phi-Deck Option "#" allows user to select any of four decks (f,J'-3) by first pressing shift and # then the desired deck number. To return to Phi-Deck OPS press Y. The deck number selected will be displayed in Options listing upon return. Phi-Deck Option "I" will erase a tape on the selected deck. Phi-Deck Option "2" will fast reverse the selected deck. Phi-Deck Option "3" will fast forward the selected deck. Phi-Deck Option "4" will place all decks in standby. The capstan motors will be turned off. Phi-Deck Option "5" will stop the selected deck. Phi-Deck Option "6" will issue a read command to the selected deck. This will not read data from the tape. Phi-Deck Option "7" will issue a record command to the selected· deck. This will not record data on the tape. Phi-Deck Option "8" will record 256 byte blocks of data in a fixed pattern. P!1i-Deck Option "9" will read 256 byte blocks of data in the same pattern as recorded in Option "8". An "e" will be displayed on the monitor for blocks in error and a "g" for good blocks. Page 015 is being used as a 256 byte buffer in the copy tape routine. Option "0" will copy a tape from deck #0 to. deck #1. This is not intended as an efficient method of duplicating Phi-Deck Tapes, only as a demonstration of Phi-Deck routines. ~_C_(S_SB_-_62_ _ _ _ _ _ _ _ _ _ _.--_ _ _ _ (ilifi@~~ ) po box 6528 denver, colorado 80206 (303) 777-7133 CHANGES TO 8~8~ OPERATING SYSTEM FOR PHI-DECK DEMO LOC ~~5 112 ~~5 113 ~~5 ¢¢5 ¢¢5 ~~5 ¢~5 ~~5 ~¢S ~~5 ~~5 ~~5 ~~5 ~~5 ~~5 ~~5 271 272 273 274 275 276 277 3~~ 3~1 3¢2 3¢3 3~4 3~5 3~6 ~~5 3~7 ~~5 31~ OBJ OPERAND COMMENTS ~¢7 ADDRESS JUMP FOR KEY 5 ¢16 265 SPACES 5 24~ P H I 32¢ 31¢ 311 24~ 3~4 D E C 3¢5 3~3 313 24¢ 317 32¢ 323 K 0 P S RETURN ~~¢ 17~ ~~1 ~~4 ¢~7 ¢~3 257 ¢¢3 26¢ ¢9f3 ¢~4 176 ~~4 177 ¢¢3 ~~5 ~¢~ 3¢3 17¢ ¢¢7 ~~5 ~~2 OP 17~ ¢¢1 ~~3 ¢¢5 ¢¢1 LABEL ~¢5 ¢~5 __ ~_C_S_S3_-0_-3_____________________________ C~~o_~_~~O_~_O_~~O_O~~O______) po bo~ 6528 denver, colorado 80206 (303) 777-7!~_ 8~8~ LOC ~~7 ~~~ ~~7 ~~2 ¢~7 ~fi15 '1'17 (11(/ ""7 '112 ""7 ~'l5 ,,"7 '12rJ (121 "en (1"7 '124 Cl'17 "26 '1'17 '13C1 "'17 "33 OBJ LABEL OP OPERAND COMMENTS ~76 ~¢¢ ¢62 26~ ~12 COpy HVI STA CALL MVI STA CALL SUB STA IN ANI JZ MVI STA LXI SHLD LDA STA MVI CALL PUSH MVI CALL POP CPI JZ CPI RZ HLT IN A, ~ DECK REWIND A,l DECK REWIND A TEMPID TAPEIN SET DECK ~ STORE DECK # REWIND DECK ¢ SET DECK 1 STORE DECK # REWIND DECK 1 CLEAR A INITIALIZE ID WAIT FOR NOT BUSY 346 rJl¢ 312 1¢1 rJrJ7 '176 '1¢1 ANI JZ ~lrJ (162 '141 '142 '172 '162 '174 '162 17'1 376 STA LXI SHLD LDA STA INR STA MOV CPI JZ MOV 315 "76 "62 315 227 '162 333 117 ~12 ""1 26" (112 117 "12 166 '1'17 "'12 '124 '1'17 (176 (1(1" ~12 "62 26'1 (112 rJ,,7 '14'1 '141 (1(1" (115 (142 263 (112 '172 166 '1"7 '162 261 (112 '1(17 (1(17 '1'17 rJrJ7 '1'17 rJrJ7 rJrJ7 '1'17 rJ(17 rJ¢7 '1'17 (1'17 rJ(17 rJ'17 '146 '151 '154 rJ56 rJ61 '162 '164 '167 rJ7rJ f/72 '175 '177 1rJrJ 1(11 rJrJ7 1'13 rJ~7 lrJ5 '1'17 110' ,!rJ7 112 '1rJ7 115 rJ¢7 12'1 '1'17 123 rJ¢7 126 '1'17 131 rJrJ7 132 '1'17 135 ~rJ7 136 ~¢7 14¢ ¢¢7 143 REDBLK 346 '11" '1"7 '135 (1(/7 '143 PHI-DECK DEMO SOFTWARE '136 (1(1(1 315 271 '112 365 '116 36'1 315 233 rJ12 361 376 rJrJ'1 312 I'll '1'17 376 ¢¢2 31¢ 166 333 ~rJ2 26'1 '112 '1'1(1 '115 267 '112 166 ¢rJ7 265 0'12 166 rJ¢7 rJ~¢ 312 151 ¢¢7 15¢ WRTBLK HVI ~1'1 REDBLK A,f/ DECK H,BUFFER POINTR TEMPID IDR E,¢ READ PSW C, 36'1 CMDOUT PSW ¢ WRTBLK ¢rJ2 TAPEIN WRTBLK A,l DECK H,BUFFER POINTW TEMPID IDW A TEMPID A,B ¢ X256 L,B SET DECK " STORE DECK # SET UP POINTER STORE POINTER ADDRESS SET UP ID SET UP RF.AD HODE READ A BLOCK SAVE A STOP DECK RESTORE A ERROR NO BLOCK FOUND? NO, FINISHEr: HALT BECAUSE OF ERROR WAIT FOR NOT BUSY DECK NUMBER CHANGING SET DECK 1 SET UP POINTER SET UP ID INCREMENT ID SET UP COUNT 256? ~_C_S_SB_-_64________________________________ (~iliffi@ ___o_@_~~o~o~~~o~~o_______) po box 6528 denver, colorado 80206 (303) 777-7133 LOC -OBJ LABEL 144 141:) 151 153 155 160 162 165 166 170' 173 174 177 0'46 30'3 0'46 0'56 315 376 312. 166 .0.0.0 .061 373 0'41 0'72 0'0'0' 155 0'0'7 0'0'1 0'0'0' .0.07 2.02 .00'7 20'4 rJ.07 20'7 0'.07 212 0.07 215 .0.07 217 .0.07 222 .00'7 224 .0.07 227 .0.07 23.0 .0.07 233 .0.07 234 .0.07 235 0'.07 237 007 240 007 242 007 243 007 246 0~7 247 366 0'62 315 315 376 322 376 332 365 315 361 .0.07 3.06 157 046 176 062 043 176 260' 342 0'45 0'.00' 272 155 2ErJ 256 ~rJ7 25.0 0.07 253 1$1$7 256 01$7 260 ~62 007 0'0'7 0'0'7 0'0'7 0'rJ7 0'0'7 rJ0'7 0'.07 0.07 0.07 0'07 0'0'7 0.07 007 263 .01$7 265 01$7 270 1$1$7 272 0'0'7 274 0'.07 276 ~~~ ~11 X256 CALRCD 0'0'rJ rJ24 0'0'7 .0.0.0 .0.0.0 rJrJ2 KYBD .01.0 .00'7 .021 .0.02 127 007 254 007 255 .0.07 303 * * 376 243 302 212 00'7 056 314 31$3 240 0'.07 OPERAN[) MVI JMP MVI MVI CALL CPI JZ HLT H,.0 CALRCD H,l L,.0 RECORD .0 REDBLK LXI EI LXI LOA SP LOAD STACK POINTER H (0'12 260') LOAD A W DECK # RECORD BLOCK TEMPID 316 0'0'7 26.0 .012 0'0'7 0'.02 0'.02 COMMENTS OP C'HAES ORI STA CALL CALL CPI JNC CPI JC PUSH CALL POP RLC ADI MOV MVI MOV STA INX MOV STA JMP CPI JNZ MVI JMP CONVERT TO ASCII PLACE DECK # IN MESSAGE CALL TV EDITOR CALL KEYBOARD NUMBER? NO, JUMP TO LETTERS < .0 ? YES, JUMP TO CHARS SAVE A ERASE RESTORE A ROTATE LEFT PRODUCE L INDEX 260' .00'7 342 TVEDIT 272 LETTER 260' CHARS A ERASE A 127 L,A H, 0'0'7 A,M H INDEX STORE A INCREMENT H & L H A,M # ? 243 KYBD L, 314 30'1$ 1$13 0 1 2 3 217 0'10 211 0'1.0 2.03 .01.0 __ SELECT SELECT SELECT SELECT l\.DDRESS ADDRESS ADDRESS ADDRESS ~_C_SS_B_-6_5~______~_____________________ C~~ ~~~~~ O_®=O_~_O~O_______) o_ _ __ po box 6528 denver, colorado 80206 (303) 777-7133 LOC OBJ ¢~7 3~~ 225 233 241 247 311 322 115 377 243 fiJrJ7 0'0'7 0'0'7 rJrJ7 0'0'7 30'2 30'4 30'6 310' 312 ¢~7 314 ~0'7 316 ~r)7 317 r)r)7 32r) 24r) r)~7 323 345 354 r)~7 ~r)7 rJrJ7 W/7 rJrJ7 rJr)7 rJrJ7 rJrJ7 rJrJ7 rJrJ7 rJrJ7 r)r)7 rJrJ7 r)r)7 rJrJ7 rJrJ7 rJ0'7 rJ0'7 0'rJ7 rJ0'7 321 322 323 324 325 326 327 240' 30'4 LABEL fiJ1fiJ 0'l~ 0'1~ !11rJ ¢13 ~13 ~14 OP OPERAND COMMENTS SELECT SELECT SELECT SELECT SELECT 8 9 SELECT # SELECT ERASE # 4 5 6 7 S e 1 D e 345 343 353 k 331 332 333 334 335 336 337 rJr)4 SPACES 311 356 n 340' 240' 240' 26rJ 0'11 26r) 24rJ 3r)3 33rJ 341 342 343 344 345 0'~7 346 0'r)7 347 c I 240' 325 363 345 U s e 0 SPACES r) C 357 0 rJ'17 350' 36~ p '1~7 351 '1~7 352 371 y 0''17 353 0'rJ7 354 324' 341 T a ~¢7 355 36~ p r)r)7 356 345 '125 261 24¢ e r)~7 357 r)r)7 36¢ '1~7 361 ADDRESS ADDRESS ADDRESS ADDRESS ADDRESS ADDRESS ADDRESS 240' SPACES 1 ~_C_S_SB_-_66__________________________________ (~~ ___ o_~_~~O_a_o_1~~ ~g~~~m_______) po box 6528 denver, colorado 80206 (303) 777-7133 . - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - _.. _....., j LOC 007 362 f)f)7 363 f)f)7 364 ~f)7 365 '1~7 366 '1'17 367 '1'17 370 '1~7 371 C)C)7 372 CiCi7 373 WJ7 374 JJJJ7 375 JJJJ7 376 C)C)7 377 Ci10 ~Ci~ Ci10 001 010 010 010 010 010 010 010 010 010 010 010 010 002 003 004 005 006 007 01' 011 012 013 014 015 thd 016 010 $617 01¢ 1t12¢ ~1Jt1 ¢21 ~1~ ~22 ~1~ ~23 ~1~ ~24 OBJ E r 262 24'1 3f16 95195 9537 F a s 341 363 364 t 24~ R 322 345 366 345 362 363 345 022 263 240 306 341 363 364 e v e r s e SPACES 3 F a s t 24~ F 3916 357 362 367 341 362 344 323 364 341 356 344 342 371 ¢27 ,032 a s e SPACES 2 ~31 ~1~ JJ3~ ~1~ JJ31 ~1~ COMMENTS OPERAND 3~5 ~22 ~1~ ~33 ~1~ 9534 951~ 9535 ~1~ 9536 OP 362 341 363 345 ~25 ~1~ ~26 ~1~ ~27 Jt11Jt1 LABEL 0 r w a r d SPACES 4 264 24~ S t a n d b Y SPACES ~_C_SS_B_-6_·7_______________________________ ~(~ __ ~~~~O~ __ O_~~O~O~O~______) o_ _ po box 6528 denver, colorado 80206 (303) 777-7133 LOC {tl{t {tl{t (11(j 111{t (11{t 11111 {tIll 11111 111{t 11111 {tl{t 111{t 111{t 111{t {t4rJ rJ41 1142 1143 ~44 OBJ ~32 1147 266 {t52 ~53 ~54 ~55 ~1{t ~56 111{t .~57 OP OPERAND COMMENTS 265 24{t 323 364 357 36{t ~45 ~46 {t5~ ~51 LABEL 5 S t 0 P SPACES 6 24~ R 322 345 341 344 e a d ~32 SPACES 7 267 24~ 322 345 343 357 362 344 d ~1{t ~66 ~1~ ~67 {t3~ SPACES 27~ 8 fll~ ~7~ 24{t 322 345 343 357 362 344 24{t 324 345 363 364 fll{t fl6{t 111~ {t61 111~ ~62 111{t fiJ63 fl111 {t64 111{t ~65 fll{t fiJ71 {t1~ ~72 ~73 fl1~ fl74 ~1~ fiJ75 fll~ ~76 ~lfiJ ~77 (tl~ 1flfl fll~ 1f11 fll~ 1~2 fiJl~ lfiJ3 ~1~ 1f14 11111 ~1~ ~1~ ~1~ ~1~ ~1~ ~lfiJ ~1~ ~1~ 1{15 1{16 1(67 11f1 111 112 113 114 R e c 0 r R e c 0 r d T e s t 24~ 304 341 364 341 cf16 271 D a t a SPACES 9 24(1- 322 R __ ~_C_S_SB_-6_8____________________________~_C~~ ~~~~~ a_~~o~O~O~____~) o_ _ __ po box 8528--denver. colorado 80201 (303) 777-7133 LOC ~1~ OBJ 115 116 117 345 341 344 ~1~ 12~ ~1~ 121 ~1~ 122 ~10' 123 24~ ~1~ ~1~ ~1~ ~10' ~1~ ~1~ ~10' 0'1~ ~1(t 124 125 126 127 130' 131 132 133 134 135 136 137 ¢1¢ ¢1¢ ¢1(t (t1(t ¢1¢ ¢1¢ 14~ ¢1¢ 141 ~1¢ 142 ~1~ 143 ~1~ 144 ~1~ 145 0'1~ 146 ~1~ 147 ¢1~ 15~ 0'1~ 151 0'1¢ 152 ¢1~ 153 ¢1~ 154 ~1~ 155 ~1~ 157 01{.~ 161 LABEL OP OPERAND e a d 324 345 363 364 240' T e s t 3~4 D a 341 364 341 127 320' 310' 311 t a SPACES P H I 24~ 3~4 D E C K 30'5 30'3 313 24~ 3~3 C 317 315 315 30'1 316 30'4 323 0'~~ 366 ~4~ 376 363 312 0'0'0' 0'0'3 0 LETTER ORI CPI JZ 363 0'0'3 0'0'0' ~4~ 010 164 ~1¢ 166 376 362 312 ~~3 0'0'5 CPI JZ 362 0'0'5 0'0'3 ¢1¢ 171 010 173 376 36{'6 312 0'65 f6f64 CPI JZ 0'04 0'65 ¢1¢ 176 0'10' 177 317 315 0'0'~ 0'~7 RST CALL 0'1¢ COpy CSSB-69 COMMENTS CPY 36~ M M A N D S RETURN PRODUCE LOWER CASE 's' ? JUMP IF ' S' TO STORAGE DUMP 'R' ? JUMP IF EQUAL TO 8~80 OPS SYSTEM 'P' ? JUMP IF EQUAL TO KEYBOARD PROGRAMMING COpy TAPE ROUTINE ______________ c~@@_o_~~~_o~~~o_o~o____) po box 6528 denver, colorado 80206 (303) ~~7133 LOC {11~ 2~2 2~3 OBJ LABEL 317 {11{1 ~16 24~ {11~ 2~5 315 233 317 {11~ 21~ {11{1 211 {11~ 213 {11{1 216 {11~ 217 f11~ 221 f11~ 224 ~1~ 225 fllf1 227 f11~ 232 fll~ 233 ~12 ~16 2~~ FREV 315 233 ~12 317 ~16 354 315 233 fl12 317 ERASE ~16 16~ STNDBY 315 233 317 ~12 ~16 36~ (11f1 235 ~1~ 24f1 f11~ 241 315 233 317 ~1~ ~1f1 f11~ ~1f1 315 233 317 243 FFWD fl16 STOP ~12 34~ READ ~12 246 247 251 f11f1 254 f11f1 26~ f11~ 262 ~16 ~1~ 264 315 233 f112 ~1~ ~16 35~ RECORD 315 233 fl12 317 f1~6 ~f1f1 RCDTD 35f1 267 11~ ~1~ 27f1 fl1f6 273 315 ~1~ 333 fI~2 346 flfI3 RCD 25~ ~12 STATUS 275 ~1~ 277 312 273 ~1f1 3{12 3{13 ~~5 3~2 267 fll~ ~1~ 3~6 fl26 ~~2 fll~ fl1~ f11{6 31~ 11~ f11~ f11~ 311 314 315 333 ~~2 ~1{6 316 346 f1~3 f11f1 32~ 312 314 ~1~ LOOP 25~ ~12 STAT OP RST MVI CALL RST MVI CALL RST MVI CALL RST MVI CALL RST MVI CALL RST MVI CALL RST MVI CALL RST MVI MVI CALL MOV CALL IN ANI JZ OPERAND COMMENTS ~1~ RESTART LOAD C w FAST FORWARD OUTPUT COMMAND RESTART LOAD C W FAST REVERSE OUTPUT COMMAND RESTART LOAD C W ERASE OUTPUT COMMAND RESTART LOAD C W STANDBY OUTPUT COMMAND RESTART LOAD C W STOP OUTPUT COMMAND RESTART LOAD C W READ OUTPUT COMMAND RESTART LOAD C W RECORD OUTPUT COMMAND RESTART INITIALIZE COUNT LOAD C W RECORD OUTPUT COMMAND LOAD C W COUNT OUTPUT DATA INPUT STATUS READY NO, INPUT STATUS C, 24~ CMDOUT ~1~ C, 2~~ CMOOUT ~1~ C, 354 CMDOUT ~1~ C, 16~ CMDOUT ~n0 C, 36~ CMDOUT ~1~ C, J4~ CMDOUT ~1~ C, 35~ . CMDOUT ~1~ B,~ C, 35~ CMDOUT C, B OOUT 2 3 STATUS DEC JNZ MVI B RCD 0, 2 MOV CALL IN ANI JZ C,B DOUT 2 3 STAT '----_C_SS_B_-_70_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ YES, DECREMENT COUNT 256? YES, OUTPUT ADDED CHARACTERS TO ALLOW TIME FOR DELAY LOAD C W COUNT OUTPUT DATA INPUT STATUS READY? NO, INPUT STATUS ~~~ ) po box 6528 denver, colorado 80206 (303) 777-7133 LOC (11(1 323 (11(1 324 ~1~ 327 ~1(1 334 ~1(1 336 (125 ~1~ 34~ (11~ 343 315 333 346 312 315 171 27(1 3(12 ~1~ ~1~ ~1~ ~1~ ~1~ ~1~ '- 345 347 352 355 356 357 LABEL OBJ 3~2 31~ ~1~ 3~3 26~ (11(1 ~~6 ~~~ ~16 RTD 34(1 233 (112 ~~2 ~~3 343 (11~ 217 (112 262 (113 STATR OP OPERAND COMMENTS DEC JNZ JMP MVI MVI CALL IN ANI JZ CALL MOV CMP JNZ D LOOP RCDTD B, ~ C, 340 CMDOUT 2 3 STATR DIN A,C B ERROR YES, DECREMENT LOOP COUNT ~1~ 362 (11(1 363 (11(1 366 (1(15 3(12 343 (11(1 {;J41 275 (113 DEC JNZ LXI B STATR (11(1 371 (11(1 374 315 (145 (1(12 3~3 334 (11(1 CALL JMP TVEDIT RTD CSSB-71 H RECORD NEXT BLOCK INITIALIZE COUNT LOAD C W READ OUTPUT COMMAND INPUT STATUS READY? NO YES, INPUT DATA MOVE DATA TO A COMPARE TO COUNT JUMP IF NOT EQUAL TO ERROR DECREMENT COUNT 256? NO, READ NEXT BYTE OUTPUT 'g' IF END OF BLOCK CALL TV EDITOR READ NEXT BLOCK ~) ~_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ I~~_o_@~~~O~_o~@~~_O~O~_ __ po box 6528 denver, colorado 80206 (303) 777-7133 LOC OBJ LABEL OP OPERAND COMMENTS ERROR LXI H OUTPUT Ie' IF ERROR TVEDIT CALL TV EDITOR READ NEXT BLOCK ~13 262 fd41273 {113 {113 f,113 f,113 f,113 f,113 {113 f,113 265 27f,1 273 274 275 276 3f,1{1 315 f,145 f,1f,12 3f,13 334 f,11f,1 345 f,1f,1f,1 347 f,1{1f,1 f,141 335 f,113 CALL JMP RTD DB DB DB DB LXI H f,113 3f,13 f,113 3~6 315 f,145 {1f,12 3f,13 177 {11f,1 CALL JMP TVEDIT CPY f,113 311 f141 361 {113 LXI H f,113 314 {113 317 315 f,145 f,1fd2 3f,13 26f,1 {11f,1 CALL JMP TVEDIT RCDTD fd13 322 f,141 f,1f,17 f,114 LXI H f,113 325 f,113 33{6 315 f,145 f,1f,12 3{13 334 {11{1 CALL JMP TVEDIT RTD ~13 377 {1f,17 324 341 36f,1 345 24f,1 3f,12 345 351 356 347 {113 {113 f,113 f,113 f,113 f,113 f,113 f,113 f,113 f,113 f,113 f,113 f,113 fl13 0'13 fl13 0'13 0'13 0'13 0'13 0'13 335 336 337 34~ 341 342 343 344 345 346 347 35f,1 351 352 353 354 355 356 357 360' 361 362 345 Ie' f6 RETURN 347 'g' f,1 RETURN LOAD COpy TAPE MESSAGE AREA CALL TV EDITOR JUMP TO COpy TAPE ROUTINE LOAD RECORDING TEST DATA MESSAGE AREA CALL TV EDITOR JUMP TO RECORD TEST DATA ROUTINE LOAD READ TEST DATA MESSAGE AREA CALL TV EDITOR JUMP TO READ TEST DATA ROUTINE ERASE SPACES T a. P e B e i n g 24~ 30'3 357 360' 351 345 344 0'~0' 377 f1f,16 C 0 P i e d RETURN ERASE SPACES ~_C_SS_B_-7_2_______________________________ ~~ __o_~_O~~~~_O~~~O~O~____~) po box 8528 denver. colorado 80206 (303) 777·7133 LOC {II 3 {II 3 {II 3 fl13 fl13 fl13 fl13 {II 3 fl13 {II 3 {II 3 {II 3 fl13 fl14 fl14 fl14 fl14 {l14 "14 '14 {l14 OBJ LABEL OP OPERAND COMMENTS 363 364 365 366 367 37f1 371 372 373 374 375 376 377 fI{lf6 flfI1 flfI2 322 3"45 343 357 362 344 351 356 347 24{1 324 345 363 364 24f1 3~4 D fI~3 341 364 341 a t a {I{I4 "S ,,, ", 377 1ft ,~14 {ll{1 ~14 ~11 fl14 0'12 0'14 ~13 0'14 ~14 ~14 ~15 0'14 fl16 ~14 {l17 {l14 "2{1 {l14 {l21 {l14 (122 fl14 (123 {l14 fl24 ~14 fl25 fl14 fl26 ~14 fl27 ~14 fl3f1 fl14 fl3l ~14 {l32 \114 {l33 {l14 {l34 "14 '35 R e c 0 r d i n 9 T e s t RETURN ERASE SPACES T "6 324 345 363 364 240' 3{14 341 364 341 e s t D a t a 24(1 B 3'2 345 351 356 347 24f1 322 345 341 344 (I{I6 e i n 9 R e a d SPACES ~_C_S_SB_-_73~_______________________________ (~~ ___ o_~_~~O~O~~~O~~O_______) DO box 6528 denver, colorado 802061303\ 777-7133 LOC 014 (a'14 (j14 (j14 (114 (114 (114 (114 (114 (114 (114 (114 (114 (114 (114 (114 (114 0'14 (114 (114 0'14 OBJ LABEL OP COMMEN'l'S OPERAND ~~~ RETUIW ERASE ~46 377 323 345 354 345 343 364 24fi ~47 3~4 D (j5!1 !lSI (j52 (j53 !l54 345 343 353 e c 036 (j37 ~4~ (j41 (j42 ~43 (j44 (j45 ~55' (156 ~57 ~6(1 ~61 ~62 ~14 (163 0'14 (114 (114 (114 (114 ~64 ~65 ~66 ~67 (j7~ ~14 ~71 (114 ~72 (j14 0'73 (114 ~74 (114 ~75 (114 ~76 ~14 0'77 0'14 1~~ (114 1~1 ~14 1rt2 ~14 1rt3 (114 1rt4 f814 1rt5 9114 1rt6 0'14 1(j7 9114 11rt 9114 111 ,,14 112 S e 1 e c t k 24~ 316 365 355 342 345 362 N u m b e r ~4~ 25~ ( 26~ ~ 255 263 251 3 ) ~5~ SPACES 3~4 0 345 343 353 e c k 24~ ,• 243 24~ 26~ SPACES f87rt 3rt4 357 356 345 277 24rt 25rt 331 277 0 0 n e ? ( y ? ~Q_~_~~O~_O_~=O __ O_·~O~______) ___C_S_S_B-_7_4__________________________________ ____ po box 6528 denver, colorado 80206 (303) 777-7133 LOC ~14 OBJ 113 251 (114 114 (114 115 ~f/1~ (114 12(1 (114 123 fl14 125 (114 13(1 (114 133 (114 135 {114 137 (114 142 (114 144 (114 147 (114 152 (614 154 (114 157 (114 162 ~14 164 ~14 16(1 (114 171 (141 f/137 f/114 LABEL OP OPERAND TV LXI H,f,114 LDA ORI STA CALL IN CPI JPC CPI JPC STA ANI STA JMP ORI CPI JNZ DECK f/172 26(1 f/112 366 26f/1 f/162 If/1(1 315 (145 333 f/1(1(1 376 264 322 162 376 26(1 332 133 (162 346 (162 3(13 (114 (1(12 IN (114 (114 342 (1(17 (1(13 26(1 (112 115 (114 (14(1 366 376 371 3(12 115 (114 317 DONE RST COMMENTS RETURN LOAD H & L W MESSAGE AREA LOAD A w DECK # CONVERT TO ASCII STORE IN MESSAGE CALL TV EDITOR INPUT FROM KEYBOARD > '3' ? YES ~37 26f,1 ~14 1f/1(1 TVEDIT ~ 264 DONE 260 IN < '~' ? YES PLACE NUMBER IN MESSAGE (1(17 342 3 DECK TV STORE DECK # JUMP TO MESSAGE CONVERT TO LOWER CASE 'V' ? NO YES ~4(1 371 TV (11(1 ~_C_S_SB_-_75_________________________________ (~~ __ ~_~=O~O~~~O~~O_______) o_ _ po box 6528 denver, colorado 80206 (303) n7-7133 8f18~ LOC aBJ OP * '* '* .* '* * * * * * '* '* '* • '* '* * * 4r "" .119'" ",2 119'5 119'6 fJ9'9 '9'A ,9'0 '9ilE ,9,F '91, fl913 {l91S '917 ,91A '91B '91C ,91F ,92{l '921 '923 '924 ~'927 "928 '929 '92C lUI '* RECORD lasS ES D5 RCD20 2ABS,A 2B 22Bl,A 23 70 B4 CA29,9 16'B IE' 1 C07BflB 3C 30 CA36,9 Dl El 'E9' RCD12 RCD21 RCD27 47 CD9B,A 78 C9 CD4F,A ,EEC DRIVER SOFTWARE (HEX) OPERAND COMMENTS RECORD (UNTIL COUNT EXHAUSTED) DECK IS STOPPED AFTER ~TURN INPUT: DECK - DECK NUMBER LOCATED IN MEMORY POINTW - LOCATED IN MEMORY (FIRST DATA BYTE) lOW - LOCATED IN MEMORY (FIRST BLOCK) COUNT - REGISTER H,L OUTPUT: PQINTW - LOCATED IN MEMqRY (LAST DATA BYTE + 11 ERROR - REGISTER A . fI - NO ERRORS 1 - CRC ERROR IN BLOCK lOW - 1 2 - BLOCK IDW-1 NOT FOUND 3 - TAPE END OR JAM lOW - LOCATED IN MEMORY (LAST BLOCK + 1) ALTERED REGISTERS - A,B,C,D,E,H,L,IDR, POINTR MVI 0,1 ERASE = 1 E,S STOPS = 5 MVI H . COUNT PUSH PUSH o ERASE, STOPS lOW LHLD DCX lOR = lOW -1 H SHLD lOR INX H lOW = , ? MOV A,L H ORA RCD10 YES JZ MVI 0,11 RETRIES = 10 E,l MVI CHECK MODE CALL ALTRD INR OCR JZ POP POP MVI A MOV CALL MOV ERROR? A RCD13 NO ERASE, STOPS COUNT STOP SAVE ERROR o H C,90H B,A CMOOUT A,B RESTORE ERROR RET RCDla CALL MVI REWIND C,ECH ERASE ~_C_S_SB_-_76_______________________________ ~(~ __ ~~~~~ O_~~O~O~O~_____) Q_ _ __ po box 6528 denver, colorado 802061303\ 777-7133 LOC OBJ Sl92E 11931 )1933 51936 1'937 (1938 1'939 {l93C CD9Bf6A 3E2a CD81f6A D1 D5 15 CA49f69 iSEEC ~93E CD9B~A (1941 D5 ~942 CDD~9 rtJ945 1if946 Dl C338f19 11949 1194& 1948 1if94C {l94D ~950 rtJ9S1 f'9S2 {l9S5 '956 Sl9S7 fl9SA rtJ95B ~9SD ~95E f695F "962 '963 1966 1967 "969 fl96C gJ96F ~971 f6973 1974 ,,977 "978 1979 1J97C 1J97E fl981 "983 1986 '987 "988 '989 '9SA CSSB-77 ~l 01 D5 E5 2AB7f6A 15 14 C2D4'9 1D LABEL RCD13 RCDlS RCD14 RCD19 lC CA81119 43 lEfI~ D5 EB 2AB1f1A 23 22B1,A RCD18 EB flEE 8 CD9B¢A CDDArtJ9 DB~2 EGliD D1 CASflfl9 01 10 C2f1Sfl9 3E,3 C32f1f19 3asS CD68"A E1 D1 DS ES 97 ReD17 RCD2G OP OPERAND CALL MVI CALL POP PUSH DCR JZ MVI CALL PUSH CALL POP JMP POP POP PUSH PUSH LHLD OCR INR JNZ OCR INR JZ MOV MVI PUSH XCHG LHLD INX SHLD XCHG MVI CALL CALL IN ANI POP JZ POP OCR JNZ MVI JMP MVI CALL POP POP PUSH PUSH SUB CMOOUT A,40 DELAY D D D RCD14 C,ECH CMOOUT D COMMENT 4 SECONDS ERASE, STOPS ERASE (ERASE - 1) BLOCKS ERASE l;).ECRDl D RCD15 H D D H POiNTW 0 0 RCDIG E E RCD17 B,E E,rtJ D ERASE, STOPS COUNT POINTER COUNT HIGH = ~? NO YES COUNT = COUNTL COUNTL = fI SAVE COUNT IDR H IDR C,E8H CMOOUT RECRDI TAPEIN lIDH D RCD19 D E RCD20 A,3 RCD21 A,S FR H D RECORD ERROR? GET COUNT NO OCR STOPS ~? NO ERROR = 3 APPROXIMATELY 10 BLOCKS ERASE, STOPS COUNT D S A COUNT = f6? (@i@~~ ) po box 6528 denver, colonado 80206 (303) 777-7133 _LOC g98B g98C {t98F {t99{l {t993 {l996 {t999 {l99B ,,99D "9A,, {l9A1 {l9A2 "9A3 {t9A6 rl9A7 rl9AA "9AC {l9AF (69B{l (69B3 {19B4 (69B5 "9B6 ,,9B7 {l9BA (69BB {l9BC (69BF {19Cj6 ,,9C3 f69G4 {t9C7 {19CA (69CC (69CO (690(6 (6901 {19D4 fl905 JlJ907 OBJ LABEL 82 C293~9 83 CA1F{l9 2AB5~A RCD22 22B1{lA 16~6 iE{ll COBBJlJA 3C 3D 01 CAAAJlJ9 -14 C31'S,9 16111 2AB5JlJA 23 22B5JlJA EB 01 14 15 CAC71'9 15 E5 2AB7f6A 24 22B7,A El C388r19 2AB7f6A JZ OCR PUSH LHLD INR SHLO POP JMP RC025 C321~9 RC01.6 C351)f19 * * * * * * * * * * * CSSB-78 OPERAND LHLO MVI DAD SHLD SUB JMP OCR MYI JMP RECRD1 COMMENT D NO RCD22 E YES RCD12 lOW lOR 0,6 E,l . ALTRD2 =6 RETRIES CHECK f«>DE ERROR? A A 0 RC024 D RC020 NO INCREMENT ERASE D,l lOW MYI LHLO INX SHLO XCHG POP INR OCR 19 22B7(6A 97 15 ADD JNZ ADD JZ LHLD SHLD WI WI CALL INR OCR POP JZ INR JMP RCD24 16~~ -.g6', ~ -ERASE = 1 INCREMENT lIM H ION 0 0 D RCD2S .. COUNTH = ~? YES DECREMENT COUN'1'H 0 H POINTW H POINTW H RCD26 ADD COUNTL TO POINTER POINTW 0,f6 D POINTW ERROR • , A RCD27 DICIUIaIft OOORTH oogrr • • D B,' JeDlI (RECORD -c.B BLOCIC) RECORD OR DAlE OOMMAND MUST BE I~C;UED BEFORE CALLDIG. UNOERRUN MID S'l'OP SHOULD BE CHECKED AFTER ~. INPUTS: DEC)C - IZac NUMBER LOCATED IR MEMORY ID - RBGISTER D,E 00UIft' - REGISTER B (JlJ1=1 BYTE, "'-256 BYTES) r;) ~_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ~I~_o_~~O_o~~~O~O_ _~ po box 6528 denver, colorado 80206 (303) 777-7133 LOC OBJ LABEL OP * * * * * ~9DA (19 DB (19 DE (19DF ~9E2 E5 21 ~~{I~ 4A CD 49{1A 4B * * RECRDI PUSH LXI MOV CALL MOV (19E3 CD42~A CALL ~9E6 ~9E7 (19EA (19EB ¢9EC ¢9EF 48 CD42{1A 54 4D CD42{1A 4A (19F~ CD42~A ¢9F3 (19F5 {l9F6 {l9F7 (19F8 58 E3 4E 23 E3 CD42{1A MOV CALL MOV MOV CALL MOV CALL MOV XTHL MOV INX XTHL CALL ~9FB 05 OCR ~9FC C2F4{19 54 40 JNZ MOV MOV ~9F4 ¢9FF (1A(1~ CD42~A CALL 4A MOV CD42~A CALL {lA(11 ¢A(14 {lA(15 ~A(18 ID r8Ar89 CD42~A ~A~C IC C2{19{1A ~Ar8D ~AI~ ~A13 ~A14 RECDI OCR RECD3 CD42~A CALL POP RET GET CRC IN H,L DATA RETURNED INC A,C,H,L, ALTERED IN TAPE IN * ~A17 {lA19 {lAIC ~AIF ~A2(1 ~A21 DBr82 E6{1F CA15{1A CD8F{lA D5 79 AD * GET CRC COMMENT POINTER - REGISTER H,L (FIRST DATA BYTE) OUTPUT: POINTER - REGISTER H,L (LAST DATA BYTE + 1) ALTERED REGISTERS - A,B,C,D,E,H,L H PUSH POINTER H,{I RESET CRC C,D ID HIGH ALTPUT C,E ID LOW PUT C,B COUNT PUT D,H SAVE CRC2 C,L CRCI PUT C,D CRC2 PUT SAVE COUNT E,B SWITCH CRC, POINTER C,M LOAD DATA H INCREMENT POINTER SWITCH CRC, POINTER PUT B DECREMENT COUNT RECDI NOT ZERO D,H SAVE CRC2 C,L CRC1 PUT C,D CRC2 PUT DECREMENT SAVED COUNT E PUT E INCREMENT SAVED COUNT RECD3 NOT ZERO PUT POP POINTER H El C9 * * ~A15 CALL INR JNZ OPERAND ANI ~FH JZ GET CALL DIN PUSH MOV XRA 0 STATUS A,C L ~_C_S_SB_-_7_9_________________________________ (~iliID® ___Q_~~o~_a_~=o __O~o~____~) po box 6528 denver, colorado 80206 (303) 777-7133 LOC OBJ rlA22 rlA23 rlA2s {lA26 flA27 "A2B "A2B "A2C "A2D flA2E "A2F (lA31 "A32 "A33 rlA34 rlA36 "A37 {1A38 flA39 flA3A flA3D flA3F 6F flA4g flA4J flA42 rlA44 rlA46 rlA49 rlA4C rlA4F {lAS 1 flAs4 {lAS 6 flAs8 {lASB IIA5D "A6{1 flA62 flA64 {lA67 LABEL 1E~7 17 AD 10 C22S{6A 6F CRCA SF E6CfI AC 57 7B E63F AD 67 17 7A D23FflA OE9~ CD9BflA .DBfl2 E6f18 CAs4f1A CRCFIN * * * * PUT ALTPUT * * * * REWIND REWB OE89l CD9BflA DBf62 E6$68 CA69lflA C9 COMMENT MOV MVI L,A E,7 007 TIMES L E CRCA L,A DONE? YES RAL RAL EE~1 DB{62 E6r6F CA42f1A CDA8f1A C31FflA OPERAND XRA OCR JNZ MOV RRC RRC MOV ANI XRA MOV MOV ANI XRA MOV ~F ~F 6F 01 C9 OP REWA * * * * E,A Cf25H H D,A A,E 3FH L H,A SAVE 1 SAVE 2 RESTORE 1 CRC HIGH OONE TEST BIT 7 RESTORE 2 BIT 7 WAS I? YES CRC LCIW DONE MOV A,D JNC CRCFIN XRI 1 MOV L,A POP 0 RET PUT DATA IN REGISTER C CRC IN H,L A,H,L ALTERED IN TAPE IN STATUS ANI flPH PUT JZ OOUT CALL CRC JMP REWIND REGISTER A, C ALTERED THIS ROUTINE WILL GUARANTEE DECK SELECTION MVI C,9f6H STOP CALL OvtOOUT IN TAPE IN ANI 08H JZ REWB MVI FR C,8f6H CALL CMDOUT IN TAPE IN ANI 8 JZ REWA RET FAST REVERSE, FAST FORWARD REGISTER A CONTAINS MULTIPLE OF 100 MILLI-SECONDS DELAY REGISTER A ALTERED ~_C_S_SB_-_8_0_________________________________ ~(ilim@ ___o_~~O~_O~~=O __ O~O~____~) po box 6528 denver, colorado 80206 (303) 177-71.33 LOC OBJ LABEL OP OPERAND (tA68 {1A69 {tA6A {tA6C (tA6F (tA7(t (tA73 (tA7S (tA78 'A79 (tA7A {tA7B {1A7C {1A7E CS FS {1E80 FR PUSH PUSH CD9B~A FRA B PSW C,80H CMOOUT PSW DELAY C,90H CMOOUT B {1A81 {tA84 {tA8S IIA86 IIA87 IIA8A "A8B (lA8E ~A8F {tA91 flA93 {tA9S I6A96 ,A98 gA9A MVI CD81~A CALL POP CALL ~E90 MVI CD9B{1A C1 C9 CS F5 {1EAftJ CALL POP RET PUSH PUSH F1 FF MVI C36C~A 010020 OB 04 OS C2841JA 3D C2811JA C9 3EEF 0301 DB02 4F 3EDF 0301 * * DELAY 01 * * DIN DINA C9 * 'A98 'A9E 'A9F "AAl 'AA3 {tAAS 3ABgJ,A 81 D302 3E9F 0301 C396J1A * * CMDOUT CMDA * 'M8 'AA9 79 0302 ''UAMD lESF C3Al,A ~ABJI ~AB1 00 00 00 * OOUT * DECK lOR COMMENT B PSW C,~H JMP FRA DELAY MULTIPLE OF 100 MS IN REGISTER A. REGISTERS A,B,C ALTERED LXI B,2oooH DCX B INR B DCR B JNZ D1 DCR A JNZ DELAY RET INPUT DATA BYTE (DATA RETURNED IN C) REGISTER A IS ALTERED MVI A,EFH OUT STROBE IN TAPEIN MOV C,A MVI A,DFH OUT STROBE RET OUTPUT COMMAND (DATA IN REGISTER C) DECK IS ORID WITH DATA REGISTER A IS ALTERED LOA DECK ORA C OUT TAPOUT MVI A,9FH OUT STROBE JMP DINA OUTPUT DATA (DATA IN REGISTER C) REGISTER A IS ALTERED MOV A,C TAPOUT OUT MVI A,SFH JMP CMDA VARIABLE DATA AREA OS 1 DECK NUMBER TO BE USED OS 2 READ 10 ~_C_S_SB_-_8_1_________________________________ 0~iliro® ___o_~_~~O~_O_~=O __ O~O~______) po box 6528 denver, colorado 80206 (303) 777-7133 LOC {tAB 3 {lABS {lAB 7 00 00 00 00 00 00 LABEL OP OPERAND COMMENT POINTR lIM POINTW OS 2 2 READ POINTER WRITE 10 WRITE POINTER * * * * * * * * * * * * * * * * * * * * * * * * * * * * fJAB9 fJABB 16fJA 05 ~ABC ~ABF ~AC1 ~AC2 ~AC4 ~AC7 "21'." 08'2 57 $lEErI CD9BflA 7A E6$14 fjAC8 [AACA fjACD ~ACF iJAD2 iJAD4 iJAD7 iJAD9 iJADA * READ RDs4 ALTRD2 RDs RD51 CAD7~A 3Efl4 CD81f1A 16f1f1 C3C2~A 0630 5$1 DBrl2 RDsO RD57 RDs3 OS OS 2 READ ONE BLOCK DECK REMAINS IWNHIHG AFTER RETURN INPUT: DECK - DECK tnJIIIBR LOCATED 1M MEll)RY POIN'R - LOCATED 1M MIMORY (r IRST BYTE) lOR - LOCATED IN MDIORY RETRYS - REGISTER 0 (ALTRD ONLY) MODE - REGISTER E fI=READ 1=CHECK OUTPUT: DECK, POINTER, lOR UNCHANGED REGISTER - A,8,C,D,H,L ALTERED COUNT - REGISTER 8 ,1-1 BYTE ."256 BYTES ERROR - REGISTER A , - NO ERRORS 1 - CRC ERROR 2 - BLOCK NOT FOUND 3 - END OF TAPE OR JAM ENTRY POINTS: READ - NORMAL ENTRY ALTRD - DECK WILL BACKSPACE FIRST, USER MUST SUPPLY RETRIES. ALTRD2 - NORMAL, EXCEPT USER MUST SUPPLY RETRIES. D,.RETRYS MVI ~TRIES, MODE o PUSH RD54 EQU RESET CRC H,fI LXI STATUS TAPE IN IN D,A MOV READ . C,ErlH MVI CMOOUT CALL STOP? A,D MOV ANI f64H NO JZ RDsfJ .4 SECONDS A,4 MVI DEIAY CALL STATUS = fj D,fI MVI RD51 JMP 8 SECOND TIMEOUT B,30H MVI D,B MOV STATUS TAPE IN IN ~_CS_S_B-_8_2_______________________________ ~(~ __ ~~~~~ O_~~O __ O~O~____~) o_ _ __ po box 6528 denver, colorado 80206 (303) 777-7133 LOC OBJ LABEL ~ADC E6~F f6ADE f6AEI f6AE2 f6AE3 f6AE4 f6AE7 9JAE8 C29f6f6B IB 14 15 C2DAf6A f65 ~AEB CD4F~A 91AEE 3E~2 RD2 ~AF9J ~AFI Dl 15 RD8 ~AF2 C2BB~A 9JAF5 C9 CD15~A 9JAF9 9JAFA 91AFD 91AFE ·41 CD1S91A S9 CDlS91A 51 CD1591A ~B911 91B~2 9JB~S ~B918 ~B~9 ~B91A ~B91D 91Bf6E OPERAND COMMENT ANI JNZ f6FH RDlf6 D D D RD53 B RD57 REWIND A,2 D D RD54 READY? YES GET B,C GET E,C GET D,C GET GET A H RDS L RDS IDH OCX C2D9~A ~AF6 OP RD52 CD15~A 97 84 C2BC91A 85 C2BC91A * INR DCR JNZ DCR JNZ CALL MVI POP DCR JNZ RET CALL MOV CALL MOV CALL MOV CALL CALL SUB ADD JNZ ADD JNZ COMPUTE 91B12 91BlS ~B16 f6B17 91B18 f6B19 9JBIA 91BIB 91B1C ~BID f6BIE 91BIF 91B291 91B21 ¢B24 .0B27 9JB28 .0B2A 9JB2D 7B 2ABl~A 95 SF 6F 78 9C 67 29 29 29 29 29 7C CA38~B F23D91B 2F C602 FA3291B FE~4 * IDL COUNT CRCI CRC2 CRC = 91? NO NO BE TAPEID ~ * ~Bl1 ERROR = 2 RETRIES, MODE lOR XY' MOV LHLD SUB MOV MOV MOV SBB MOV DAD DAD DAD DAD DAD MOV JZ JP A,E IDR L E,A L,A A,B H H,A H H H H H A,H ID1 ID2 CMA ADI JM CPI 2 ID3 4 REGISTER E CONTAINS Y REGISTER A CONTAINS X H = >ri/8 COMPUTE FF DELAY ADD 1+1 FOR 2'S COMP GREATER THAN THRESHOLD? __ ~_C_SS_B_-8_3_______________________________ ~C~ @~~~~ __O_~~O __ O~O~_____) o_ _ po box 6528 denver, colorado 80206 (303) 777-7133 I: L~C OBJ {1B2F FABC16A CD7Al6A C3BCl6A lC 10 ~B32 (1B3S ~B38 "B39 flB3A {lB3D fl83F fl842 fIB 4 5 ~46 fl847 ~B48 ~4B {1B4C fJB4F gB52 {lB53 (1854 {lB57 {laS 8 {lBS9 I1B5A ~BSB {lB5C {lB5F {lB6~ ~B61 C068l6A C3EEl6A 42 01 C5 2AB3l6A E5 21fJl6l6fJ COI5~A lC ID C2SBl6B E3 71 23 E3 !IS C24Fl6B Cl CI CDlSl6A CDIS~A {l867 l6B69 {lB6A {lB60 OB~2 ~B6E IF OA7Bl6B IF IF ~B6F DA96~B l6B72 97 84 (lB74 l6B77 {lB78 {lB7B "B70 ~B8~ ~B82 ~B85 16886 l6887 l6B8A l6B8B l6B8E 103 101 CA4S~B C6l66 ~B64 ~B73 LABEL 102 R06 RDS6 RDSS C27B~B 85 CA85l6B 3E~5 ALTRD C068~A 3E~1 C3FI~A 516 RD19 15 COISl6A 14 RD9 C287~B 97 OP OPERAND COMMENT JM CALL JMP INR OCR JZ AOI CALL JMP MOV POP PUSH LHLO PUSH LXI CALL INR DCR JNZ XTHL MOV INX XTHL OCR JNZ POP POP CALL CALL IN RAR JC RAR RAR JC SUB ADD JNZ ADD JZ MVI CALL MVI JMP MOV OCR CALL INR JNZ SUB RDS FF RDS E E RD6 6 FR R02 B,D 0 B POINTR H H,l6 GET E E RD5S NO M,C H B Y = l6? YES COUNT RETRIES, MODE COUNT RESET CRC SWITCH CRC, POINTER STORE DATA BUMP POINTER SWITCH CRC, POINTER DECREMENT COUNT ROS6 B B GET GET TAPEIN ALTRD RDII A H ALTRD L R019 A,S FR A,l R08 D,B 0 GET D R09 A ADJUST STACK POINTER COUNT STATUS OVERRUN? YES STOP? YES NO GREATER THAN I BLOCK ERROR = I SAVE COUNT DECREMENT SAVED COUNT INCREMENT SAVED COUNT ERROR = ~ ~_C_S_SB_-_84_______________________________ ~(~ __ ~~~~~ O_'~~O __ O_'~o~____~) Q_ _ __ po box 6528 denver, colorado 80206 (303) 777-7133 LOC OBJ ¢B8F C9 ~B9~ E6~4 ¢B92 ¢B95 ¢B96 ¢B99 ¢B9B CAF6¢A D1 CD4F~A 3E¢3 C3F1~A LABEL OP RDIO RET ANI JZ ROll POP CALL MVI JMP END OPERAND COMMENT ¢4H RDS2 STOP? NO RETRIES, MODE 0 REWIND A,3 R08 ERROR = 3 ~_C_SS_B_-8_5__________________________________ ~(~ __ ~~~~~ O_~~O __ O~O~_____) o_ _ __ po box 6528 denver, colorado 80206 (303) 777-7133 8~8~ DRIVER SOFTWARE (OCTAL) LABEL ~11 ~11 ~11 ~11 ~~~ ~~2 ~~4 ~~5 ~11 ~11 ~11 ~11 ~11 ~ll ~ll ~ll ~ll ~11 ~ll ~ll ~11 ~11 ~11 ~11 ~11 ~ll ~11 ~~6 ~11 ~12 ~15 ~16 ~17 ~2~ ~23 ~25 ~27 ~32 ~33 ~34 ~37 ~4~ ~41 ~43 ~44 ~47 ¢11 ¢5¢ ¢11 ~51 ¢11 ~54 ¢26 ¢36 345 325 ¢52 ¢53 ¢42 ¢43 175 264 312 ¢26 ¢36 315 ¢74 ¢75 312 321 341 ¢16 1¢7 315 17¢ 311 315 ¢16 ¢~1 RECORD ¢¢5 RCD2~ 265 ¢12 261 ~12 OPERAND COMMENTS RECORD (UNTIL COUNT EXHAUSTED) DECK IS STOPPED AFTER RETURN INPUT: DECK - DECK NUMBER LOCATED IN MEMORY POIN!I1W LOCATED I N MEMORY (FIRST DATA BYTE) IDW - LOCATED IN MEMORY (FIRST BLOCK) COUNT - REGISTER H,L OUTPUT: POINTW LOCATED I N MEMORY (LAST DATA BYTE + 1) ERROR - REGISTER A ~ - NO ERRORS 1 - CRC ERROR IN BLOCK IDW - 1 2 - BLOCK IDW-l NOT FOUND 3 - TAPE END OR JAM lDW - LOCATED IN MEMORY (LAST BLOCK + 1) ALTERED REGISTERS - A,B,C,O,E,H,L,IOR, POINTR MVI D,l ERASE = 1 MVI E,5 STOPS = 5 PUSH H COUNT PUSH D ERASE, STOPS LHLD IDW DCX H IDR = lOW -1 SHLD IDR INX H MOV A,L lOW ? ORA H JZ RCDl¢ YES MVI D,11 RETRIES = MVI E,l CHECK MODE ALTRD CALL INR A ERROR? DCR A JZ RC013 NO POP D ERASE, STOPS POP H COUNT MVI STOP C,9¢H MOV B,A SAVE ERROR CALL CMDOUT MOV A,B RESTORE ERROR RET CALL REWIND MVI C,ECH ERASE =• l' ¢51 ¢ll ¢13 ¢¢1 173 ¢13 ~66 ¢11 22¢ RCD12 RCD21 RCD27 233 ¢12 117 ¢12 354 RCD1¢ __ ~_C_SS~B_-8_6__~___________________________ C~~ ~~~~~ O_~~O O~W_______) o_ _ po __ __ box 6528 denver, colorado 80206 (303) n7-7133 OBJ ,LaC ~11 ~11 ~11 ~11 ~11 ~11 ~11 ~11 ~11 ~11 ~11 ~11 ~11 ~56 ~61 ~63 ~66 ~67 ~7~ ~71 ~74 ~76 1~1 1~2 1~.? 1~6 ~11 ~11 ~11 ~11 ~11 111 112 113 114 115 ~11 ~11 ~11 ~11 ~11 ~11 ~11 ~11 12~ 121 122 125 126 127 132 133 S11 135' ~11 ~11 ~11 ~11 136 137 142 143 S11 146 ~11 147 ~11 151 S11 154 SII 157 S11 161 ~11 ~11 ~11 ~11 ~11 ~11 ~11 ~11 163 164 167 17j 171 174 176 2_1 jl1 2.3 jll 2'6 ~11 2.7 ~11 21' ~11 211 1~11 212 LABEL 315 233 ~76 315 321 325 ~12 ~5~ 2~1 ~12 RCD13 ~25 RCD15 312 111 ~16 354 315 233 325 315 332 321 3~3 ~11 ~12 ~11 ~7~ ~11 RCD14 341 321 325 345 ~12 ~52 ~25 ~24 3~2 ~35 ~34 267 324 ~11 312 2~I ~I1 RCDI9 1~3 _36 S~S 325 353 _52 261 _43 _42 261 353 ~16 35~ 315 233 315 332 333 ~S2 346 ~15 321 312 12~ 321 RCD18 ~12 ~12 ~12 ~11 ~11 ~35 3S2 ~~5 ~11 ~~3 S4~ ~11 _76 3_3 _76 j~5 315 15~ 341 321 325 345 227 RCD17 ~12 RCD26 OP CALL MVI CALL POP PUSH DCR JZ MVI CALL PUSH CALL POP JMP POP POP PUSH PUSH LHLD DCR INR JNZ DCR INR JZ MOV MVI PUSH XCHG LHLD INX SHLD XCHG MVI CALL CALL IN ANI POP JZ POP DCR JNZ MVI JMP MVI CALL POP POP PUSH PUSH SUB COMMENT OPERAND CMDOUT A,4~ 4 SECONDS DELAY D D D RCD14 C,ECH CMDOUT D ERASE, STOPS ERASE (ERASE-I) BLOCKS ERASE RECRDl D RCD15 H D D H ERASE, STOPS COUNT POINTER COUNT HIGH = POINTW D D RCDI6 E E RCD17 B,E ~? NO YES COUNT = COUNTL COUNTL = ~ SAVE COUNT E,~ D IDR H IDR C,E8H CMDOUT RECORD RECRDl TAPEIN ERROR? ~DH D RCD19 D E GET COUNT NO OCR STOPS RCD2~ NO ERROR = 3 ~? A,3 RCD21 A,S FR H D D H A APPROXIMATELY 1~ BLOCKS ERASE, STOPS COUNT COUNT = ~? ~_C_S_SB_-_87_________________________________ ~~~_'_' ~_~~o __o~~~o~~o_______) o_ _ DO box 6528 denver, colorado 80206 (303) n7-7133 LOC ~II ~II ~II ~ 11 ¢11 ~11 ¢11 ¢II ¢II ~11 ¢11 ¢11 0'11 ¢11 SII ~11 • S 11 ~11 OBJ 213 214 217 22¢ 223 226 231 233 235 24¢ 24i 242 243 246 247 252 254 257 SII 26~ S 11 263 SII 264 '11 265 ~II 266. '11 267 ~Il 272 ~II 273 ~II 274 '11 277 '11 3;' '11 3'3 ~ 11 3,4 ~II ~II 3~7 312 '11 314 '11 315 ~11 32$f ~Il 321 ~11 324 '11 325 ~11 327 2¢2 3¢2 2¢3 312 ¢52 ¢42 ¢26 ¢36 315 ¢74 ¢75 321 312 ¢24 3S3 ¢26 S52 S43 S42 353 321 S24 LABEL 223 ¢11 ¢37 ¢11 265 ¢12 261 ~12 RCD22 ~¢6 ¢¢I 273 ¢I2 252 ¢ 11 ¢¢5 SII S¢1 265 ¢12 RCD24 265 ¢12 ~25 312 3¢7 ¢11 '25 345 '52 267 S12 ~44 ,42 267 S12 341 3'3 2I~ ~ 11 '52 267 S12 S26 S~~ ~31 ~42 267 ~12 3~3 ~41 ¢11 RCD25 227 S25 SSG ~~S 3S3 135 S11 RCD16 " ,,~ ,~ ,,~ ,~ ,,~ ,~ ,,~ v ,,~ u ,,~ ,~ "" ". "" ,~ ,,~ ,~ "" ,~ ,,~ OP OPERAND ADD JNZ ADD JZ LHLD SHLD MVI MVI CALL INR DCR POP JZ INR JMP MVI LHLD INX SHLD XCHG POP INR DCR JZ DCR PUSH LHLD INR SHLD POP JMP LHLD MVI DAD SHLD SUB JMP OCR MVI JMP D RCD22 E RCD12 IDW IDR D,6 E, 1 COMMENT NO YES RETRIES = 6 CHECK MODE ALTRD2 A A D RCD24 D RCD2¢ D, 1 IDW H IDW D D D RCD25 D H ERROR? NO INCREMENT ERASE ERASE = 1 INCREMENT IDW COUNTH = ¢? YES DECREMENT COUNTH POINTW H PQINTw H RCD26 POINTW ADD COUNTL TO POINTER D,¢ 0 POINTW A RCD27 ERROR = ¢ DECREMENT COUNTH B,S COUNT =¢ RCD18 (RECORD ONE BLOCK) RECRDI RECORD OR ERASE COMMAND MUST BE ISSUED BEFORE CALLING. UNDERRUN AND STOP SHOULD BE CHECKED AFTER RETURN. INPUTS: DECK - DECK NUMBER LOCATED IN MEMORY 10 - REGISTER D,E COUNT - REGISTER B (¢1=1 BYTE, ¢S=256 BYTES) 0 ~_C_S_SB_-8_8_______________________________ (~~ __o_@_O~~~~ __ ~_~~O __ O~O~_____) po box 6528 denver, colorado 80206 (303) n7·7133 OBJ LaC LABEL ~~ v ~~ v ~~ v ~~ v ~~ v ~~ .~ ~~ ¢11 ¢11 ¢11 ¢11 ¢11 ¢11 ¢11 ¢11 ¢11 ¢11 ¢11 ¢11 ¢11 ¢11 ¢11 ¢11 ¢11 ¢11 ¢11 ¢11 ¢11 ¢11 ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 332 333 336 337 342 343 346 347 352 353 354 357 36¢ 363 364 365 366 367 37¢ 373 374 377 ¢¢¢ ¢¢1 ¢¢4 ¢¢5 ¢1¢ ¢11 ¢14 ¢15 ¢2¢ ¢23 ¢24 345 ¢41 112 315 113 315 11¢ 315 124 115 315 112 315 13¢ 343 116 ¢43 343 315 ¢¢5 3¢2 124 115 315 112 315 ¢35 315 ¢34 3¢2 315 341 311 RECRDI ¢¢¢ ¢¢¢ 111 ¢12 1¢2 ¢12 1¢2 ¢12 1¢2 ¢12 1¢2 ¢12 RECD1 1¢2 ¢12 364 ¢11 1¢2 ¢12 1¢2 ¢12 1¢2 ¢12 RECD3 ¢11 ¢12 1¢2 ¢12 v ~~ v ~~ .~ ~~ .~ ~~ ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 ¢25 ¢27 ¢31 ¢34 ¢37 ¢4¢ ¢41 CSSB-89 333 346 312 315 325 171 255 ¢¢2 ¢17 ¢25 ¢12 217 ¢12 GET CRe OP OPERAND COMMENT POINTER - REGISTER H,L (FIRST DATA BYTE) OUTPUT: POINTER - REGISTER H,L (LAST DATA BYTE + 1) ALTERED REGISTERS - A,B,C,D,E,H,L PUSH POINTER H RESET CRC H,¢ C,D ID HIGH ALTPUT ID LOW C,E PUT C,B COUNT PUT SAVE CRC2 D,H CRC1 C,L PUT CRC2 C,D PUT SAVE COUNT E,B SWITCH CRC, POINTER C,M LOAD DATA INCREMENT POINTER H SWITCH CRC, POINTER PUT DECREMENT COUNT B RECD! NOT ZERO SAVE CRC2 D,H C, L CRCI PUT C,D CRC2 PUT E DECREMENT SAVED COUNT PUT E INCREMENT SAVED COUNT RECD3 NOT ZERO PUT POP POINTER H PUSH LXI MOV CALL MOV CALL MOV CALL MOV MOV CALL MOV CALL MOV XTHL MOV INX XTHL CALL DCR JNZ MOV MOV CALL MOV CALL DCR CALL INR JNZ CALL POP RET GET CRC IN H,L DATA RETURNED IN C A,C,H/L , ALTERED IN TAPEIN ANI ¢FH JZ GET CALL DIN PUSH D MOV A/C XRA L STATUS (ililL@~~ ) po box 6528 denver, colorado 80206 (303) 777-7133 OBJ LOC ~12 ~12 ~12 ~12 ~42 ~43 ~45 ~46 ¢12 ¢47 ~12 ~12 ~12 ~12 ~12 ~12 ~12 ~12 ~12 ~12 ~12 ~12 ~5¢ ~53 ~54 ~55 ~56 ~57 ~61 ~62 ¢63 ~64 ¢66 ~67 ¢12 ~7~ ~12 ¢71 ~12 ¢72 ~12 ¢75 ¢12 ¢77 ~12 1¢¢ ~12 1¢1 LABEL 157 ~36 ~~7 CRCA ¢27 255 ~35 3~2 ~45 ~12 157 ¢17 ~17 137 346 3¢~ 254 127 173 346 ~77 255 147 ~27 172 322 356 157 321 311 ~77 ¢~1 ¢12 CRCFIN .. v ~ v .. v ..v ~12 ~12 ~12 ~12 1~2 1~4 1~6 111 ¢12 114 333 ~~2 346 ~17 312 1~2 ~12 315 25¢ 012 3~3 ¢37 012 ~ ~ PUT ALTPUT .. ,~ ~ v v ,,~ ,,~ ~12 ~12 117 121 012 124 ~12 126 ~12 ~12 ~12 ~12 ~12 ~12 ~12 13~ 133 135 14¢ 142 144 147 ~16 22~ 315 233 012 333 ~~2 346 ¢1~ 312 124 ~12 ~16 REWIND REWB 2~¢ 315 233 ¢12 333 ~~2 346 ¢1~ 312 14¢ ¢12 311 REWA ..,~ ..v .."-. ..v - CSSB-90 OP OPERAND COMMENT MOV L.,A MVI E.,7 ~~7 TIMES RAL XRA L DCR E DONE? JNZ CRCA YES MOV L.,A RRC RRC SAVE 1 MOV E.,A ANI C~H XRA H SAVE 2 MOV D.,A RESTORE 1 MOV A., E ANI 3FH XRA L CRC HIGH DONE MOV H.,A TEST BIT 7 RAL RESTORE 2 MOV A,D CRCFIN JNC BIT 7 WAS 11 YES XRI 1 CRC LOW DONE MOV L.,A POP D RET PUT DATA IN REGISTER C CRC IN H, L A.,H.,L ALTERED STATUS TAPEIN IN ANI ~FH JZ PUT DOUT CALL CRC JMP REWIND REGISTER A., C ALTERED THIS ROUTINE WILL GUARANTEE DECK SELECTION STOP MVI C.,9~H CALL CMDOUT IN TAPEIN ANI ~8H JZ REWB FR MVI C.,8~H CMDOUT CALL IN TAPEIN ANI 8 JZ REWA RET FAST REVERSE., FAST FORWARD REGISTER A CONTAINS MULTIPLE OF 1~¢ MILLI-SECONDS DELAY REGISTER A, ALTERED (Wi@@]fig]~~ ) po box 6528 denver, colorado 80206 (303) n7-7133 LOC ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 15¢ 151 152 154 157 16¢ 163 165 17¢ 171 172 173 174 176 OP 3¢5 365 ¢16 315 361 315 ¢16 315 3¢1 311 3¢5 365 ¢16 3¢3 FR B PUSH PSW PUSH C,8¢H MYI CMDOUT CALL PSW POP DELAY CALL C,9¢H MYI CMDOUT CALL B POP RET B PUSH PSW PUSH MYI C/A¢H FRA JMP DELAY MULTIPLE OF 1¢¢ MS IN REGISTER A • REG I STERS A, B"C ALTERED LXI B,2¢¢¢H B DCX B INR B DCR D1 JNZ A DCR DELAY JNZ RET INPUT DATA BYTE (DATA RETURNED IN C) REGISTER A IS ALTERED A,EFH MYI STROBE OUT TAPEIN IN C,A MOV A,DFH MVI STROBE OUT RET OUTPUT COMMAND (DATA IN REGISTER C) DECK IS OR'D WITH DATA REGISTER A IS ALTERED DECK LDA C ORA OUT TAP OUT MVI A,9FH STROBE OUT DINA JMP OUTPUT DATA (DATA IN REGISTER C) REGISTER A IS ALTERED MOY A,C OUT TAP OUT A,5FH MYI CMDA JMP VARIABLE DATA AREA DECK NUMBER TO BE USED DS 1 READ ID 2 DS 2¢¢ 233 ¢12 FRA 2¢1 ¢12 22¢ 233 ¢12 FF 24¢ 154 ¢12 ., ., ~~ 2¢1 2¢4 2 ¢'5 2¢6 2¢7 212 213 216 ¢¢1 ¢¢¢ ¢4¢ ¢13 ¢¢4 ¢¢5 3¢2 2¢4 ¢12 ¢75 3¢2 2¢1 ¢12 311 DELAY D1 ., ., ~~ ~~ ¢12 ¢12 ¢12 ¢12 012 ¢12 ¢12 217 221 223 225 226 23¢ 232 ¢76 323 333 117 ¢76 323 311 357 ¢¢1 ¢¢2 DIN 337 ¢¢1 DINA ,~ ~~ ,~ ~~ ., ~~ ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 233 236 237 241 243 245 ¢72 261 323 ¢76 323 3¢3 26¢ ¢12 CMDOUT ¢¢2 237 ¢¢1 226 ¢12 CMDA " ., ~~ ~~ ¢12 ¢12 ¢12 ¢12 25¢ 251 253 255 171 323 ¢¢2 ¢76 137 3¢3 243 ¢12 DOUT ., ~~ ¢12 26¢ ¢12 261 CSSB-91 COMMENT LABEL ~~ ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 ¢12 OPERAND OBJ ¢¢¢ ¢¢¢ ¢¢¢ DECK IDR r;,) _____________________________ I~~ __ =_@~~~~_o~~~O~O_____ po box 6528 denver, colorado 80206 (303) 777-7133 LOC ~12 ~12 ~12 263 265 267 POINTR READ POINTER DS 2 WRITE ID DS 2 WRITE POINTER DS 2 READ ONE BLOCK DECK REMAINS RUNNING AFTER RETURN INPUT: DECK - DECK NUMBER LOCATED IN MEMORY POINTR - LOCATED IN MEMORY (FIRST BYTE) IDR - LOCATED IN MEMORY - REGISTER D RETRYS ( ALTRD ONL Y) MODE - REGISTER E POINTW v .~ v .~ v .~ v .~ v .~ v .~ v .~ v .~ v .~ v .~ v .~ . v .... ~ v ~12 ~12 271 273 ~26 325 READ RD54 ~12 ~12 ~12 ~12 ~12 ~12 ~12 ~12 ~12 ~12 ~12 ~12 ~12 ~12 ~12 274 277 ~41 ~~~ ~~~ RD5 3~1 3~2 3~4 3~7 31~ 312 315 317 322 324 327 331 332 CSSB-92 333 127 ~~2 ~16 34~ ALTRD2 RD51 315 233 172 346 ~~4 312 327 ~12 2~1 ~12 ~12 ~76 ~~4 315 ~26 ~~~ 3~3 3~2 ~12 ~¥16 ~6~ 12~ 333 ~~2 COMMENT OP IDW ~12 OPERAND LABEL RD5~ RD57 RD53 ~=READ l=CHECK OUTPUT: DECK, PuINTER, IDR UNCHANGED REGISTER - A,B,C,D,H,L ALTERED COUNT-- REGISTER B ~1=1 BYTE ~~'=256 BYTES ERROR - REGISTER A ~ - NO ERRORS 1 - CRC ERROR 2 - BLOCK NOT FOUND 3 - END OF TAPE OR JAM ENTRY POINTS: READ - NORMAL ENTRY ALTRD - DECK WILL BACKSPACE FIRST, USER MUST SUPPLY RETRIES • ALTRD2 - NORMAL, EXCEPT USER MUST SUPPLY RETRIES MVI D, RETRYS PUSH RETRIES, MODE D RD54 EQU LXI RESET CRC H,~ IN TAPEIN STATUS MOV D,A MVI READ C,E~H CALL CMDOUT STOP? MOV A,D ANI ~4H JZ NO RD5~ MVI A,4 .4 SECONDS CALL DELAY MVI STATUS = ~ D,~ JMP RD51 MVI 8 SECOND TIMEOUT B,3~H MOV D,B TAPEIN IN STATUS ~) ~___________________ ~I~_o_@~~O~_o~'~_O~O~__ po box 6528 denver, colorado 80206 (303) n7-7133 _OC .012 .012 .012 .012 .012 .012 .012 ~12 .012 .012 .012 .012 .012 .012 .012 .012 .012 .012 .012 .013 .013 .013 .013 ~13 .d13 .013 .013 OBJ 334 336 341 342 343 344 347 35.0 353 356 36.0 361 362 365 366 371 372 375 376 .0.01 .0.02 .0.05 .01.0 .011 .012 .015 .016 346 3.02 .033 .024 .025 3.02 .0.05 3.02 315 .076 321 .025 3.02 311 315 1.01 315 131 315 121 315 315 227 2.04 3.02 2.05 3.02 LABEL .017 22.0 .013 332 .012 331 .012 117 .012 .0.02 RD2 RD8 273 .012 .025 .012 RD52 .025 .012 .025 .012 .025 .012 .025 .012 274 .012 274 .012 ~~ .. OP OPERAND COMMENTS ANI JNZ DCX INR DCR JNZ DCR JNZ CALL MVI POP DCR JNZ RET CALL MOV CALL MOV CALL MOV CALL CALL SUB ADD JNZ ADD JNZ COMPUTE .0FH RD1.0 D D D RD53 B RD57 REWIND READY? YES ERROR D D RD54 RETRIES~ GET IDH ~13 .021 .022 .025 .026 .027 .03.0 .031 .032 .033 .034 .035 .036 .037 .04.0 .041 .044 .047 .05.0 .052 .055 eSSB-93 173 .052 225 137 157 17.0 234 147 .051 .0 5·1 .051 .051 .051 174 312 362 .057 3.06 372 376 261 .012 .07.0 .013 .07¢ .013 .0.02 .062 .013 .0.04 MOV LHLD SUB MOV MOV MOV SBB MOV DAD DAD DAD DAD DAD MOV JZ JP CMA ADI JM CPI MODE B~C GET IDL E~C GET COUNT D~C GET GET A H RD5 L RD5 ~~ .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 =2 A~2 CRC1 CRC2 CRC = .0? NO NO BE TAPEID -HL IDR XY A~E IDR L E~A L~A A~B REGISTER E CONTAINS Y H REGISTER A CONTAINS X H XY/8 H~A H H H H H = A~H ID1 ID2 2 ID3 4 COMPUTE FF DELAY ADD 1+1 FOR 2'5 CaMP GREATER THAN THRESHOLD? r;) ~____________________ ~I~_Q_~~~O~_o~®_~~W~__ po box 6528 denver, colorado 80206 (303) n7-7133 LaC .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .0.13 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 .013 CSSB-94 OBJ .057 .062 .065 .07.0 .071 .072 .075 .077 1.02 1.05 1.06 1.07 11.0 113 114 117 122 123 124 127 13.0 131 132 133 134 137 14.0 141 144 147 151 152 155 156 157 162 163 164 167 17.0 173 175 2.0.0 2.02 2.05 2.06 2.07 212 213 216 372 315 3.03 .034 .035 312 3.06 315 3.03 1.02 321 3.05 .052 345 .041 315 .034 .035 3.02 343 161 .043 343 .0.05 3.02 3.01 3.01 315 315 333 .037 332 .037 .037 332 227 2.04 3.02 2.05 312 .076 315 .076 3.03 12.0 .025 315 .024 3.02 227 LABEL 274 .012 172 .012 274 .012 ID3 ID1 1.05 .013 .0.06 15.0 .012 356 .012 ID2 RD6 263 .012 .0.0.0 .0.0.0 .025 .012 RD56 133 .013 RD55 117 .013 .025 .012 .025 .012 .0.02 173 .013 226 .013 173 .013 2.05 .013 .0.05 15.0 .012 .0.01 361 .012 ALTRD RD19 .025 .012· 2.07 .013 RD9 OP OPERAND COMMENT JM CALL JMP INR DCR JZ ADI CALL JMP MOV POP PUSH LHLD PUSH LXI CALL INR DCR JNZ XTHL MOV INX XTHL OCR JNZ POP POP CALL CALL IN RAR JC RAR RAR JC SUB ADD JNZ ADD JZ MVI CALL MVI JMP MOV OCR CALL INR JNZ SUB RD5 FF RD5 E E RD6 6 FR RD2 B,D D B NO Y = .0? YES COUNT RETRIES, MODE COUNT POINTR H H,.0 GET E E RD55 RESET CRC M,C H B RD56 B B GET GET TAPEIN ALTRD SWITCH CRC, POINTER STORE DATA BUMP POINTER SWITCH CRC, POINTER DECREMENT COUNT ADJUST STACK POINTER COUNT STATUS OVERRUN? YES STOP? YES ROll A H ALTRD NO L RD19 A,5 FR A,l RD8 D,B 0 GET GREATER THAN 1 BLOCK ERROR - . =1 SAVE COUNT DECREMENT SAVED COUNT 0 INCREMENT SAVED COUNT RD9 A ~RROR =¢ (illJl@ cQ)~ ®f©J1@ I ) po box 6528 denver, colorado 80206 (303) n7-7133 LOC ~13 ~13 ~13 ~13 OBJ 217 22~ 222 225 ~13·226 ~13 231 ~13 233 311 346 ~~4 312 366 321 315 117 LABEL RD1~ ~12 ~12 ~76 ~~3 3~3 361 ~12 RD11 OP OPERAND COMMENT RET ANI JZ POP CALL MVI JMP ~4H R052 D REWIND A,3 R08 STOP? NO RETRIES, MODE L-_C_S_SB_-_9_5_________________________________ ERROR =3 (~~ ___ O_~_~~O~c __ O~~~O __ O~O~______) po box 6528 denver, colorado 80206 (303) 777-7133 K. PHI-DECK MAINTENANCE Recommended Field Maintenance This maintenance schedule consists of recommended maintenance operations to be performed in the field by operating personnel and service technicians. Schedule A consists of cleaning operations that should be performed every ten to twenty hours of operating time. Since the accumulation of dirt and tape oxide is highly dependent upon operating environment and the quality of tape used, the time interval for Schedule A can be varied according to system experience. The Schedule A cleaning operations are simple enough that they can be performed by operating personnel in many systems. The items in Schedule B should be performed by technically skilled personnel. Required Equipment For Schedule A 1. 2. 3. 4. 5. Tape head cleaner or pure isopropyl alcohol Rubber drive cleaner Cotton tip wood swabs 1212 e150 **** £116£1 ~11202 ee~ e12165 012165 012165 ~03 3£12 ~12 012277 fl12277 V.:2~77 012302 £112305 e12307 3e~ 322 012 315 233 012 07f 001 315 201 ~12 301 311 315 150 012 303 356 012 016 340 e17£1 018£1 019£1 **** 0200 0210 **** 0220 0230 0240 0250 012312 £112313 012314 012317 £112322 £112324 315 233 £112 0260 0270 0280 0290 0300 012327 0e6 110 013036 £1320 E130:3€ 0340 0350 013~36 174 013037 £151 013040 ~12 07~ 013 £1130.3 362 075 013 £11304:6 204 013051 013£151 013£151 001 e13056 013056 013056 003 ~310 0330 ST ORG+1165 JP RD51 CMDOUT STOP ROUTINE A,l .1 SECOND DELAY Be FR FAST REVERSE CORRECTION RD2 C,0E0H RE~D CMDOUT B,110 14 SECONDS ORG+203E IMPROVEMENT. A,H 0360 0370 0380 JP JP HL,RL Z,ID1 p. ID2 .0390 ADD H 0400 0410 *:(~** **** MORE SEARCH IMPROVEMENT • • **~ 0420 04~0 0440 0450 **** £490 0510 0520 0530 013174 £103 7 :--. **** ''-~~I *+* ... 0560 0S7e ~ 580 e~90 0t00 0610 ST ORG+205E DE 3 ST ORG+2075 MORE SEARCH IMPROVEMENT. ADD H **** **** RLCA ADD 0:)00 013077 30£ 0~~ 013101 303 314 012 £113174 '2113174 0540 **** ORG+2051 ST MORE SEARCH IMPROVEMENT. 1 DE 0470 04se I t2 01317~ e131 7~ ORG+202 JUMP TO STOP. **** STOP JP ORG+127? ST STOP ROUTINE AND FAST REVERSE CORRECTION. LD ADD 013075 013175 fl13175 013175 013175 ST **** EACKSPACE SEVEltAL :ELOCKS EI}'ORE CHiCK READ. DB 0e3 CALL LD CALL POP RET FRCOR CALL JP LD RD51 CALL fLD50 LD ST **** SEARCH 0460 eir1 £111001 ORG+62 FIVE SECOND DEL!l fOE rLOCI 0. DB 062 STOP 013075 "'1307~ ?04 ~" 1 ~'I " 7 {\ lc ~ ~ ? IOU ST 5 JP FReOR ST ORG+2174 LAST OF SEARCH IMPROVEMENf. n:B 3 **** f.: X ,\,\'~(N~ 1 Ri,'tll rNC ~'::. CMDOUi ECU ORG+1233 DELAY EQU ORG+1201 FR EQU O~G+1150 IDl EQU ORG+2e70 RD2 ECU ORG+1356 END -5- PHIMON HOME COMMAND LOCATION 010207 OBJECT CODE 010207 010207 310 317 0100 0110 0120 010211 355 3.l.S Ct~0213 * ST 010207 PATCI-ES TO O\IERLAY 10 FOR I-OE CClVtMMD DC 'HO' 0130 OW 345355 0140 DB 016 010214 332 305 0150 DC 'ZE' 010216 352 357 0160 OW 357362 010220 012 0170 06 012 010221 31l 316 0180 DC ' IN' 010223 3E.3 345 01'30 OW 345363 010225 362 364 0210 OW 364362 010227 OE,S 0220 DB 065 010230 000 0230 DB 000 OlE. FIGURE 3 -- Patches to Help Overlay LOCATICN 340146 OH ..TECT CODE 340146 0240 34014E. 0260 340146 0270 0280 0290 34014E. 340146 0250 340146 340146 340146 020 0300 03l.0 * * * * * * * 340146 ST MODIFICATICl\I TO PHIMON TO ADO '·HOME' COMMAND, WHICH WILL REWIND THE SPECIFIED PHIOECK DRIVE UNIT. BY TOM COX FORMAT >HOME#N NEW ENTRY FOR 0320 COMTAB DB 020 COMMAND 3402bi~ 0330 3402R 310 317 0340 ST DC 340262 'HO' 3402EA 352 343 0350 OW HOME 340(?66 000 0360 DB 0 343352 343352 34332 315 162 341 343355 315 117 345 343360 303 042 340 343363 343363 3433E:.3 0370 0380 TABLE ST 343352 ROUTINE TO REWIND SPECIFIED DECK 0390 HOME CALL DECKSL 0400 CALL REWII\IJ 0410 JP COMANO * 0420 DECKSL EGU 342.162 0430 REWIND EQlJ "345117 0440 COMAI\I) EQU 340042 FIGURE 4·-- Patches to Command Table -6- eSsa -33 -el PHI-DECK CONTROLLER CD I CD o o o ! " C CD o N o co l~i5i12i IIIIIIIIIII1II 22 \~ I"DATA~ODIN:-:D I I1EJl.D PREAMP AnD WAVESIIAPIUG SE!UALIZATION BIT SYNo-nnrrZA'I'IOO I J ~D4 016 ~D3 DIS ~D2 DI4~Dl l,c' :~ Q3 Q1 ICe 13 5 leI Q2 16: IC46 7475 12 9 ~lC3 r.-::-_++ ___ "';l:::1 2Cl ' Q4 017 Y24- E3-4 ~ ~9~D4 01' 201 OIL 21 Q4 9 Q3~~ :: 03 OI~ ~~ 3 Ie3 Dl El-2 f:L E3-4 12L~ r!-< 9 11 VI 7 10 Y2 ~-+-r0:i5 leI L-.. i ~-'~ ____ IC43 74107 8551 1-C. .'_k_'_C_L_R'..J~ 7474 QClkl QC D 3 MeL---, +5~ 6 Y' 7 2 11 Qii f----------, C o~_~------~ ~ I IC14 al~l~-+--------~ _ "'-- J _Y- ~13 IC16 r- 7402 . - I . . . . , "'l N g; U IC26 7486 Iell! . SYNC 5 4 6 ' '; ~~;3 5 ~~: :4~ ~~;o 7, QB 9 QD B ~ 8 IC37 7493 7 +--'- IC9 '-' 8 QCr'- l~ ~~ 1 IC36 7403 1 3 OUT -5 1 2 f 02 Rl ( 7400./ iSOK Y n2 7474 ,£ 13 1 '--.-::~-i--' = --, I ~Ol 01 Ql 1\ 2 IC26 hi) r ~._ R56 1 MEG 3 7486 5 7404 .J ~[SrC26 1 10 PRE2~ 011"'5'+-+_":"'":"2"-/ leSS D2 12 1-~~~~·-}~~----1 ICtlO IC~0.r\ 2 11 II 01 ~::9V 2~ ~~~~ 8 7474 CLK11--iH_+. 2 IC30)hI 7400 ~'-_ _- ' "'--+-~CLKI 02 Clk2 ~ ..._ _ _ _ _ _ _ _ _ _~" 7404 74 06 1 10K L+---~~=1~13 10 9 1 ( leI? , leiS 7400 7411 13 4 3 12 ~ +9v O.2~ - 5 9 1 y: L-_____ )~2-c~~:' IC16~45~-,-C-l-~~6109 ~ 7400 L-__ J---< ) IC2 B Q 5 ~~~~ 6'-1H-r:~2L..7~_~_;_.,Y 4 70174 2M~Q.6~~~B-----------+~f'~2 )7451 7400 ~'~ i.ilo 13 )~C' ~Cl~!c:02~ 2 6 f---< ) 7451 "":C4~L 9 7474_ 8 11 ICS 74741 7U07r 12~~- 8n~11 CLR2 4 I ~U 1 ·1 '0. Clock2 2 r--------------------~~~---------------------i-~,.......~~+-------rr--------+-~~~~~~~~~~~~~~~~~++-----------------~---+-'-,L r--I I CONTROL SEQUENCER AND SYSTEM TnlING ---'-- ---- 13 II C34 ~04"')1""'J-...;1~2-.., I :~b'7 / EINABL:L:;'~::'': FWD/BKI'D STOP/RUN E3-4~ . T'f1i'i-'='------:"iD2 ~ ~'" u11tt:" 6 D3 7 D4 _++-+_-'-4oL~9:-i-io-3~-) .... 8 ' -_ _"' Qil,- ~~;; !'"~-":~-++..J -=Q::r31':"":H+-.... IC23 R41 74123 ""'14i >22K 0 10 +5v +9V --- ~ 0 +5v R31 1 R26 --- 1 L_ I 1';~~R27~~ I ~P5~DRI~ ~ __ 1~(43i I~ ~ l¥ ~ 1 ~ 4 '4125 1 9 12 11\14143 ~ \741211\741; 3 \~ 8 .. 11 I ., IC45 R40 ~ 22K 0 1 B 2 02 12 6 CEXT 2 Q D16 2 '4125 C14 +5V IC23 741'>3 ~ lC2~ 7400 "v" ' -_ _~ 9,--.. . . . 13 L.-H_ _ _ _-='-'-j2 10 -¥ 1,01) lC QUIT 9 ~ ~~;; IC26 reS1 ~ 7~OO 1 2 "I,--H---++'1 rC25 IC54 74 00 c.2. 10 ~9 }-' I~25 IC33 7400 7400 18\~' :; ~ E ~ I~ I I _L ~ 11< I R24 10K"'- l~. I J "<125)3...,- ,------+-------<.-.....:;:HD::;B::..3---\4 R25 L r-- -- IC39L~ .A -- -- «2 n2 -+-9V -- 10K ---- R13 ~--t-f 680 -...2 '.2 2N6109 :~4403 ENG¢ 4 5L 4l;,.Js F.34 ~23 I ill 1 MFD h~ 680 D~«2" R.15 "t5 i! 29 27 "t9 D5 E 3 o~ ~ ..< ;:; ;> ~ I 680 R36 1 D14 6 ALL 1N4001 D13 F n 8 l 3 ~ ~ ~ > ~ > ~ ~~ ENG1 33 T4 2N6109 SUP2 ._-------r----------------------__jIT ~ ~~4403 R3' ,-J\,\v/V'_+-+-~ 680 36 ~ R38 v [ SUPI 680 "t7_Dl:1:- DB 28 2N6109 ;:4403 ......I...11,,'A!V--t-t-f D12 s;~>;;; ~, '1'3 ~--------+-------------------------__j34 +9V C18~ M m I ~ ~ g ~~ ENG2 ,5 2N6109 690 ~ SlJP3 R39 ~i~~403 ~.r-----------------------------__~E~N~G3~----425 04 I I ~ --- ~--------i-----------------~S~~~~~----~~ /.~r------... 680 DRIVE,Sr.:1GB,AND cmnROL ::: ~,>-'3'-""R,,2~3-----t-I-----~J,..-....:::HD:::.A:;:3---€>\.ID0> ·V ~1.0TOR HDB2 3> -...:::=---IT>-f.3. 680 +5v I I 10K 10 9 7 < l " > , , 8 - - - - - - - + + _ - - - -... I ~ 1 ~)4'"61...J1y;,,:,.O.,..-----+-t--R-2-,---4J~.....::H::::DA::;2:......-fC I 75451 + 1 MFiC. ho <:; ,.i. 7410 10K 5 7:1125:>.:<6_ _ _ _ _ _ _+ + _ - - - -....-.:;H::0::Bl=----12 ~ '----~ ~--------------------------~-+r+--~----t_--~~--~_r--------------------------------~--------------______________~--------~ ~'~~.~ hi ~ C'S. R32 CIS I L.-++__.... 4 1 R45 B R7 Ic28 5 IC54 HOAI lK I L---------------~SLm~'--------------_ri-1-+-t----1------i-----_1~----~--i_------------------~-------------------+---------+------------------+--------.--------4 I I I~ 1Y3 -----1-----~--_+----~--rr+_, FWD Y1 t:l6 974125,>0...;8~""f\,o------++----~,..-....::=~-f 1 ... 75451 ~ 10K R6 ·75m ., r3 ~IC27 , lY2~ ~ Ml"D ,"GAJDRV HD9¢ 1 ""B INA N.-i 3 3 '4,25:>~-------;H---R-,-,----.-I--'~~-;1 lY~ - ' - - - I ~ ~~M 74:4C':~)j°~1~O-HH_+---1--_--'-2.j.~->, ~-Oj. : :-9~h ~1 3 ICC,) IC25}4-.§. ~~--+----+----+----+~----------------------------------~-----------.- CSSB-34-SCH 13 74155 !c19 r---')-~ ~ 8 7486 Q2 9 K2 13 PULSE '-____ ' -_ _- ' R42 __-".IVv----<.f">J+5V 1.21\ A2 <-;:':""_...J 1 I. ~ 1 -Js l7i . 6-::::::=111 no '----' REXT-' 7410 75451 "RDRV I r~_2__ ~ '''',I.e. H;r-+-",9'-;\'1~ ,c£ 4 5 le2;:! 12 5 6 i.-- 742~ PULSr.S d ~ 10- J.2~1:D ~ 6 '-:- IC17 7400 - ,.JV~~~T~N5139 820 ,. 1 2 QT.~--_t--_++~E~~~E----------------+_------------, I I Ai -=1;:- 1 ,V 7-173 SPIN IC39 ~ 8 TI"2 IC41 8 L __..Jr 5 3 ..._"__ 1 __ IC49 74S00 IN4t;~ Q4~8--_+--_++~~~~AD~------------t---------------, ;~~ 1 Q1 13 Dlz..t'j5 REXT 1 rh 1 1J~-T4CEXT L- ~Clk2 17""10 3 5 75',5) .-- 1 12 L..J13 ~ , ~r - - -.....~,...1.. I r-.....- ..........:.="-+--r_-_"'++_,.,3~ IeSl 7_5_4_5_1_ _.;:1=-jl ::,',' I --...:..JL- 6 I ;::' ...!:.. QIIEDEr I 11 I A ~A "]5129 -L ~ 6( I ,,,"',,, .·OU=l 4 IC17 I 1 ,,5139 1¥.-----+-----------t-------+----;-, r9"j~;;;7::4-;oI;;C..::~3"";:;4;:B;..'--~~~~;:~~~~--~:~---~;~~~~~--~~f-.~-1---5 -,4+--~--5~ II I C29 IC49 74500 Yo 9'---+---1---_++"' 1 2 IC36 7408 '--------+-+-<--=-l E3-4 ~ Q41-:-9___+-++..J ~ ~~ 2 Gl IC35 I 8 7110 +9V Tll :~~f R~~ 7 500 I '-______ ~ Dl8 --:--J. IC19 -.JC24 h-----+~:> 12 I elkl 71 4C1118 ~ ~ j REGULATOn 11 ~ tr.I~9"-+-1--I I~ ~ RECORDfiEAD QD 11 6 C~: 10K :,l:K.( Dl ....D_3_ _ _C_LR .....~ 5 __" LM DATA-GUT-STROBE = 7400 2 324 3 4(jV 5 .0015-= - IC15 10 8\~3 9 7402 005 :'.. 1.2K·' t-----2 ' -_ _..J C12.i: Mf7- .. R19 ~ -r- I 10K" 9 324 1 1." ~.2A ,..;4'-1T-:......, 9 Gl 4 D2 v;/' . __ 1.2~ +--HHH.Lf' clk ICtl-1 1 3551 +--H-+:.:jD4 13 8 .--,,':..,,',,3..,............. ·R14~'00K i~2~~ f '~L_ ~~------~-~-~--~~~--~---------~~:--_.-~~:-~1.7~6~V~-----------._~~~2~.~21~~. ,l,..R2B r-+-t+++-F'~O G2 J~ LM 2~~L;£~ ,--:=CN:;.:T"L.:;'",;V_--:-"", • K 3 74195 7 --- I ECLK ci~r'~O~_ _ _ _ _ _ _ __+--t ' - - -....---lS/L Y6 ~EN "fL-.< - I' 5K :.;~ 13 ~220K A'3I"j~ l~K ~" R17 ,"'" 391< R5 3 -12L.D_'_ _ _ CL_R. . J q 14 QB 15 5 B 4 >I Y5+-r::- 9 Ya Q1 --#. 6 IC30 B D4 D2 ~ Dl 11 QD 12 y4 4 A ~ q2~4t::~::::~-, S 324 R30 n+ Y2 Y3 LM 03 5 ~--fL... ' $ ~ ~~ R1B 39K Q4r:6:.--+_..J Ic4 IC36 7408 L...f-t----713 ":'i D 12 C 11 2eI IC47 7475 3 6 4 Kl 8 IC29 8223 Q21"'''15_ _ _ _+++-+'"'I'c~ Ql 6 lC~ 02 ii;; 1-__<):) r Icn 74153 13 2C3 res R4 HD_B r ____''-lClk 5 ICH 7400 ~ 013 It...:.. 4 L.-_ _....._ _H-.-, "-i-+-+~~6iL~_~_:___~1~:iit: El-2 13 7400 L.-___ -7.: r ....-+-h )- ~L--Ilr-Jl----,~~tJ __ ~1~r-~~-~ QII6 ) l : Y r + - + - + - t - + - - = - l 2 Dl , ,..-..;!. 47K ICl3 HDA ___ - - - _~ - - - - - - - _ - ___ ---l T '" ....T' STROBE p; I I r""~" I I I I X I i~::::::§E:~;:: I I I L CSSB-34-5CH I L >'fJTQ; DPIVf.,Stl'H:.AHD CO:lT:l.OL ---1 I -_:-=..._@:> I _______--.1 - -- TWO AND FOUR DRIVE CABINET ASSEMBLY INSTRUCTIONS CASSETTE STORAGE CABINET PARTS LIST NOTE: 1 1 2 1 1 1 4 Parts are subject to change without notice due to supplier availability. Upper Cover Lower Cover Side Rails Front Dress Panel Front Panel Rear Panel Rubber Furniture Guards Small parts bag (all cabinets) : 2 4-40xl/2" screws 2 4-40 nuts 12 8-32xl/4" screws 2 8-32xl/2" screws 18 6-32xl/2" screws 18 6-32 nuts 36 pin connector 1 TWO AND FOUR DRIVE CABINET ASSEMBLY INSTRUCTIONS A. B. LOWER COVER 1. Locate the 4 holes nearest the corners. These will be used to mount the rubber feet. In addition, the 2 holes near the front lip will also be used to mount two of the drives. To mount a rubber foot, insert one 6-32xl/2" screw into the foot, then through the bottom of the lower cover. NOTE: The two screws used to mount the front feet are also used to help mount two of the drives and extend up into the cabinet. 2. Position the drives over the remaining holes, then install the 6-32xl/2" screws through the drive legs and through the bottom cover. Do not tighten at this point. FRONT DRESS PANEL, REAR PANEL AND SIDE RAILS 1. Inspect the side rail and note that there is a small extension on each end. One extension is slightly longer than the other. THE END WITH THE LONGEST EXTENSION IS INTENDED TO GO TOWARD THE FRONT OF THE CABINET. After selecting the front end of each rail, attach each rail to the front and rear panels using eight 8-32xl/4" screws. The two outer-most holes on the rear panel are close to the bottom edge. 2. For two drive models without enclosed controller card and for four drive cabinet models, route the power and control wire cables down the side of the drives and out the round end slots provided in the rear panel. 3. Install the front/rear panel assembly on the lower cover with drives by setting the assembly down over the drives and into position in the lower cover. Pull excess cable through the rear panel. Screw the rear panel to the lower cover using the lower two holes on the rear panel that line up with the bracket on the lower cover. Attach using two 8-32xl/4" screws, no hex nuts required. 298-050 PHI-CAB DOC CSCA-O-RO ~ ) ~_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ~I~_o_~~~~~_o~~_O~O_ __ _ po box 6528 denver, colorado 80206 (303) 777-7133 C. UPPER COVER 1. Place the upper cover in place over the drives. This job is made easier by removing the plastic cassette cover (plastic door) which simply snaps out of the two hinges. Locate the cover over the drives and adjust the drives to center in the cutouts, then tighten the drive mounting screws. 2. Install two a-32x1/4" screws through the rear panel at the upper two holes and lock the rear of the upper cover in place. 3. Install two a-32xl/2" screws through two holes at the front of the cabinet bottom and lock the front of the upper cover in place. Do not over-tighten as these screws will not bottom out automatically. When they are snug, then STOP. I L-_C_S~ __ -O_-_M______________________________ C~---o-~-~-o~---o-~-o--o--o-------~) po box 6528 denver, colorado 80208 (303) 177-7133 TOP COVER FOA COVER MOUNTING I~FRONT TABS I / SIDE RAIL e e a a a I ~, I CSCA-O-RO $ j FRONT PANEL