Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
APPARATUS FOR AND A METHOD OF VENDING SOFTWARE
Document Type and Number:
WIPO Patent Application WO/1984/003575
Kind Code:
A1
Abstract:
The apparatus comprises a plurality of memory units (10), each memory unit storing a different item of storage, for example a computer program, and a number of cartridge ports (1) each arranged to receive a memory module compatible with a particular playing machine, for example a computer or video games machine. A keyboard (6) is provided to allow a user to select a particular item of software stored in one of the memory units (10) and a central processing unit (5) causes a selected item of software to be written into a cartridge inserted into a cartridge port (1) upon insertion of a token into a token-operated actuating device (7) of the apparatus.

Inventors:
RANDALL CHRISTOPHER JOHN (GB)
BROWN JOHN ARNOLD (GB)
Application Number:
PCT/GB1984/000075
Publication Date:
September 13, 1984
Filing Date:
March 08, 1984
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
MERMAID DISTRIBUTORS (HK)
International Classes:
G07F17/16; (IPC1-7): G07F17/16
Foreign References:
FR2057318A51971-05-21
US3947882A1976-03-30
GB2035756A1980-06-18
GB2063541A1981-06-03
Download PDF:
Claims:
CLAIMS:
1. I. Apparatus for vending software comprising tokenoperated actuating means, memory means storing an Item of software, means for receiving a memory module In which the item of software is to be stored and control means for causing the item of software to be written into a memory module 5 . Inserted in the receiving means upon insertion of a token into the token operated actuating means.
2. Apparatus for vending software, comprising tokenoperated actuating means, memory means storing a plurality of different items of software, 10 means for receiving a memory module in which an item of software is to be stored, selector means for allowing a user to select a particular Item of software stored in the memory means and control means for causing a selected item of software to be written Into a memory module Inserted in the receiving means upon insertion of a token into the tokenoperated actuating means.
3. Apparatus according to Claim 2, wherein a plurality of receiving means Is provided, each receiving means being each arranged to receive a memory module compatible with a particular playing machine.*& 20.
4. Apparatus according to Claim 3, wherein determining means com¬ prising an electronic recording unit is provided in the apparatus for recording the number of items of software chosen from each software manufacturer.*& 25.
5. Apparatus according to any one of claims 2 to 4, wherein printing means are provided for printing out instructions for using the selected item of software.
6. 3Q.
7. Apparatus according to any one of claims 2 to 4, wherein display means are provided for displaying an Image or' sequence of images re¬ presenting a selected item of software.*& 35.
8. Apparatus according to any one of claims 2, 3 or 4, wherein interface means are provided for enabling a microcomputer to be connected to the apparatus so that the selection of software items stored in the memory means can be altered,.
9. A method of vending software, comprising writing an item of software stored in memory means into a memory module inserted into memory module receiving means upon insertion of a token info token operated actuating means.
10. A method of vending software, comprising selecting an item of software from a plurality of computer programs stored in memory means in accordance with instructions input to selector means by a user and writing the selected item of softv/are into a memory module received in memory module receiving means upon insertion of a token into tokenoperated actuating means.
11. A memory module for use with apparatus in accordance with any one of claims 2, 3 or 4, wherein a read/write connection for a memory device in the module is provided by plating on a printed circuit board carrying the memory device, by an optical coupling or by a Hall effect device.
Description:
itle: "Apparatus for and a method of vending software."

THIS INVENTION relates to an apparatus for and a method of vending software.

Computers for use at home and video game machines are becoming increasingly popular and a large amount of commercial software is available for use with such machines. At present, a person wishing to purchase a particular computer program must purchase a cassette, disc or cartridge preprogrammed by the manufacturer. In order to cater for the consumers needs, a retailer must. stock a wide variety of different computer programs, for example different video games, which necessarily means that * the retailer has to maintain a large stock of the cassettes, discs or cartridges on which the various programs are stored. Maintaining such a large stock is inevitably expensive and moreover such a large stock will occupy a not inconsiderable volume of the retailer's premises.

It is an object of the present iπventron to provide an apparatus for and a method of vending software which overcomes or at least mitigates the problems described above.

According to one aspect of the present invention, there is provided apparatus for vending software, comprising token operated actuating means, memory means storing an item of software, means for receiving a memory module in which the item of software is to be stored and control means for causing the item of software to be written into a memory module inserted info the receiving means upon insertion of a token into the token operated actuating means.

Preferably, means are provided for changing the item of software stored in the memory means.

OMPI

Conveniently, the changing means comprises a further connector means for receiving a master module in which a desired item of software is stored and means for replacing the item of software stored in the memory means with the item of software stored in the master module.

According to a second aspect of the present invention, there is provided apparatus for vending software, comprising token-operated actu¬ ating means, memory means storing a plurality of different items of software, means for receiving a memory module in which computer program an item of software is to be stored, selector means for allowing a user to select a particular item of software stored in the memory means and control means for causing a selected item of software to be written info a memory module inserted in the receiving means upon insertion of a token info the token-operated actuating means.

Generally, the memory means comprises a plurality of memory units each storing a different item of software. Alternatively, the memory means may comprise the memory means comprises a single memory unit wherein each item of software is stored. Normally, the items of software stored in the memory means comprise a plurality of different groups of items of software, each group being compatible .w.iih a particular playing machine and a plurality of receiving means may be provided, each receiving means being each arranged to receive a memory module compatible with a particular playing machine.

Conveniently, the apparatus includes means for determining the number of items of software produced by a particular software manu¬ facturer which have been chosen over a particular period and means for thereby determining the royalty payable to the software manufacturer. The determining means may comprise a:ι electronic recording unit provided in the apparatus for recording the number of items of soflwσre chosen from each software manufacturer which may be provided in combination with a transportable reading unit for reading the information stored in the record¬ ing unit so that the informal ion may be later input to a computer. Means may also be provided for marking each token inserted info the machine with a cede ident ifying the. Item of software chosen so ihσf the number of a particular Hem of software chosen over a given period can be recorded.

In α preferred arrangement, display means are provided for displaying an image or sequence ' or images representing a selected item of software and interface means may be provided for enabling a microcomputer to be connected to the apparatus so that the selection of software items stored in 5 the memory means can be altered. Printing means may also be provided for printing out instructions for using the selected item of software.

Preferably, means are provided for erasing any item of software stored in a memory module inserted in the or the selected receiving means

10 prior to writing the selected item of software into the memory module and usually, means are provided for determining whether a memory module inserted into the or the selected receiving means is faulty and/or whether the memory module is compatible with the or the selected receiving means and means are provided for indicating .to a user of the apparatus that a

| 5 memory module is faulty and/or incompatible.

In a third aspect, the present invention provides a method of vending • software, comprising writing an item of software stored in memory means info a memory module upon insert ion of a token into token-operated 0 . actuating means.

In a fourth aspect, the present invention provides a method of vending software, comprising selecting σn item of softv/ure from a plurality of different items of software stored in memory means in accordance wϋh 5 instructions input to selector means by c user and writing the selected item of software info a memory module received in memory module receiving means upon insertion o f a token into token-operated actuating means.

Preferably, an item of software is selected from one of a plurality of 0 groups of items of software upon instructions from the user, each group of items of software being compatible with a particular playing machine and the number of items of software produced by a particular software manufacturer chosen over a given period may be determined. Each token inserted into the actuating means may be marked with a code identifying 5 the item of software chosen so thof the number of times a particular item of software is chosen over c given peric-J can be d ier ined.

The word 'token' as used herein includes a coin, bank note, plastics card or credit card or any other similar means.

The phrase 'item of software' as used herein means digitally encoded information, for example, data, graphics information or a computer pro¬ gram. Preferably, the or each item of software is a computer program, for example a video game, a business or an educational computer program. The item of software will be used with a playing machine which in the case of a computer program will comprise a computer or video games machine. Of course, if, for example, the item of software is a piece of music is to be recorded on a cassette, then the playing machine will normally comprise a cassette recorder.

The present invention also provides a memory module whenever programmed by the above described apparatus or method.

In another aspect, the present invention provides a memory module for use with apparatus in accordance with the first or second aspect, wherein a read/write connection for a memory device in the module is provided by plating on a printed circuit board carrying the memory device, by an optical coupling or by a Hall effect device.

In the preferred arrangement each item of software comprises a computer program which may be a video game, an educational or business program or any other form of computer program.

The present invention provides the advantage that it enables a retailer to have available a large selection of items of software without having to keep large stocks of cartridges, tapes or cassettes. Moreover, the memory modules may be reprogrammable so t at a user of the machine con replace the original selected item of software with a nev/ one at a lov/er cost than the cost of purchasing a new cariridge.

For a better understanding cf the present invention, and to show hov the same may be put into effect, reference will now be made, by way of example, to the accompanying d.-av/;r.gs, in which:

OMPI

FIGURE I is α schematic plan view of a front panel of a casing of apparatus embodying the invention;

FIGURE 2 is a sectional view through the casing of the apparatus of Figure I ;

FIGURE 3 is a simplified schematic block diagram il lustrating the general features of apparatus embodying the invention;

FIGURE k is a flow chart illustrating the operation of the apparatus of Figure 3;

FIGURE 5 is a further flow chart illustrating the operation of an electronic accounting system for the " apparatus.

FIGURE 6 is a simplified block diagram of a specific embodiment of apparatus in accordance with the invention;

FIGURE 7 is a simplified block diagram of a cartridge interface circuit of the apparatus shown in Figure 6;

FIGURE 8 is a simplified block diagram of a card reader/keyboard interface circuit of the apparatus shown in Figure 6;

FIGURE 9 is a simplified block diagrcm of a lamp and printer interface, circuit of the apparatus shown in Figure 6;

FIGURE 10 is a simplified block diagram of a sound circuit of the apparatus of Figure 6;

FIGURE I I is a circuit diagram of a cartridge or memory module for use in the apparatus of Figure 6; and

FIGURE 12 is a front view of a casing of the apparatus of Figure 6.

Referring now to the drawings, Figures 1 to 3 i l lus trates schema¬ t ical ly apparatus embodying the invention for vending sof tware. The

apparatus illustrated is specifically intended for the vending of software in the form of a computer program, although, of course, it could be used for vending other forms of software.

The apparatus allows a computer program stored in memory storage means of the apparatus to be written into a memory module which will later be used to input the program info a computer used at home or a video games machine. Preferably, the memory modules are memory cartridges designed to be slotted into a socket provided in the computer or video games machine although of course the memory modules could comprise floppy disc, tape or other suitable memory storage means. As will be appreciated, the amount of memory storage required for a program will vary from program to program. Accordingly, memory modules having different memory sizes, for example , 8K or 16K, may be provided.

As shov/n in Figure 3, the apparatus comprises a number of memory module or cartridge ports I in which a blank memory module designed to be plugged info a socket provided in a computer or video games machine may be received. Usually, the blank memory module will incorporate a progrσm- enable read only memory which is preferably an electrically erasable programmable read only memory (EEPROM) or alternatively, the memory module may incorporate battery backed up random access memory. Each of the cartridge ports 1 Is designed to accept a particular memory module compatible with a chosen commercially available home computer or video games machine. Thus, as shown in Figure I , a first cartridge port la Is designed to accept memory modules compatible with an Atari (Registered Trademark) computer or video games machine, a second cartridge port lb is designed to accept memory modules compatible with a Infellivision (Regis¬ tered Trademark) video games machine and a third cartridge port lc is designed to accept memory modules compat ible with a third popular computer or video games machine. The choice of the third computer or video games machine may of course be determined either by the manu¬ facturer or by the retailer.

As shown In Figure 1 , display sections 2 are provided on a front pant;!

3 of a casing of the apparatus. Each display section 2 gives details of a particular computer program and preferably includes a drawing cr photo-

graph il lustrating the operation of the program. In the arrangement shown, up to 96 different games can be selected. A number or code is inserted in each display section and a particular computer program is selected by entering the associated number or code into a memory of a central processing unit 5 (Figure 3) via a keyboard 6 as illustrated in Figure I . The keyboard 6 shown is, for convenience, a hexidecimal key pad. However, it would of course be possible to use a key pad only having the digits 0 to 9.

The apparatus is activated by inserting a token into a token-operated actuating device 7 via a token receiving port 8. The token may comprise a coin, a bank note, a specially designed card bearing, for example, a coded magnetic strip issued to the user by the retailer in exchange for money or a special credit card issued by the manufacturers of the apparatus or exceptionally the retailer.

The central processing unit 5 receives signals from the token- operated actuating device 7 in order to determine when a token has been inserted info the port 8. The CPU 5 also scans, via a scanning bus 9, the status of the cartridge ports I so as to determine v/hen a memory module has been inserted into a port and to identify the particular port chosen.-

As shown in Figure 3, the compu ter programs are stored in memory means 10. In one arrangement each computer program is stored in a separate memory unit. . It should be understood that because of the incompatibility of dif ferent computers a d video games machines, it wil l normally be necessary to store a version of each program compatible with each of the three computers or video games machines selected if the ful l range of programs is to be provided for each computer or video games machine. Alternatively, different select ions of programs could be provided for each computer or video games machine. Accordingly, it wi ll normally be necessary to store three different versions of each computer program. Preferably, each different version is stored in a separate memory unit. Each memory uni t may be, for example, a ROM cart ridge plugged into a receiving socket (not shown) in the apparatus, a tape or disc or other suitable memory storage rn'_-ans, such a memory unit may of course be replaced as r..quirr.d by uπrτ' * h:_r ι r..:: n -:'y unit carrying a di f ferent progrπt n when the retailer considers that a change in the selection available is

desirable.

The memory units 10 may be divided into three groups, a first group containing programs which are compatible with a first computer or video game machine, for example the Atari Home Computer, a second group compatible with, for example, the Infellϊvislon Video Games Machine and a third group compatible with the third selected computer or video games machine. Each memory unit in a particular group will normally be connected to common data, enable and address buses. Of course, should the central processing unit have sufficient address memory space then all the memory units may be connected to single data, address and enable buses.

In an alternative arrangement, the memory units [ 0 may be replaced by a disk or other single common storage system, In particular a floppy disc storage system. Preferably, the floppy disc storage system has twin disc drives and most conveniently the discs used are double-sided, double-density discs so that the selection of programs available may be stored on the minimum number of discs.

The operation of the apparatus will now be described with, particular reference to the flow chart illustrated in Figure 4. Thus, Init ially, a customer purchases a blank module compatible with a particular type of computer or video games machine with -which he wishes to use his selected program and, if necessary, a specially designed card, which may be made of a plastics material or paper card for insertion into the token port 8 from the retailer.

The central processing unit 5 will have caused an "Insert cartridge" light 12 on the front panel 3 of the apparatus casing 4 to light up once the last cartridge Inserted into a cartridge port 1 has been removed a.-, indicated at 13 In the flov chart of Figure 4. The central processing unit then scans the cartridge ports I, as indicated at 14 in Figure 4, until i f dεfcϊcts that a cartridge has been inserted info a particular port I by the user. The centra! processing unit 5 then checks whether the RAM of the inseried cartridge is faulty as indicated by step 1 in Figure 4. If the CPU 5 determines that !. ι<_. RΛ/v'i is faulty or I at the cartridge Inserted is the wrong type of cartridge for that particular port, a "Faulty Cartridge" light ! o on the front panel 3

OMPI

will be caused to flash and a "Remove Cartridge" light 17 will be lit instructing the user to remove the faulty cartridge, obtain a replacement from the retailer and begin the above procedures again (step 15a in Figure 4). The CPU 5 also checks to determine that the inserted memory module has the appropriate memory storage size for the selected game and will cause the 'faulty cartridge' light to be lit if the memory storage size in the module Is too small or excessively large for the selected program and will request the user to remove the cartridge. If however the central processing unit 5 determines that the inserted memory module is not "faulty", then the CPU 5 will cause an "Insert Token" light 18 on the front panel of the casing to flash. The CPU 5 waits for a signal from the token-operated actuating device 7 to indicate that a token has in fact been inserted into the token port 8 (steps 19 and 20 in Figure 4). Once the CPU 5 determines that a token has been inserted, if causes a "Select Game" light 21 to flash and commences to scan the keyboard 6 to determine the program selected by the user (steps 22 and 23 in Figure 4). If the CPU 5 determines that the user has in fact entered his selection via the keyboard 6 (step. 24 in Figure 4), then the programming instructions of the CPU 5 will address the area of the single memory means memory associated with t e number input via the keyboard or will, as appropriate, cause the memory unit 10 associated with the number input via the keyboard 6 to be enabled via the bus 1 1 and will commence to load the program stored in the addressed memory area or the selected memory unit info its internal memory. Once the selected program has been loaded into the CPU's internal memory, then the program instruc- tions of the CPU 5 v/ill cause the selected program to be written into the memory module inserted in the chosen cartridge port 1 via a read-write line 25. (Step 26 in Figure 4). When t'r.e selected program has been loaded, info the memory module, the CPU 5 determines whether the program has been loaded correctly and if not reloads the program into the memory module. Once the CPU 5 has determined that the selected program has been correctly loaded into the memory module, a "Remove Cartridge" light 26 on the front panel 3 (steps 27 and 28 in Figure 4) will be lit to instruct the user to remove the programmed module. When the user has removed the correctly programmed memory module, the "Insert Cartridge" light 12 will begin to flash again to indicate that the apparatus is ready for the next user. However, if the CPU 5 deform inc.- 3 that the selected program has not loaded correctly on the second a t tempt, then the "Faul iy Cartridge" lighi wil l begin

to flash and the "Remove Cartridge" light will be lit advising the user to obtain a replacement memory module and commence the above procedures again.

Preferably, although not necessarily, the apparatus incorporates a printer 1 1 (Figure 3) which, when a selection is made and is written info the memory module inserted in the sefected port, will print information stored in an area of the memory means, or a separate memory means, associated with the chosen selection detailing the instructions and any other fnform- atiσn necessary to enable the user to use the selected program. The printer - may also provide the user with a receipt.

The instruction lights 12, 16 to 18 and 21 may, of course, be replaced by a visual display unit (VDU) in the form of a cathode ray tube (CRT), a liquid crystal display device (LCD), a light emitting diode display (LED) or other similar display unit on v/hich messages can be displayed under the control of the CPU 5. Such a display could provide the prompt messages "Remove Cartridge", "Select Game", "Insert Token", "Insert Cartridge" and "Faulty Cartridge" provided by the instruction lights as well as messages such as "Selection Made - (Game Title)" when the CPU 5 determines that a selection has been made and "Game Being Programmed" during recording. It will be appreciated that the use of such a visual display unit enables the apparatus to display a larger number of messages without substantially Increasing the space required on the front of the * machine. Thus, for example, the message "Faulty Cartridge" at present indicated by light l o could be replaced, v/hen using a VDU, by separate messages such as "Faulty Memory" when the memory of the memory module is determined to be faulty or "Incompatible Cartridge" when a cartridge is inserted in the wrong port or 'wrong memory size' when the module inserted has insufficient or excessive memory space for the selected program. Conveniently, when the display provides the message indicating the title of the game selected and the machine with v/hich the game is compatible when a selection is made, It will request the user either to confirm that the correct game has been selected by pressing a key or tabulation (not shown) marked 'yes' or to press a button or key (not shown) marked 'no' if the user lias made the wrong selection. If the wrong selection has been made and the 'no' key or button pressed, the display wil l provide a message requesting the user to enter the

OMPI

correct selection via the keyboard.

As has been mentioned above the memory modules need not neces¬ sarily comprise battery backed-up RAM and could in fact comprise any 5 conventional memory storage means used with home computers and video

games machines. In particular, a memory module may comprise an electrically eraseable read only memory module, in which case it would be necessary to incorporate EEPROM programming means within the apparatus shown in Figure 3.

I 0

Advantageously, as in the case described and in the case of most other memory storage devices including electrically eraseable read only memory modules, the memory modules may be reprogrammed v/ith a new selection when the user no longer requires the first selected program. Thus,

15 where the memory modules comprise electrically erasable read only memory means, the CPU 5 will, when it detects that an inserted cartridge already

* has a program stored in its memory, cause an electrical erase signal to be sent to the cartridge via the port I in v/hich the cartridge is inserted to erase the original program before attempting to load the new program into 0 the cartridge memory.

If the memory module comprises erasable read only memory means, then a respective erase unit incorporating a source of ultraviolet light will be associated v/ϊth each port so that, when the CPU 5 detects the existence 5 of a program in the cartridge as initially inserted, the ultraviolet light source will be actuated to erase the original program before the new program is loaded info the memory. Of course, where the memory module is a conventional tape cassette or a disc, for example a floppy disc, it will not be necessary to erase any original program because the new program may be 0 written over the original program.

It should of course be appreciated that although the main commercial use for the apparatus described will be in the vending of computer programs in the form of video games, the apparatus may also be used to vend 5 computer programs for educational, business cr other purposes.

As described above, the memory unit I 0 comprises commercially available ROM cartridges and, as shov/n in Figure 2, the memory units I 0, and of course the corresponding display sections 2, which will in this case each comprise the display material provided on the ROM cartridge, may be replaced as required by removing the transparent front panel 3 by use of a key 30 or any other suitable release mechanism. Of course, although separate memory units are shown for each particular version of each game, all versions of all games could be stored in a single memory storage unit, for example a magnetic disc or tape storage unit.

Figure 5 is a further flow chart illustrating the operation of an electronic accounting system for the apparatus described above. As shov/n in Figure 5, the central processing unit 5 determines when a customer selects a particular computer program, In the example shown a video game, with which particular home computer or video game machine the selected program is compatible. A tally of the number of copies made of each - program produced by a particular soffv/are supplier Is recorded in an electronic tally unit 31 and, at predetermined intervals, a representative from the manufacturer will read the data stored in the electronic tally unit 31 by means of an electronic tally reader 32. The data thus stored In the electronic tally reader may then be input to a computer in the manu¬ facturer's accounts department. The accounts computer will be pro¬ grammed so as to determine the number of games or other software produced by a particular software manufacturer which have been sold thereby to determine the royalties payable to each software manufacturer. The accounts program also allows an analysis of the games marketed to be made to enable the manufacturer to determine which of the games or other software are most popular. This information may also be passed to the manufacturer's software development department so that they may deter- mine the type of programs required by the consumer. The accounts program also allows for automatic invoicing of the retailers involved. As a safety check in case of failure of the electronic tally unit, v/here the tokens are in the form of magnetized plastic cards provided by the retailer, then apparatus may be provided In the token-operated actuating mechanism which, under the control of the central processing unit 5, marks an inserted token with a code ident ifying the particular computer program select 1: .

The thus marked tokens will be retained in the apparatus so that a manual accounting procedure may be carried out if necessary.

In a preferred arrangement, a further memory means (not shown) is provided to store accounts details, such as the total number of sales over a given period. A socket (not shown), in the form of a further cartridge port, may then be provided in the apparatus so that, when a representative of the manufacturer, or owner of the apparatus inserts a memory module into the further port, the CPU 5 will cause the information stored in the further memory means to be written into the memory module. The thus stored information may then be downloaded into the manufacturer's accounts computer via an appropriate reading device. The further cartridge port may be supplemented or replaced by a printer (which could be the same printer as the one used to supply instructions to a purchaser of a game) so that a hard copy of the information stored in the accounts memory means may be provided when the appropriate instructions are input to the CPU 5 via, for example, the keyboard 6 or a separate Input device. Conveniently, the printer will be an impact printer so that carbon copies of the printout may be made, one copy of the printout being retained by the retailer and the other copies by the representative for accounts purposes.

In an alternative arrangement, a representative of the manufacturer may be provided with a separate portable printer which may be plugged info an appropriate socket in the apparatus. When the CPU 5 detects that such a printer has been connected to the appropriate socket, the CPU 5 v/iil cause the information stored in the further memory means to be printed out. Such a portable printer may form part of a portable .computer system which could also perform basic accounts calculations on the information received from the further memory means so that the retailer can be immediately provided with an invoice and, conveniently, details of the number of copies made of each selection so that he can determine which selections are most popular.

A 'call for service' indicating light may also be provided on the apparatus to indicate to the retailer v/hen any coin or token receiving cash box in the apparatus is nearly full so that he may request a representative of the manufacturer to call an.! empty the box.

Of course, other arrangements for storing the computer programs within the apparatus may be used. In particular, -the memory means may comprise a single memory into which a desired computer program is loaded by the retailer in response to a customers request. In such a case, the retailer would insert a master cartridge carrying a copy of the required program into an appropriate master cartridge port in the apparatus to allow the CPU 5 to read the program stored in the master module and write if into a cartridge Inserted in a cartridge port I . In such arrangement, there would of course be no requirement for the provision of a keyboard on the front of the apparatus.

Each blank memory module may have a message recorded on it Indicating that the module Is a blank memory module for use with the apparatus. Such a message will be erased from a module inserted in a port after a token is inserted info the token receiving port and the CPU 5 has determined that the module is not 'faulty 1" and so will prevent any user of the apparatus from obtaining two blank memory modules from the retailer, using a single token to write a selected program Into one memory module and then at a later date returning the blank memory module claiming that the program has not been correctly written into the memory and demanding a replacement free copy of the alleged selected program. In such a case, when the CPU 5 defects that a module carrying the message has been inserted it will display the message on the VDU or light an indicating light to advise the retailer that the memory module has not previously been used. .

Also, although as described above, the operation of the apparatus is controlled by the software instructions of the CPU 5, the control apparatus could be hard v/ired.

Figures 6 to 10 illustrate a specific example of the apparatus described above in general terms with reference to Figure 3 while Figure I I shows one form of a casing or housing suitable for the apparatus of Figure.; 6 to 10 and Figure ( 2 is a circuit diagram of a cartridge for use in the apparatus of Figures 6 to 10.

Referring now to Figures 6 to I I , the apparatus comprise:, a microprocessor 40, preferably a 6809 type of microprocessor, which con ir-"- ' •*■■

OMPI

the overall operation of the apparatus. It should be appreciated that, in the interests of simplicity and clarity, the usual control signals provided by the microprocessor, including, for example, clock signals, have been omitted from Figure 6. The microprocessor 40 has a 16-bit address bus 41 and an 8- bit data bus 42 which, via appropriate decoding, provides signals to the memory of the apparatus and to various interface circuits. Thus, the 8-bϊt data bus 42 is connected to the external program memory of the micro¬ processor 40. The external program memory is arranged to store the softv/are for operating the microprocessor and may also store accounting software for carrying out preliminary accounting tasks. The program memory comprises, in the arrangement shown, three 8K (8 kilobyte) eraseable programmable memories EPROMS 43 preferably of the type 2764 and one 4K (4 kilobyte) eraseable programmable memory 44 which is preferably of the type 2732. The address signals for the 8K EPROMS 43 are provided by the address lines 0 to 1 2 of the address bus 41 while the address signals for the 4K EPROM 44 are provided via the address lines 0 to I I of the address bus 41. Lines 13 to 15 of the 16 bit address bus 41 are connected to a 1 of 8 decoder/demultiplexer 45 v/hich is preferably of the type 74LS I 38. The decoder 45 provides eight output signals Y0 to Y7, the output signals Y4 to Y6 providing respective inputs to the chip enable inputs

CE and output enables OE of the three 8K EPROMS 43. The decoder 45 also provides a signal on its output line Y7 to the output enable OE of the 4 EPROM 44, the chip enable signal CE for the 4K EPROM 44 being provided via the address line 12 of the address bus 41.

The apparatus is provided with random access memory to provide a buffer store for a program being transferred from the main memory store of the apparatus which, in the present case, comprises a 5 Megcbyte hard disk system (not shown), to a cartridge Inserted into a cartridge port of the apparatus and battery backed-up random access memory to provide storage for accounts data. As shown in Figure 6, the random access memory of the apparatus comprises eight 2K CMOS RAM chips 45 each of which is preferably of the type 61 17. Four of the 2 K chips 45' are backed up by a 3.4 volt nickel cadmium battery 46 to provide the accounts data storage. The other four RAM chips 45" provide the buffer store for the program being transferred. Th-2 ra bur. •ι2 of the microprocessor 0 supplies the data signals to each of the RAM chips 45 while lines 0 to 10 of the address

bus 41 provide the appropriate address signals for the RAM chips 45. Lines I I, 12 and 13 of the address bus 41 are input to a I of 8 decoder/demulti¬ plexer 47 which is preferably in the form of a 74LS 138 integrated circuit. The decoder 47 provides 8 outputs which provide the respective chip select signals for the RAM chips 45' and both the output enable and chip select signals for the RAM chips 45". Reading of data to and writing of data from the RAM is controlled by a read/write line 58 from the microprocessor 40.

The address bus 41 and the data bus 42 are each also connected to a cartridge interface circuit 48, a lamp and printer interface circuit 49, a sound circuit 50, a disc interface 51 for connecting the apparatus to the 5 Megabyte hard disc system, an RS232 interface 52 for connection to a portable computer, an LCD interface/driver circuit 53 and a card reader/keyboard interface circuit 54. A further I of 8 decoder/demulti- plexer 55, again preferably of the type 74LS138, is connected to address * lines 2, 3 and 4 of the address bus 41 and provides eight outputs each of which provides a respective select signal to one of the Interface circuits 48 to 54.

Each of the various interface circuits 48 to 54 v/ill now be described in greater detail with reference to Figures 7 to 10 and 12 of the drawings.

The cartridge interface circuit 48 provides an appropriate ' Interface to the cartridge ports 55a, 55b and 55c of the casing shown in Figure 12. Thus, the CARTSEL2 signal from the decoder 55 is supplied to a I of 4 decoder/demultiplexer 56 which preferably forms one decoder of a dual 1 of 4 decoder/demultiplexer chip of the type 74LSI39. The address fine 0 of the address bus 41 Is also supplied to the decoder 56. The decoder 56 supplies, on outputs Y2 and Y3 thereof, signals to respective inputs of 2-inpυt NOR gates 57 which are preferably provided by two gates of a quad 2-inpuf NOR gate chips 74LS02. The read/write line 58 from the microprocessor 40 is supplied to the other input of each of the NOR gates 57 and the output of each of the NOR gates 57 is supplied to a respective one of two Octal 3- state transparent latches 59 v/hich are preferably of the type 74LS373. The latches 59 provide a 1 -bif cartridge address bus 60. The data bus 42 of the microprocessor 40 Is also supplied to a peripheral interface adaptor (PIA) 6 ! which is preferably of the type MC682I . A cartridge select signal

CARTSEL I is also supplied to the PIA 61 from the decoder 55. Port A of the PIA 61 provides a cartridge data bus 62 while bit 0 of port B of the PIA

61 provides a cartridge read/write signal CWR and bits I to 3 of port B of the PIA 6\ provide respective select signals ATARISEL, COLECOSEL and

VICSELto associated I of 4 decoder/demultiplexers 63, each of which is preferably in the form of a type 74LS I 39 chip. Each of the decoders 63 is also connected to address lines 15 and 14 of the cartridge address bus 60. Each of the decoders 63 provides four chip select signals for the respective type of cartridge as will be discussed hereinafter.

The cartridge address bus 60 and the cartridge data bus 62 are supplied to each of the cartridge ports 55a to 55c together with the chip select signals from the appropriate decoder 63 for that port. In the arrangement shown, the Ports 55a, 55b and 55c are arranged to accept a cartridge for an "Atari" Home Computer, a "Coleco" cartridge or a cartridge for a "VIC-20" home computer. It should, of course, be apprec¬ iated that the apparatus could be adapted for use with any type of cartridge.

Figure I I is a circuit diagram of the printed circuit board of a typical cartridge for use with the apparatus. In particular, Figure I I shows a typical cartridge for use with an "Atari" Home Computer - where it is necessary to provide a read/v/rite connection so that the cartridge can be used v/ith the apparatus. The read/write connection is preferably provided by plating part of the circuit board to provide a read/write line. A.tern- afively, a Hail Effect device or an optical coupling could be used to provide the read/write connection.

As shown in Figure I I , the memory of the cartridge is provided by tv/o 2K CMOS RAM chips 64a and 64b, each of v/hich preferably comprises σn MSM5128 CMOS RAM chip, backed up by an Ll/MN0 2 3.0 volt battery 65. It wi ll, of course, be appreciated that the chips 64 merely provide capacity for storage of a program of up to 4!< in length. However, if is, of course, possible to increase the memory capacity of the cartridge so that sufficient memory space is provided for any length of program by, for example, incorporat ing further 2 CMOS RAM chips.

OMPI '

A + 5V power supply for the cartridge Is provided via the respective cartridge port 55 from a power supply unit (not shown) of the apparatus.

The power supply unit also provides a + 12V and a - 12 V signal for the apparatus and is, as is usual, associated with a cooling fan to ensure that the apparatus does not overheat.

Data is supplied to the RAM chips 64 via the 8-bit cartridge data bus 62 and is stored at appropriate addresses In the RAM under the control of address signals provided by lines 0 to 10 of the cartridge address bus 62. Line 1 1 of the cartridge address bus 62 Is connected to the coupled inputs of a first 2- nput NAND gate 66 when a cartridge is Input to the port. The output of the first NAND gate 66 is supplied to the chip select CS Input of one of the RAM chips 64a and also to the coupled input of a further 2-input NAND gate 61. The output of the NAND gate 61 is supplied to the chip select CS Input of the other RAM chip 64b so ensuring that only one of the fv/o RAM chips 64a and 64b Is selected at a' given time. One of the chip select signals from the appropriate decoder 63 is input to the coupled Inputs of a further 2-input NAND gate 68 and is supplied to the output enable OE inputs of the RAAΛ chips 64a and 64b. The signals on address line 1 1 of the cartridge address bus 60 and the select signal from the appropriate decoder 63 serve to "wake up" the battery backed-up RAM to enable data to be written into the RAM when the cartridge is inserted into the appropriate cartridge port 55a. The NAND gates 66, 61 and 68 preferably are provided by respective gates of a quad 2-inpuf 74LS0 I chip.

Each of the resistors I used in the cartridge printed circuit board is of 4.7 « in value while the capacitor Cl fs-a 10 nf (nano farad) capacitor.

Figure 8 Is a block diagram of the card recder/keyboard interface circuit 54. As shown In Figure 8, the circuit 54 comprises a peripheral

Interface adapter (PfA) 69 v/hich is preferably of the type MC682 I . The PIA

69 receives a keyboard select signal KBϋSEL signal from the decoder 55 together with the 8-bit data bus 42 of the microprocessor and bits 0 and I of the address bus 41. Bits 0 and 1 of Port A of the PIA 69 are supplied to respective push-pull amplifiers 7 r, the outputs of which are connected to respective Terminals σf a mo far 70 _,o as to provide a digital control over the directions of rotation of the motor, thereby determining whether a card or

token inserted into α token slot 72 of the apparatus is drawn into, or ejected from, the apparatus. Port A of the PIA 69 also controls a read head 73 for reading magnetic data encoded on a token and an erase head 74 for erasing the token before ejecting it from the apparatus. The PIA 69 also receives signals from two optocouplers 75 which detect the beginning and end of a token and so control actuation of the motor via the PIA 69. Each optocoupler 75 will normally comprise a light emitting diode and a photo- transistor.

Port B of the PIA 69 is connected to a keyboard 76 (Figure 12) and cartridge type selection switches 77a to 77c to detect which particular switch and keys have been depressed by a user of the apparatus to provide the appropriate instructions to the microprocessor 40 via the microprocessor data bus 42.

Figure 9 is a block diagram of the lamp and printer interface circuit.

As shown in Figure 9, the lamp select signal LAMPSEL from the decoder 55 is supplied to a peripheral interface adaptor (PIA) 78 together with the 8-bϊt microprocessor data bus 42 and bits 0 and I of the address bus 41. Bits 0 to 2 of port A of the PIA 78 are supplied to a I of 8 decoder/demultiplexer 79 which is preferably of the type 74LS 138. The decoder 79 provides appropriate control signals to respective lamp drivers for each of six fluorescent lamps 80a, 80b, 80c, 80d, 80e, and 80f provided in a recess 80' on the front panel 80" of the apparatus (Figure 12). An instruction to the user of the apparatus is provided on each fluorescent lamp when the lamp is actuated via the respective lamp driver. Bits 5 and 6 of port A of the PIA 78 are supplied to a I of 4 decoder/demultiplexer 81 which preferably comprises a type 74LS I39 integrated circuit. The output of the decoder 81 together with bits 7 and 8 of port A of the PIA 73 is supplied to a driver circuit, preferably in the form of a UCN2003A integrated circuit, which supplies activating signals to socket lamps provided in, or adjacent, the switches 78a, 77b, and 77c to indicate which particular type of cartridge has been selected and to an end lamp 83 to indicate when programming of a cartridge has been completed. Port B of the PIA 78 is connected to on Octal 3-stafe buffer 84, preferably in the form of a type 74LS244 integrated circuit , which provides a parallel printer port for connection to an appro¬ priate printer so that instructions to accompany a selected piece of

software, and accounts data, may be printed out as described above.

Figure 10 is a block diagram of the sound circuit 50 of the apparatus. As shown in Figure 10, the sound circuit comprises a PIA 85 which receives bits 0 and I of the address bus 41 of the microprocessor together with the data bus 42 and a sound select SOUNDSEL signal from the decoder 55. Port A of the PIA 85 supplies data signals to two 4-bit binary counters 86 which are preferably of the type 74LS 161. The counters 86 aiso receive a 1 200 Hz clock signal which is derived from the clock signal of the micro- processor. The output of the second counter is divided by a D-flip flop 87 and then amplified and filtered by an appropriate circuit 88 for supply to a pair of loudspeakers (not shov/n), the frequency of the sound produced by the speakers being determined by the data inputs to the counters 86 from the PIA 85. The sound signal may be used, for example, to alert a user to the fact that programming has been completed or to alert the retailer to a malfunction on the apparatus. Bit 0 of port B of the PIA 85 supplies an output enable signal OE to the RAM 45 to "wake up" the battery backed-up RAM 45 to enable data to be written into the RAM.

The LCD Interface/driver circuit which is not shov/n In detail is a conventional circuit for supplying driving signals to an alpha-numeric LCD display 89 which provides additional messages to the user of the machine. The RS232 interface 52 may be any suitable universal asynchronous receiver/transmitter (UART) interface end any appropriate disk interface 51 may be used to connect the apparatus to the hard disk drive system.

The manner in which the apparatus shov/n In Figures 6 to 12 will now be described.

In order to use the apparatus, a person must first purchase an appropriate ticket or token from the retailer. When the user approaches the machine, the fluorescent light 80a will be lit requesting the user to "insert ticket". The ticket should then be inserted Info the slot 72. When the first opfocoupler pair 75 detects the front edge of the card, the motor 70 v/ill be actuated by the microprocessor 40 via the PIA 69 and the push pull ampli ier 71 to drew the token info trie machine. The read head 73 will then read the magnetically encoded data on the token to ensure that the token Is valid. If

the token is not valid, then the motor 70 wil l be activated to eject the token.

Assuming that the card or token is valid, the microprocessor 40 wil l then activate the appropriate lamp driver via the PIA 78 and the decoder 79 to switch off the fluorescent lamp 80a and light the fluorescent lamp 80b to instruct the user to "select make of cartridge". The user then depresses an appropriate one of the buttons 77a to 77b to select, in the present case, an

"Atari", "Coleco" or "Vϊc-20" type of cartridge. When the microprocessor has determined, via signals input to port B of the PIA 69 from the switches

77a to 77c that a cartridge has been inserted into a particular one of the ports 55a to 55c, the fluorescent lamp 80c will be lit instructing the user to

"insert cartridge in slot indicated", the slot being indicated by the activation of the LED or LCD lamp provided in the appropriate cartridge selection switch 77a, 77b or 77c.

Once the microprocessor 40 detects that a cartridge has been inserted, the fluorescent lamp 80d is activated to instruct the user to "select game number required on keyboard" and the instructions input to the apparatus via the keyboard 76 are supplied to the microprocessor via the

PIA 69. The microprocessor 40 then retrieves the selected program from the hard disk system (not shown) via the disk interface 5 1 and stores the same in the RAM 45". The program is transferred in 256 byte sections to the RAM 45" and the microprocessor 40 verifies that the program has been transferred correctly v/hen all the 256 byte sections have been stored in the

RAM 45". The title of the piece of software selected is then displayed on the alpha-numeric LCD display 89 and the fluorescent lamp SOe illuminated to instruct the user to "check title. If OK press CONTINUE, if not press CANCEL". If the user presses CANCEL, the lamp 80d will be actuated so that he can correct his selection. If the user confirms that the correct program has been selected by pressing CONTINUE, then the microprocessor will read the data from the RAM 45" bit by bit info the inserted cartridge and will then verify that the data representing the program has been correctly stored in the cartridge. Assuming that the program has been correctly written into the cartridge, then the fluorescent light 80f wil l be lit to instruct the user to "Remove cartridge v/hen end l ight f lashes" and the end l ight or lamp 83 v/il l be lit.

The card or token inserted by the user may then be erased by the erase head 74 and ejected from the slot 72 by reversing the direction of rotation of the motor 70.

5 It should be appreciated that, in the arrangement described above, the apparatus itself does not provide a display of the programs or software available. Rather, an appropriate display is provided above the apparatus identifying each particular piece of software by means, for example, of an image associated with an appropriate code word which the user can then key 0 into the apparatus via the keyboard 76.

The fluorescent lamp display 80a to 80f and the LCD display 89 may be replaced by a visual display unit (VDU) v/hich will provide both the instruction signals to the user and also details of the type of software 5 available. Thus, for example, the VDU may display a menu to enable the user to select a particular type of software and, moreover, may allow the user to inspect the Item of softv/are chosen before confirming his choice by displaying a still Image, or possibly a sequence of images, representing the piece of software chosen. Such an arrangement Is, of course, particularly 0 desirable where the items of software comprise video games. The sound circuit may also be modified to allow the sounds produced during a video game to be simulated when the image or sequence of images is displayed.

The VDU may be controlled by the microprocessor 40 or may have a separate microprocessor control. Normally, the irnages,or sequences of images, fc be displayed will be stored in the RAM 45 although, of course, a

- . -- separate store may be provided. The ϊmages or sequences of images may be extracted from the stored programs or simulations of such extracts.

As mentioned above, a printer may be connected to the parallel printer port provided by the interface circuit 49 to enable, for example, instructions on how to use a piece of software to the supplied to the user of the apparatus. The printer interface may also be used for accounting purposes to provide the retailer with a hard copy of the accounts relating to the apparatus in a similar manner to that discussed above in relation to Figure 5 of the drawings. The RS232 interface 52 enables a portable computer, such as an Epson HX20, to be connected to the apparatus. The

portαble computer may be used to access and store accounts data for later output to a main frame computer and may also be used to transfer a new selection of software items on to the hard disk storage system.