ELECTRONIC TAPE WRITING MACHINE

Abstract: An electronic tape writing machine having a system capable of adjusting intercharacter spacing for a wide variety of type fonts and sizes. The spacing is adjusted by determining the type point size, scaling that information against a known data to produce a proportionally adjusted print width for each character. Then, intercharacter spacing is accomplished by checking to ensure that related characters are kernable, and then adjusting (usually reducing) a standardized space between characters for that point size type. The spacing can then be proportionally increased or decreased by taking the calculated intercharacter spacing and scaling it by a operator determined factor.

Description: ELECTRONIC TAPE WRITING MACHINE Appendix Cross-Reference This application contains an appendix A of computer software used for microcomputers 810 and 848 herein. Technical Field This invention relates to the general field of printing or typing equipment involving the precise positioning of adjacent characters. Specifically, this invention is embodied in a system which produces a continuous tape bearing such characters having spac¬ ing determined by the apparatus. Cross Reference This application hereby incorporates by refer- ence the disclosures of our co-pending applications filed on even date herewith with the following titles: Precision Tape Feed and Guide Mechanism, S.N. Print Disk Positioning System, S.N. Printing Mechanism, S.N. Ribbon Cassette, S.N. Tape Cassette with Supply Indicator, S.N. Background of the Invention Printing of characters on a continuous trans¬ fer media or tape has made a tremendous improvement in the ability to create commercial art products because of the increased speed and accuracy of the machines which produce the tape. One such machine is shown in U.S. Patent 3,834,507 issued to Bradshaw. Because of the particular requirements of the commercial art in- dustry, extreme accuracy is required with respect to the horizontal placement of the characters. Further¬ more, a successful printing machine must be able to switch from one type font and type size to another and still be able to adjust the spacing for each size and font. In prior systems, such as that in the above cited patent, the intercharacter spacing was accom¬ plished by physical movement of the carrier tape after printing so that the tape was movable both left and right until the next adjacent character could be located in the appropriate position. Such physical movements require complicated mechanisms and are sub¬ ject to wear and misalignment. The present invention solves some of the problems of the prior art by pro¬ viding an apparatus and method for producing successive adjacent characters which the desired intercharacter spacing for a variety of fonts while moving the tape in only a single direction and with a minimum of mechan¬ ical components. Summary of the Invention The invention is generally directed to an electronic tape writing machine and method for tape writing including means for inputting character and control codes to a central processing unit, means for processing such codes to produce signals capable of operating a printing station having a printing device and a tape feed which can produce a succession of kerned characters on the tape, said processing means including means for detecting the type size of charac¬ ters to be printed and determining a standard character width from a table, scaling the standard width from the table to the detected character size, means for determining whether the preceeding detected character and the present character are a kernable combination by accessing an intercharacter spacing table having all kernable combinations and their appropriate kerned intercharacter spacing, means for substituting the normal intercharacter spacing for that character size with the appropriate kerned intercharacter spacing if the character is kernable, and means for transmitting printing and tape command instructions to the print station to produce a series of characters having the appropriate intercharacter spacing. Although some specific embodiments of the present invention have been shown, those skilled in the art will preceive modifications which can be made without departing from the spirit of the invention. Therefore, it is intended that the scope of the present invention be dictated by the appended claims rather than by the description of the embodiment. Brief Description of the Drawings FIGURE 1 is an environmental view of a pre¬ ferred printing system employing the present invention; FIGURE 2 is a bottom plan view of a print disk; FIGURE 3 is a schematic block diagram of the main circuitry in the preferred embodiment of the pre¬ sent invention; FIGURE 4 is a schematic block diagram of the keyboard section of the circuitry; FIGURE 5 is a flow-chart of the overall pro¬ cess of the preferred embodiment of the present inven¬ tion; FIGURE 6 is a flow-chart of a portion of the process shown in FIGURE 5 relating to the start sequence of the apparatus; FIGURE 7 is a flow-graph of a portion of the process shown in FIGURE 5 relating to reading data; OMPI FIGURE 8 is a flow-chart of a part of the process shown in FIGURE 5, this portion relating to processing of data; FIGURE 9 is a flow-chart of a portion of the process shown in FIGURE 5, this portion relating to printing of characters; FIGURE 10 is a flow-chart showing a portion of the process shown in FIGURE 5, this portion relating to character spacing; and FIGURE 11 is a flow-chart of a portion of the process shown in FIGURE 5, this portion relating to text editing. Detailed Description * of the Preferred Embodiment The main circuit of this preferred embodiment is shown in block diagram form in FIGURE 1 wherein the main microprocessor 810 (in this case an Intel 8031) has a plurality of inputs 812 and outputs 814 which are shown as "black boxes" since they are easily replaced by a variety of circuits which accomplish the required interfacing. The component 835 in the box with broken lines is an Intel 8155. The actual mechanical compon¬ ents to which the interfaces are connected at their opened end is shown in our co-pending applications mentioned in the Cross-Reference section herein. Each relevant port is indicated by the manufacturer's or other standard code with an indication of the number of data lines if not entirely obvious. Of the various inputs, a low paper sensor in- terface 816 is optionally available to read a signal from the tape cassette indicating a minimum amount of tape available. The home position sensor interface 818 is capable of receiving a signal from the apparatus in our application PRINT DISK POSITIONING SYSTEM at sensor _ O PI 67 therein. In general, * interface 818 will sense the fact that the printing element, of whatever type, is at its home position. Bar code sensor interface 820 likewise senses a particular location on the printing element, in this case the beginning of the bar code sector as could be indicated by element 31 on the above identified co- pending application. The bar code sensor detects a bar code on the printing element or print disk which tells the microprocessor 810 the type font and point size as will be explained hereinafter. The bar code sensor also aligns the disk with the most used charac¬ ter ("E") in the print station. Hammer stop sensor interface 822 is preferably used to return an impact printing device to its home position, in this case the hammer stop sensor is sensor 218 shown in FIGURE 8 of our co-pending application entitled PRINTING MECHANISM. Expand/condense switch 824 can be provided by BCD (3 bit) contact which operates the expand/condense portion of the microprocessor as explained hereinafter. Serial interface and multiplexer circuit 826 has an input 828 from a serial keyboard as shown in FIGURE 2 or from an RS232-C serial data line 830 the multiplexer selects which of the two inputs will be applied to the microprocessor. A power on/off and reset control is provided as indicated by numeral 832. On the output side, a memory bus connects the microcomputer 810 to a program and space table ROM 834 which includes the operating program and the various character widths and intercharacter spacing tables as will be explained hereinafter. A buffer ram 836 pro¬ vides storage for characters input prior to printing. The step or motor drive interface 838 receives signals from the microcomputer to drive the track and OMPI sector motors on the print disk positioner 18 also shown in our co-pending application PRINT DISK POSI¬ TIONING SYSTEM and the paper and ribbon motor drive 26, 27 also described in our co-pending application PRECISION TAPE FEED AND GUIDE MECHANISM. The print motor drive interface 840 provides a signal to the print motor which operates a hammer, such as hammer 140 in FIGURE 4 of our co-pending appli¬ cation entitled PRINTING MECHANISM. Paper cutter drive interface 842 provides a signal which activates paper cutter 28 shown in FIGURE 1. FIGURE 4 shows a schematic block diagram for the keyboard input which appears as numeral 828 on FIGURE 3. A matrix keyboard 844 provides a signal to a keyboard controller 846 which in turn produces an ASCII output to the keyboard microcomputer 848, which in this case is an Intel 8039. A program ROM 850 pro¬ vides the programming for the microcomputer 848 and information regarding the keyboard layout. A display drive interface 852 connects a microcomputer 848 to dot-matrix display 854 which holds up to 16 characters at a time. The output from the entire keyboard system is made available for serial interface 854 and, as explained earlier via 828 is transmsitted to the main microcomputer 810. FIGURE 5 shows a flow-graph of the overall operation of the invention in the preferred embodiment. Several of the blocks in this graph are expanded in further drawings hereinafter. Beginning at the top, the start sequence indicates the initialization of the system and is explained in detail in FIGURE 6. The second step is the get data block which draws informa¬ tion from the keyboard. This is explained in detail in FIGURE 7. The data is then processed as shown in OMPI FIGURE 8 and if the data is an edit command, the machine is switched to an edit mode and the edit func¬ tion is performed by the edit data block as indicated in detail in FIGURE 11. When the edit function is completed, the system is recycled. If the data is not of an edit command type, the data is printed by the print station after processing through a series of steps as indicated in FIGURE 9. FIGURE 6 represents the start sequence block in FIGURE 5 except it is expanded to show detail. In the start sequence, the system is initialized where all buffers are cleared, etc. The disk is then located to its home position which is determined by information from the home position sensor 818 (FIGURE 3). The home position is preferably where the disk is in its upper most position (withdrawn from the print head) and lo¬ cated at the beginning edge of the bar code sector. It is preferable to have a black or dark colored disk with the bar code sector 31 (FIGURE 2) being light in color with dark bars. The disk is rotated to locate the label (or bar code sector) as indicated above. The disk is then rotated to read the bar code by an optical sensor located on the printing station just below the disk. The information from the bar code is transmitted to the microcomputer 810 by the bar code sensor 820 and the bar code is compared with informa¬ tion in ROM 834 to determine if that particular font is in the software table. If it is not, an alarm sounds.. It it is, the microcomputer reads the point size for that particular type and locates the table address for that font in memory. That information is then displayed on the dot-matrix display 854 (FIGURE 4) in the form of font type and point size as a double check for the user of the machine. This disk is then brought to the home position once more (by using the OMP trailing edge 31a of the bar code region 31) which is generally with the letter "E" proximate the print head, since it is the most commonly used letter, and the print hammer is also brought to the home position which is retracted from the anvil. The disk is then moved to the index track and is mechanically ready for printing. A semaphore, which is a counter and indicator, is cleared and all pointers are reset. The system then goes to the next process, namely GET DATA as indicated in detail in FIGURE 7. The computer first checks whether there is any data present in the buffer, usually coming from an earlier keystroke. If there is none, the system jumps to exit this portion of the process and continues as indicated in FIGURE 5. Otherwise, the buffer is checked for fullness and if full, an alarm is sounded and the attempted input is rejected. If the buffer is not filled, the data is read from the buffer and echoed back to the keyboard dot- matrix display 854. The data is then stored in a buffer and the pointer therefore and semaphore are also incremented. Turning to FIGURE 8, PROCESS DATA, the value of the semaphore is checked. If it is a zero, the system exits the process data portion since there is no data. If it is other than zero, the buffer is read and a read pointer is incremented. The semaphore is decremented by one and the data is tested to determine whether it is an edit type command or a character com- mand. If it is an edit command, and the semaphore is zero, the process enters the edit mode as explained in detail in FIGURE 11. If the data is an edit character and the semaphore is not equal to zero, meaning the buffer has at least one character in it, the edit com- mand is refused and the system exits this portion of • ^3RE OMPI the process. In effect, it is not possible to activate from the keyboard the edit command, in an attempt to switch to edit mode, when there are printable charac¬ ters in the buffer. It is necessary to wait for the buffer to be emptied by printing the characters before entering the edit mode. If the data is not an edit character, it is therefore a printable character and it will be printed in the print data step as explained in detail in FIGURE 9. Finally, the last data element or character is stored in a "last" register for use later in the kerning process. Turning to FIGURE 9, the print data process, the data is compared with information in ROM to deter¬ mine whether it is a printable character for that particular print disk since a few characters may not be present on some disks for different languages, etc. If it is not a printable character, the print process is skipped entirely and the program exits to the next step in the overall flow-chart shown in FIGURE 5. If it is a printable character, and is not a space, the descriptors for the character are taken from ROM which gives the location of the character by track and sector of the disk. A calculation is made of how many motor steps is necessary to reach the particular track and sector .and that information is stored temporarily until printing takes place. The next step involves adjust¬ ment of the spacing and this is explained in detail in FIGURE 10. Spacing is adjusted in several ways. First by accomodating the width of the character by advancing the tape and ribbon sufficiently to print without over- striking the previous character, secondly calculating the intercharacter spacing and kerning the character to bring certain letters closer together to give a "type set" look, and thirdly the entire spacing process is expandable or condensible in adjustable proportion to spread out or contract the overall sequence of letters. The spacing adjustments are explained in FIGURE 10. The first step is to read from memory the point size of the type and to retrieve from ROM the character width from a generalized spacing table in ROM prepared for a 10-point type. Because the print disk employed may be larger or smaller than 10-point, the print width provided from the character width table must be scaled up or down in accordance with the actual print disk. This is a mathematical calculation. The scaled value then represents the number of steps corre-. sponding to the actual print width for that point type size. The next question is whether the characters are kernable. In kerning, only certain combinations of characters may be adjusted. Those combinations are stored in ROM and by comparing the current character and the "last character" which is stored at a special address, it can be determined whether this combination is kernable. If not, the kerning process is skipped but, if it is kernable, a table provides the degree of kerning, i.e. the amount of space to be added or re¬ moved between characters is added to the previously calculated spacing and a new intercharacter spacing is arrived at. If the expand/condense switch 824 (FIGURE 3) is activated, the spacing is then expanded by a pro¬ portional amount depending on the adjustment of the switch, perhaps 10, 20 or 30%. The spacing is then multiplied by the expansion or contraction factor and the spacing is proportionally altered. Returning to FIGURE 9, the paper tape and ribbon are actually incremented by their respective stepper motors the desired number of spaces between the particular character. If the character turned out to be a space, the print portion is exited since no printing takes place. On the other hand, if it is a printable character, the print hammer is activated and the program is finished until the operator touches another key which restarts the entire process. Returning to FIGURE 5, if the data inputted at the keyboard turned out to be an edit command, and there was no data in the buffer, (semaphore = zero) the machine would be set to an edit mode and data would not go directly to the printer. The edit mode is illustra- ted in FIGURE 11 and corresponds generally to a word processing machine. The microprocessor checks for the presence of data and ensures that it is not an exit or quit command. If it is some editing command, then the pointer in the buffer is incremented, decremented or otherwise adjusted to manipulate the data as shown in the flow-graph. If the buffer is full, an alarm is sounded since no further data can be stored and print¬ ing must take place. If the buffer is not full, the data is stored pointer is incremented and the display and the information is echoed to the display so the operator can see the exact structure of what is in the buffer. Of course, once the editing process is com¬ pleted, the data flows back to the process as shown in FIGURE 5 and the print is adjusted as per the print data process explained above. Thus, it is possible to type a number of characters, perhaps 256, into the buffer, make the necessary changes and then cause the system to print. OMPI APPENDIX A 12 :1øøø1øøø759S527588D075S92ø758DCCD2SεD£øø96 : 1 002000C292733 30C2D4D2D3D2B4D2B5740 12SS _1 00300007AE24FCFDFEFFC2D312059D742Θ120733 : 1øøø4øøøB9D2D3ε4FSF97AFF7B2øD293D2SεC2D3øF 11øøø5øøøE4F8FC7B4ø7581307574043øB3øA9øø77£ • iøøøfiøøøø 2ø£A3D29280FE9øø£F 12ø£A3C2øβDC : 1øøø7øøøø2 1 ø4D45524C494ε2ø582ε3ø342C2ø2ø 11 00800031 F3 362F38342C2ø4259204C2ε4£2E19 ϊ1øøø9øøø2ø4D43474F555£S459434F5ø59524947 9 1 øøøαøøø4SS42ø2a4329Sø3l393S342C20564152D5 :løøøBøøø49S4S24F4ε4943532øS359S3S4454D537D ' JløøøC00ø20494ε432E2ø414C4C20574F524C44£ø47 • i000D0005249474a545320S245S345S25S4S4420AF : 1 øøεøøø0ø3εD2D3C2D4C2flø389β33aAβøøSD≤S≤17 i løøøFøøøø2øliEC298E599B4ø2ø6BAFF21ø2øa69Fε : 1 1 000B40F030201 E5øø6B4øD 3ø2øløεFΞε2F9 : l øl100ø3ø99FDC299F599iABAøøø2D29≤øβC£D359 _ 1 12øøø22D2D3C2D4C2AøBAFFø3ø2 3D C292B6 ! 1 13000E3C2D31202A£D2D3C£A0E3FB09C£D3£2Ea : 0014000 lDF3i213øFAø£0£ø£øεø609ø5ø£ø£øABl i ø 5000060606060606060606060606 Aø6ø£ø53C : 1 ø16000090606060606E9602E740F5FC4D2D34F37 i1 ø170009001 693FF02 18&εA6 C74F0SFD2D3BF il la ε i4£93Fε εc4 cβcøεø s a ιDSiD i1 1 000fløF2DøεøFaC2D3229ø 1A6B4 0374FFF4 : 1 ø1A0002240FB239322FF00FF 1FF02FF03FF3 15 :løølB0øøFFøSFF06FFø7FFøβFFø9FFøflFFøBFFøCø3 ϊ 1 1C000FF0DFF0EFF0FFF10FF11FF12FF13FF14B3 i 1 ø1DøøøFF1SFF1SFF17F 1SFF19911AD 1BC 1C30 -lø 1E000CEiDCClECBlF10£øC5≤14D__2Dε23CS__4εS .1 ø1F000C725C226DB27D92SDA29C32 C1 BΞ&2CC2 100200004C2D4B2EC42F42304F31533251 352347F j 1 02100053355436353756385739D73 C03BD33C07 .1 022000C83DD43ED33F9440&7414A424643634463 110023000404561464947£44S£5495A4A5C4B454CCC «løø2400ø624D664ε424F5F5ø5951445243534 54fi>Zι Ϊ1øø25øøø47555D5££ø575B584S595S5A8F5BCD5C7F : 1ø026øøøaε5D9øSε93SF9260Aø&13A£28£639GS4FB iiøø27øøøSø£59A££39£79D6β9ε69SB£A966Ba5£CB6 l 1øø23ø0ø9B6D9F6εβ26F9S7øSC7134723373317432 s10ø290øø87759776997795788S79βD7 D27BC97C9E s i0ø2fløøøD17DCfl7εD57FFε3øB3øf.9øø7øfl1 06 31D :løø2Søøø02923øFεi2ø7BF74øøl2ø7B9εεB4øDø689 :1002C00012053 2ø2F£243ø4ø2CBε2øø779øø7AB4 11 2Dø ø 2ø εSε 319SB4FF030202FBFA1 02BB : 1 ø2εø0øFCεβ12031C12034BB220030202F£742a__!_i ϊ1 02F0001 07B 12053474281207B9227F0054CøBε :10ø300øø2323F9ε47804243Dø8D9FBCBF4ø470ø4DA s1 031000EB0203 A2B4øø3F4ø4øFF922CFC4CF548D : 1ø03200ø3FFA60ø4ε428DAFDCCF4ø47øø4εCø2ø324 :10033000372C4003F4040FFA749C2A500A6AF404A0 t 1 ø34øø024CSFAεFε4 1FF£FC4FF22C£D5BE2øø32S :1 0350000203561 03BSD2D3EBC2D 1 043FF91 F0 : 10038000D2D5EA12063E1£04i24iZ>__i338E74Sa120378 ! 10039000A4E960 119EA60Θ11A80CC1≤052Ξ74£2D3 _løø3Aøøøl2ø3A42£85EøaC75SAøøC2aDD2aC≥øaD__8 s 1003B0000411DFaøF9C2aC££E9£øøD781 7D1 31C4 1 03C000661203C371A4D9F7££E86ø03ø£ø3D7E9D£ 1 03D000£4EF500374E6££3003F39 13223003Ξ36C 1 03E000E99 1D22B9BABBBCBEC1C5C9CDD1D5D90F 1 03F000DDE1E4E5E5E4E3E2E1DFDCD8D4CCC8C448 10040000C0BCB9B8ES6003020412EA24EF500974D2 10041000C02290042E93182290041EEA931D228974. i 1øø4£øøøθAβCaF93979CA1A6ABB0B5B9BCBEBFBF39 IZI043000BEBCBAB6B ACA3A49C9894903C89aaD26£ 1 044000D3C2A0C2 1EB85708£a5718393C2D3D2DF 1øø45øøøAø6ø64CøEøεE932øE7ø££øE£1502047B6E 113IZI46000S0E618D0E0C0E020E71130E60ED2 1 ≤øD 10047000047BD0E0C0E030E702D201D0E0543F1££C 1004S00007D2C0E09004B8E57375F008A425S£F5A£ løø49øøøa25øø£ø583E4£0øiøε74ø493CøEø74ø4D6 1 04A000B57405D0E00204B1E57433F5F0D0E02511 1 04B000F0F5F0D0E025F02200F FFFFø1 1 2037C 1 04C000 1FEFEFF02 1 203 1FEFEFFø≥ø1ø2ø4__3 1 ø4Døøøø2FDFEFFø3øl 30402FCFDFF040203050D løø4Eøøøø3FBFDFEø3ø£ø5ø7ø4FAFCFDøεø3øSø9Fl 1 04F00004F9FBFD0705080BB90003020519D2D3S7 1 050000ED44109ø 1 693FDEDC44CD2A0C8C0E06C 10051 00C87802F2D0E0F8C2D322B9000302053352 1 052000D2D3BD060CD2D3EC4 1 90014£93FCS08C 1ι_.053øaøD7C≤D__2£78ø5E471A4DSFCC2907S32E403 i 1012540 071A4 1 1£056A£øSDø3ø£ø5551'__0'5fiA73 1 055000D80302057511DF20B4EDD290E471A471C7 1 058000A471A471A471 4C£aC££75aC00758A0033 1 057000D28CC28D22900£DAD£901£06A3D£9£803B 1 053000FΞ740071 4793891F8749871A4D9FaC£f.b 1 059000 17908B125E4 1 4D9F9D291££792ø7FøB 1 ø5Aøøøøø3166 178748071A4D9F679FF7Fi1£øβB 1005B000B5123166748071 4D9F59øø6CAl£ø6A3ΞB løø5CøøøD≤9£βøFE7DC87Aø87Fl 13178743071A49ø ιløø5DøøøDDøA9øø7£Al£ø6A3D£9£aøFE3ø36E7DA4F 1 05E000E97F007AC83178743071A43ø96øCDAFΞ5E_ 1005F00090071A1£06A3D£9£30FEE47D08C37A0504 1 060000C0E03178743071 43096 1D3DAF4D0E0D0 100£100033DDEAF570F575E47D03C37A05C0E0319A 1 08200078743071 43096 1D3D F4D0E033DDEA87 lø0£3øøøF57312øS45E57575FøøCA4C3£46AF58£BC 1 064000E5F03407F583780C1£ø6A5E57375Føø4__0 løø65øøøA4248EF5a£E5Fø34ø7F5θ37aø41£ø6A5øC 1 0860007AFF748071 4DAFAB1347 3220980 1B£ 1 06700078743071 4DAF5 1B 796D7F00781 7DB5 1øøGβøø 1 316871C971A4D9FΘ91F8B1£5££B4£ø4E 1 0690000D500BC31 FDΞ0 1 4F824F04004781øF£ 1006A0007D1022781ø7Døø4øø£D£9£ED933ø99FDAft løø6BøøøC299F599øDDSF4C29££2≥ø£ø£ø2ø£02ø4£ 1 ø6Cøøø2ø£ø2ø2ø2ø20£ø£ø£ø£04449534B2ø4E51 1006D0004F54204C4F43415445442048414D4D45D3 100£E000522050524F424C454D2053544F50£0».BB£ OMPI : 1 08F000455920505245535345444D45524C494E5F • i007000020312E30205245 1 459204F5554204F1E _100710004e205041504S5221£l£043414E4E4F54D6 si 07200020524541 42043415244434845434B20D5 s 1øø73øøø49462ø43415244204F48205052494E54S9 _10074000£054494D4553£02D3E20£04D455£4C49C3 :1 0750004E204544495420202020464F4E54204ΞE0 i 1β<_.7£ι3β<a FS' " .23 J .94-E2i2*V64S'VC4__ a45- * C5S54i£E3E ϊløø77ø0ø2ø4D4544£E2ø4S454C56542E£ø424C449£ ϊ 1øø78øøø2E2ø48454C56542E2ø4C4954£E2ø2ø3SBB !1 0790005054313050543132505431345054313837 -.1 07A0005054323450543330505433365054D2A 15 :1007B0007800C0E0740FF2D0E0D2A07803F222D229 s 1 ø7CøøøAø78øø74ø3F£7aø3E2F454ø7F57474£SF7 !1007D000S0DC9007DD75F008A425739322000000EB •.1øø7Eøøøøøøøøøøøøøøløløl l02020304020202F4 : 1 07F0000304050607020304040507090B030405A7 ϊ1 08000006070A0C0E04050607090C0F1£05060759 i løø81øøøøθøBøEi2i6ø6ø7øaøAøDl115l3øδøaøAøC s 100820000B0E13181D07090B0D10161B20080A0CC© j i 0830000E 2181E24090B0D0F1 1 £128 0C0E73 _ 1 0S400 11161D242BE57023F58275830CE493F5B6 •1 0850007174 1 3F57074FFB571 DB570 A90074E : 1 0S60005 1206 3D2928øFE£2D£D4C£D3D£ø078EA • i0087000 17B 17CøøC£Aø74ø 1 095BC2D4C3904 ■ .1 0S8000074A1206A3D2D4740812095BC31209S383 : 1 089000B40B03020ACDB40103020AD5B4030302£8 ; 1 08A0000ADDB41 03020AE3B4 1 3020AEDB40A2A :1008B00003020AB9B4020302001 B40003020 AC3£ :1008C000B40F030£0A18B40E030S0ASEB404030£52 51008D000097DB409030209D1B40803020931B40C3B : 1008E00003020912C0E0BS0007D0E012096BS09C37 : 1008F000EBB510040B020902BC11Ø28ØECBCØØØ233 !løø9øøøøSøE7DøEøl£ø35BF£BCøøø3ø£ø9øFlCøSSB : 100 1øøøø18CEBB5.1 0512096B 18CBCøøø7E£1£CB s 10ø<3£0øøø95BøeøiβCBC11-.13087 001£033BiC01ES 51 093000SCBB 1 3ø£ø93AB8øøø51£ø96B 18CBC9B i1 09400 1107E21£ø * 35B18 1SC740812095B0CBCDS : 100950001løεi8E86øE4aøε ia l8C3ø99FDC£39øC ■ .1ØØ96ØØØF599223Ø98FDC£98E599££7 1ØCØEØE4iβ • 10097000D2921470FBD0E 1 7øF3C29£2£7D 1E495 siøø98øøø315BC£D4D39øø6BA12ø6A3D£D47Cøø7SCD i1 ø99øøø 1E8B513030209C9E2315BC2D 1£0£ S11 .1009A000C£A0D£D4C2D3E£F50B0S309aE43163B4CC : 009B00006DFC2D4900££ £ø£ 3D2D4 183B4058E _ 1øø9Cø0ø0≤SøCEB4ø__FGø£øβ1 31GB1D D70DO01S£ J1 09D0008C7400315B7C0078 19øø73AC£D41£081 ! 1009εø00A3D2D43163315B120A03540F75F00AA409 :1009F000FD3163315B12øAø354øF£DB4øøø£ø18CE8 .løøAøøøøFD217FB43Aø8316BDøεøDøEø8øC35øF£CE s1 ø 1 00B42F0280F140EF22BB 1 4316B 1SCBB3B : 100A2000FF0280F7BC000280F2BC11 280EDBC1S1£» s 100A30000F7408315B7420315B740C315B315B1CCB t løøA4øøølΞ0A4F740E315B3163315BF208018CAADC J1ø ASøøø10EBF9F81Sε2F319E8B51 FS0B22BB 1 4 OMPI s 1 600004 1SB018CBC0002S0F7BC1 lø£SøF2EQFB .1øøA7øøøB5130280EC4002S0ES1£øA9CBB 1 3ø£1D ! 100A800006BA740F315BEC2814BS13ø3ø£øA965ΘB£ : 1øøA9øøøø5F9E3ø2øA9S74£ø315B 18CAA1 A 1 B1 s 1øøAAøøø1B09E3F208E9B513F8AS12££E4315B74DC : 1 ø B00020 10315BDAFC016FC2D4D2A0E41207BΞ ϊ 1 0AC000B 1205811207BFD2D4C2A0 18C78289038 j 1 0AD0000B0E020AF27821900B36020AF2781C9073 :1øøAεøøøøB5702øAF27S379øøB73ø20AF27a2B3øB8 I1 AFøøøøB AE493Cøa2Cø83C2D41202A6D2D4C2SD :10ø800øøD3E4Dø83Dø8293F5øBA3D8ESøl8C45546F s 100B10004F53524C43555947422E2D2230313233DS : 100B20003435363738395A514A5S4B562C50574677 s 100B30004D4448494E4165746F73726C63757967B3 j 100B4000626A717A5D5B5E1A605F40786B7870777F ! 100B500066£D646a&96ES13B2B2S2 £F£1£4£53D32 j 100B60007C7S1F1ESC1D1C1B7D7B3C3E7FS33A3F11 : 100B700028292754434520515549434B2042524F7C : 100B8000574E20484F58204A554D5053204F5643FA i 100B90005220544S45204C415A5920444F472E205A jløøBAøøø3ø313233343536373839746a6520717ΞFl :løøBBøøøS9636B2ø6£726F776E£ø666F7a£ø£A754A j i øBCøøøSD7ø732ø6F7665722ø7468652ø£Cε17A 1 j050BD0007920846F674D : 6øCø0øøøC30øDøøøDβøCa t 0C80000000000000000000000000000000000064 i 100C90000000000000000000000000070909050&30 : 1øøCAøøøø8ø2ø4øaøεøAø7ø£ø3ø3ø3ø7ø£ø7øεø3F7 : 1ø0CBøøøø&ø4ø&ø6ø£ø6ø£øεø6ø£ø2ø£ø7ø7ø7ø60B !100CC000098707070706060807020507C608070879 1100CD000060Θ0707460746480746070307030308B1 : 1øøCE0øøø2ø£0£ø60&06ø40£øεø£ø3ø£ø£ø9øεø&B£ :løøCF0ø0ø8ø604ø6ø4øSø5øaø£ø5ø5ø303ø3ø7øSAl : 100D000000000000000000000000000000000000E3 s 1 0D10000000000000000000000000070909050&..F :100D200008020408060A0702030303070207020376 s 1øøD3øøøø604ø£ø6øεø6ø6øεø£ø£ø2ø£ø7ø7ø7ø65A - i 0D4øøøø937ø7ø707ø6ø608ø7øεø5ø7C6øaø708FS {100050000608070746074643074607030703030830 ; 0D&000020&060&060£040£0602030&02090&0£ 1 : 1øøD70øøø6ø6ø4ø604ø605øβø£ø5ø503ø3ø3ø70β£ø s 1øøD8øøøøøø0øøø0øøøøøøøøøøøøøøøøøøøøøøøø&3 : 1 0D9000000000000000000000000007090905062F : 1 0DA00008020408060A07020303030702070203F6 : 1 0DB00005040505050505050505020207070706E3 il00DC000098605050£0505070£02050£C4070606S9 : 0DD0000S0£0S054&05464906450£0307030308BB ilø0Dεøø002ø60&ø£0£0&ø4ø&ø£ø__ø2ø8ø__ø<_ " ø£ø7Bl O P1 102000000245380 ,0C000700C5AAF8AB1 203420FBA8FA9323 _ 1øø15000D5BFF055C5BF109ACFA5B820B910BAC702 i1 16000F A3A 1829608 1F25D5FF3772B3763D 1ø 1700073247564BAF 967A 4A507967FA4ABBSDF i1 13000302308D 963ε233øDøC68C1 24AD230C 1 :1ø 1 000DA969DF0D31FC6 DF007 02 D23øεDA8 1 øøø96A444A523øF A96AB64A5S4A5D523F0C5 i 1 B0005FAF37F2SAS6B9246A8A209 DF866A09B5 11ø lCøøøAε23øF5FAF246A2ø 15354494157412089. : 701D0004E494C52454D2041 :1øøø2øøøD523F962FF7266525ε324B123D263523AC : 10003000F85FAF0466SC0323 14FAF0466362D6CB8 • iø0ø4øøø6623ø24FAFBA8øBCø6ø466εC66FA9726B8 • i000500052A767 BC06E666£3044FAF0466ECS6 7 •l øø8øøøε£2D23ø84FAFFFF2ABD£A5B£859279BDø2 : 1 007000062 1 4FAF9A7F04ABEDAB23_£04FAFBDEB :1øøøSøøø 1BB0904 BεD BεBaBø49B97Fεβ7AεF6AF :10009000959A7F04978A80BD0604AB23404FAF8AB0 ;øD0øAøøø8øBDø6ø 4 ABEDAB£3βø 4 FAFC5a3εø : 1ø 1 00000050A0F1419 ε23282D32373C41 64B97 sløølløøø5ø555A5F£469£ε737a7Da2S78C91969BΘ7 : 1ø 12000CCB830F0A885531F 7DF9631 CF231248C 1FA8F0AD531FA32D47530E7731 ι £øiεøøøFøF2F4F£FSFA5B IøC 1F00044D064D084D0 4D0C4D0E4D0AB : 002D0008 10B205 AFεB6DASDAøFD 3B6DF379040 !1002E000479 1DεEDASA 19AFDFF07908A02EFF22D _0502F000BF1 EF832E • 1003D00øaA10BE059AFEB£DDFDC£DDBDA0FDA3B__4?.' " (1øø3εøøøE2379ø479 1DεEDDSA 19AFDFF07908A63 j0803F00002EFF5BF10 2F8344 ιiøø4DβøβaAiøBE059AFEBSDABDAøFDA3B&DF37903ε j 1004E00047901DεεDAδA 13 FDFF07908A02EFF22B J0504F000BF10 EFβ32C j i 05D0008A1 BE059AFEB6D BD 0FDA3BSDF37303D J1005E000479 1DEEDA8 ø 9AFDFF07908A022FF22A I0505F000BF1 9AEF832B • 006D000S 108E05 FεB6DABDA0FDA3BSDF37903C s 1006E000479 1DEEDASAø19AFDFF07908A02EFF229 .0S06F000BF109AEFS32A : 1 07D0008 1 BE059AFEB6DABDA0FDA3B6DF37903B ϊ1007E000479 1DEEDAS 19AFDFF07908A02EFF228 i0S07F000BF109 SF83S9 i 5024100C0FES2000276 : ø02β200β888ø8ø0øø555Fø5Cøøø£øøø4øε444ø 13 10Eø292øø6ø4øε444ø2ø20402ø46 99404ΞA060 : 100300000000000000000D00C000C0C0000808F63A j 1 3i00øF6ø6øεøεø4øF2£εE8εA850 14SA29807F4 i 1 032000A3S402000C0080000609400A00000906B0 :10033000004 606FA0E0A0000640E4441 020020E4 I 100 ^00000000 4 4 44'0001 0 £ 4 °>__ 4øaøA . 035000BSD9E840E01 1Føøεβ0ø9399A5448498Cø : 036000D92A40A462F242800EDCDD A006 183 O s 1 0370006A4C24898A0C02849S99A644A49589869D 1003800044C60006000000100600A000609040A0O7 løø390øøøø&£&6ø6øøøø9ø6øøøAø4ø808Bβ44ø8468 10040000929BA664E027£A£70S6aF999064EA4368D 10041øøø99EøøøAøF999ø£øεεø9F99ε944ø48F88BD 10042000E844049S99E240640F00EF44E4903F003S 1 ø43øøøεøøø 2ε928øøøεøFø&E9øøø 1F11E1 092 løø4400øøøøF04EF08ES4F20EF40E09£99E6øøεø47 100450008F8aE444a4968BE700C£8FA8E544A49477 1004600099A244A4388F08E0001E11EEøøεøøEø 5E 10047000CE02C21E12EE6øεø696øA94øAø43438β27 løø480006øSøB9D929408øFF99ε9øEøø4ø2øSø4ø62 lø049øøø2ø99F9øFøøεεø2ø4ø2ø4ø4 11 løløøøø7 1005øø0ø8ø4ø00βøøø7ø77£3øø£ø5F55E£øø6ø52F9 10051øøø5565øøøø52556Føøεø727762øø4øøøS719 1 0520øøøøε4ø46ø7746øø6ø4F44ε3øø6ø5 1F0021 1 0530006000 øε 20000&2F50E0&000901F00E0F6 1005400000474363&0604744&300605255&2006047 100550006766600040608647006070400446007156 1 ø56øøø7744øø2ø4ø56øøεøø 16 16&øø6øø& 1 6 1 05700046024216 2&&2ø£øø5ø2ø5ø6ø£34334£1Ξ 1005800000&0S557050204009&00A400000F00A06B 1005900000900&00A00404000S8808060F40EAAA9C 10070000434F50595243474854202843292031 9F£ 1 071 003Θ342C20564 524954324F4E43435320AD i0ø72øøø53S95354454D532ø494E432C2ø414C4C72 1007300020574F524C442052494748545320524569 ø7ø7400ø534552S645442εBB 1002A500B830F0A8D31F96AF24AD232FDS96B62427 1002B500ADB9301118FS370331A92320201829C149 0302C50024AD20C8E9C724ADF7 1003A500B830F0ASD31F96AF24AD2330DS96B62425 1003B5øøADASB524ADA5F8ø3εøC6C8A9B8£øF 18C9 ø9ø3C5øø2øε9C4B82øFAAø"24AD1F 1004A500BS30F0A8D31 96B318B91 F 44C1£33059 1 04B500D896B2C8FAB 1044C7F Aø£8ø7B83ø 024 0204C50024AD64 0C05A500B8 O PI

Claims: We Claim: 1. An electronic tape writing machine comprising: a) means for inputting character codes into a central processing unit; b) means for outputting signals from said central processing unit to drive a printing device and a paper feed device to produce a succession of charac¬ ters on a tape; c) means for detecting the font style and point size of the chosen type; d) means for comparing the point size and type style to a table accessible by the central processing means containing character widths for a standarized point size type and scaling the standard width for that character to produce a character width proportional thereto for the chosen type size; e) means for inserting a standard intercharac¬ ter space between successive characters; and f) means for advancing the tape a distance equal to the scaled character width plus a predeter¬ mined intercharacter space and printing the character on the tape. 2. An electronic tape writing machine according to claim 1 wherein said inserting means includes: a) means for storing the last printed character in memory; and b) means for comparing the combination last printed character with the present imprinted character with a kerning table to determine whether the co - bination is kernable and- if kernable, replacing a standard intercharacter space with a new kerned space from the kerning table. OMPI 3. An electronic tape writing machine according to claim 1 wherein said inserting means includes con¬ trol means to proportionally expand or condense said intercharacter space before printing. 4. An electronic tape writing machine according to claim 2 wherein said inserting means includes con¬ trol means to proportionally expand or condense said intercharacter space before printing. 5. A machine according to claim 1 wherein said printing device is an impact printer and a print disk movable along X and Y axes to locate a character within the jaws of the impact printer, said print disk includ¬ ing a plurality of concentric bands having characters spaced therearound and having an accurate region con- taining a detectable code readable by said detecting means. 6. A machine according to claim 5 wherein the print disk has 3 concentric bands and a "home" position from which it starts and wherein the characters are laid out on the disk such that the most frequently used characters are closest to the "home" position. 7. A machine according to claim 1 wherein said printing device and said tape feed includes a stepper motor which can be incremented in discrete steps in accordance with impulses sent from the central pro¬ cessing unit. 8. A machine according to claim 1 further includ¬ ing a means for text editing of said input character codes prior to printing. 9. A method of adjusting spacing between charac¬ ters in a printer capable of printing characters of varying size including on a continuous tape the steps of: a) detecting the type size of the character to be printed; b) detecting the specific character to be printed; c) determining the space required for that character from a standardized spacing table which lists the width required for all characters of a predeter¬ mined point size; d) scaling the information from the spacing table for that particular character to adjust the in- formation for the actual character type size; e) inserting a standardized intercharacter space between characters and advancing the tape a distance equal to the intercharacter space plus the acaled character width; and f) printing the character. 10. A method according to claim 9 further includ¬ ing: a) determining whether the preceding charac¬ ter and the present character are kernable by accessing an intercharacter spacing table which lists kernable combinations and the intercharacter spacing required for those kernable combinations based on characters of that point size; and b) altering the standardized intercharacter spacing proportionally to expand or condense the over¬ all length of a series of characters by inserting or removing a selected amount of space between each letter. 11. A method according to claim 9 wherein the step of detecting the point size of the character to be printed includes reading a bar code located on a planar surface of the printing element containing the charac- ter font.

Inventors: MCGOURTY LAWRENCE F, MCGOURTY THOMAS K, MCGOURTY, LAWRENCE, F., MCGOURTY, THOMAS, K.
Applicants: VARITRONIC SYSTEMS INC, VARITRONIC SYSTEMS, INC.
Application year: 1984
Main classification: B41J1
IPC codes: B41J1, B41J3, B41J19