Here is a related tidbit I just got, not sure if it really applies, but I like to play with my scanner now and again... **also in related news I picked up a 'petunia' board for the PET and an article on computer music by hal chamberlin, The petunia board has a working composite video circuit for the PET (will have to check it against Nick Hampshire's and MICRO's to see which one is employed, if those.) and the Chamberlin article essentially shows how to make the four-voice music circuit used in the MTU and the Petunia music boards. Back to the tape article... it's from the 3rd issue of the Commodore PET Users Newsletter from 1979, it discusses the PET cassete and duplication notes (in general; the recording characteristics of commodore tapes.)... ============= Data Exchange ============= IN AN EFFORT TO EXPAND COMMUNICATION WITH OUR USERS, THIS SECTION WILL COVER ANSWERS TO YOUR SPECIFIC INQUIRIES NOT COVERED IN OTHER SECTIONS OF THE NEWSLETTER. In response to Mr. Arthur B. Hunkins, we have published the requirements for high-speed duplication for the PET. Although lengthy, this information should be something all Users could eventually benefit from. TAPE DUPLICATION HINTS (by L. Bryant) A. Explanation of PET recording scheme: The PET cassette deck uses an unequalized constant current recording method to place data on magnetic tape. The encoding scheme uses three distinct full cycle pulses. (See Figure 1). Figure 1: DATA TIMING !<---SHORT--->! ! 360uS ! ! ! ! +------! !------+ ! !<----- ----->! ! ! ! +--------! !--------+ ! !<------- ------->! ! ! ! +------------! !------------+ ! A data zero or one is represented by a pairing (or dipole) of a short and a long pulse. If the short pulse is first, then the dipole is considered to be a zero. If the long pulse is first, the dipole is a one. The byte mark occurs once each byte and provides a reference for byte identification. B. PET Playback Circuit The PET cassette playback circuitry first amplifies the recorded signal then passes this through equalization and squaring circuits. Thus a logic-level signal is presented to the computer. The computer measures the time between negative edges of the signal and decodes the data from these measurements. C. The following points are important to successful tape duplication: 1. The PET outputs data during WRITE to the cassette with the information carried by the positive transitions and accepts data during READ with the information carried by the negative going edges. See Figure 2. Figure 2: DATA IN/OUT !<---- BYTE ID ---->!<----DATA "0"--->!<- DATA... !<-BYTE ->!<-SPARE->!<SHORT>!<-LONG-->!<SHORT>!<-LO ! ! LONG ! ! ! ! ! ! ! ! ! ! Write Data: !----+ !----+ !---+ !----+ !---+ ! ! +----! +----! +---! +----! +---! ! ! ! ! ! ! Read Data: ! +----! +----! +---! +----! +---! !----+ !----+ !---+ !----+ !---+ ! 2. Because of this encoding scheme, the data is polarity sensitive. A 180° phase reversal to proper data produces unreadable data. To check for proper data polarity with an oscilloscope, connect the scope to monitor the READ data from the PET cassette to the computer. Put the tape to be checked into the cassette and press PLAY. Set the horizontal rate to 100 micro-seconds per centimeter, and the triggering for negative going edges. Set the vertical scale to 1 volt per division and center the waveform on the screen. Adjust the scope trigger so that the displayed waveform is at the center of the left edge of the screen. The signal should appear as shown in Figure 3, with the negative going edges of the short and long pulses clearly visible. Depending on the scope used and the data, the byte mark negative edges may also be visible. FIGURE 3: READ DATA SCOPE DISPLAY ! ! ! - ---!- --!...: ! ! ! ! : ! : ! ! ! ! : ! : +-----!--!--!-:--!---:---- ! ! ! !: ! : ! ! ! !: ! : !! ! ! !: ! : ! --- --!...! ! : !<--SHORT-->! ! : !<-----LONG----->! : !<------BYTE-------->: (IF VISABLE) Try switching the polarity of the scope trigger To positive going edges and observe if the positive edges are closer to the proper timing than the negative edges. If the positive edges are better, then the recorded data has the wrong polarity. 3. Because of the great high frequency emphasis encountered with audio cassette recording the phase of the signal may shift as much as 90° due to this emphasis. This produces read data which is halfway toward being reversed polarity. This situation is evident when scope shows negative and positive edges to be equally far from the proper timing. A partial phase shift (much less than 90°) usually accompanies tape duplication and this is visible on the scope as a widening of the negative going edges. Generally, better duplication has been obtained with the high frequency peaking in the duplicator master deck reduced to nearly minimum. 4. The level at which a PET cassette deck records is around 500 nanowebers per meter, (nWb/m), which is just under saturation on low coercivity tapes. It has been found that duplicated tapes perform better when their level is slightly higher than the PET tape level. It is also possible to fully saturate the tape and obtain good duplication results. Generally, then, the rule on recording level is "the higher, the better", providing the duplication equipment can handle these elevated levels. 5. The PET cassette data is recorded 1/2 track on 1/8 inch tape. It has been found that when the data is duplicated with some stereo heads, the head skew and differing phase relationship between the 2 tracks causes a distorted signal and reduced readability. It is therefore best to use monaural heads on duplicator slaves which are to be used for duplicating PET tapes. For high volume cassette tape reproduction you may wish to contact either of the following companies which currently produce Commodore Master Library Programs. CORY SOUND 440 Brannan St. San Francisco, Ca. 94107 ATTN: Phil Markinson OR AMERICAN SOUND 8120 Webb Ave. North Hollywood, Ca. 91605 ATTN: Rick Hutchins on Just had to add this tidbit from the same issue, about the PEEKing of the original PET ROMs... Recall earlier I (Jim Butterfield) mentioned that POKE and PEEK aren't possible on all memory locations for several reasons: [snip] C. Next on the memory map is the Microsoft BASIC area; locations 49152 to 57463. This is the memory that recognizes and performs your commands. Changing the contents of these locations is impossible because it is Read Only Memory and is actually 'burnt in' at the factory. Therefore, POKing these locations will simply do nothing. Also, Microsoft requested that these locations return zeros if PEEKed (for copyright reasons). -- 01000011 01001111 01001101 01001101 01001111 01000100 01001111 01010010 01000101 Larry Anderson - Sysop of Silicon Realms BBS (209) 754-1363 300-2400 baud Commodore 8-bit page at: http://www.jps.net/foxnhare/commodore.html 01000011 01001111 01001101 01010000 01010101 01010100 01000101 01010010 01010011 - This message was sent through the cbm-hackers mailing list. To unsubscribe: echo unsubscribe | mail cbm-hackers-request@dot.tcm.hut.fi.
Archive generated by hypermail 2.1.1.