trunk/src/mess/drivers/fanucspmg.c
| r29384 | r29385 | |
| 2 | 2 | // copyright-holders:R. Belmont |
| 3 | 3 | /*************************************************************************** |
| 4 | 4 | |
| 5 | | Fanuc System P Model G |
| 5 | Fanuc System P Model G |
| 6 | Fanuc 1983 |
| 6 | 7 | |
| 7 | | 2014-03-22 Skeleton driver. |
| 8 | 2014-03-22 Skeleton driver. |
| 9 | This is a machine from 1983 in a single case |
| 10 | with a lot of ports and a unique keyboard. |
| 8 | 11 | |
| 9 | | This is a machine from 1983 in a single case with a |
| 10 | | lot of ports and a unique keyboard. |
| 11 | | |
| 12 | | Also known as Fanuc P-G System, this is a dedicated 8085+8086+8087-based computer |
| 13 | | system running software for CNC Programming. |
| 14 | | The system boots up from ROM and then application software is loaded from floppies. |
| 15 | | The softwares are not point and click auto-generation type conversational CAD/CAM |
| 16 | | applications. |
| 17 | | The earlier 'non-Symbolic' software requires knowledge of programming in APT and other |
| 18 | | languages of the era. The 'Symbolic' software has menus and asks questions and the blanks |
| 19 | | must be filled in correctly. The graphics are mostly made of lines but are |
| 20 | | sufficient to complete the task easily. Efficient and effective use of this system |
| 21 | | requires deep knowledge of CNC Machining techniques (Turning/Milling etc) and a |
| 22 | | good understanding of machining processes and procedures. With correct usage this system |
| 23 | | can be used to create CNC G-Code programs for any part that can be manufactured on a |
| 24 | | CNC Machine. Because the system is made in Japan in the early 80's and the manuals are |
| 25 | | very technical it also requires some skill in deciphering Japanese-English translated |
| 26 | | technical texts to understand how to use it properly. |
| 12 | Also known as Fanuc P-G System, this is a dedicated 8085+8086+8087-based computer |
| 13 | system running software for CNC Programming. |
| 14 | The system boots up from on-board EPROM and shows a big ASCII-art boot screen |
| 15 | FANUC SYSTEM P MODEL G and the ROM software version in the lower right corner. |
| 16 | To initiate booting from the floppy drive hold down the LOAD key for 3-5 seconds. |
| 17 | The system checks for a long LOAD key press so that it doesn't load software |
| 18 | if the LOAD key is accidentally pressed quickly while using the system, which would |
| 19 | erase everything in memory and all data up to that point and re-load the software from |
| 20 | scratch. When loading is activated application software is read from floppies. |
| 27 | 21 | |
| 28 | | The box housing everything is 20" wide by 20" deep by 12" high and weighs |
| 29 | | approximately 40 pounds. Power input is 85VAC to 110VAC. For the non-US and |
| 30 | | non-Japanese markets a separate dedicated power supply is provided and is 12" |
| 31 | | wide by 8" deep by 10" high and weighs approximately 20 pounds. |
| 22 | The softwares are not point and click auto-generation type conversational CAD/CAM |
| 23 | applications. The earlier 'non-Symbolic' software requires knowledge of programming in APT |
| 24 | and other languages of the era. The 'Symbolic' software has menus and asks questions and |
| 25 | the blanks must be filled in correctly. The graphics are mostly made of lines but are |
| 26 | sufficient to complete the task easily. Efficient and effective use of this system |
| 27 | requires deep knowledge of CNC Machining techniques (Turning/Milling etc) and a |
| 28 | good understanding of machining processes and procedures. With correct usage this system |
| 29 | can be used to create CNC G-Code programs for any part that can be manufactured on a |
| 30 | CNC Machine. Because the system is made in Japan in the early 80's and the manuals are |
| 31 | very technical it also requires some skill in deciphering Japanese-English translated |
| 32 | technical texts to understand how to use it properly. |
| 32 | 33 | |
| 33 | | A number of optional peripherals can connect to it including a Fanuc Printer, |
| 34 | | Fanuc PPR Unit (Paper tape Puncher/Reader with built-in printer), Fanuc Program |
| 35 | | File (containing a 20MB HDD, two 8" floppy drives and two RS232 ports), Fanuc Cassette |
| 36 | | Adapter, XY Plotter (A3 or A1), Fanuc Digitizing Tablet (A3 or A0) and Fanuc I/O Selector Box. |
| 34 | The box housing everything is 20" wide by 20" deep by 12" high and weighs |
| 35 | approximately 40 pounds. Power input is 85VAC to 110VAC. For the non-US and |
| 36 | non-Japanese markets a separate dedicated power supply is provided and is 12" |
| 37 | wide by 8" deep by 10" high and weighs approximately 20 pounds. |
| 37 | 38 | |
| 38 | | The P-G System has an internal 12" color monitor and dual 5 1/4" floppy drives. |
| 39 | | A later model was released in 1986 called the Mark II using dual 3 1/2" floppy |
| 40 | | drives. The previous version was SYSTEM P MODEL D. It had a 12" green monochrome |
| 41 | | monitor and booted from, and stored to, a cassette tape or floppy disk. |
| 39 | A number of optional peripherals can connect to it including a Fanuc Printer, |
| 40 | Fanuc PPR Unit (Paper tape Puncher/Reader with built-in printer), Fanuc Program |
| 41 | File (containing a 20MB HDD, two 8" floppy drives and two RS232 ports), Fanuc Cassette |
| 42 | Adapter, XY Plotter (A3 or A1), Fanuc Digitizing Tablet (A3 or A0) and Fanuc I/O Selector Box. |
| 42 | 43 | |
| 43 | | The screen resolution is 512 x 384 pixels. |
| 44 | | It can display 64 characters x 24 lines. |
| 44 | The P-G System has an internal 12" color monitor and dual 5 1/4" floppy drives. |
| 45 | A later model was released in 1986 called the Mark II using dual 3 1/2" floppy |
| 46 | drives. The previous version was SYSTEM P MODEL D. It had a 12" green monochrome |
| 47 | monitor and booted from, and stored to, a cassette tape or floppy disk. |
| 45 | 48 | |
| 46 | | The floppy format is custom. Floppies are double sided double density and |
| 47 | | regular PC DSDD 360k floppies can be used after they are formatted using the |
| 48 | | P-G System. |
| 49 | | The floppy geometry is 40 tracks, 16 sectors per track, 256 bytes per sector |
| 50 | | and 2 sides for a total storage capacity of 327680 bytes. |
| 51 | | The floppy drives are typical PC-type 5 1/4" 360k drives and were manufactured |
| 52 | | by Y-E DATA, model YD-580. |
| 49 | The screen resolution is 512 x 384 pixels. |
| 50 | It can display 64 characters x 24 lines. |
| 53 | 51 | |
| 54 | | The floppy disks can be backed-up and imaged using a DOS program called ImageDisk |
| 55 | | which is available here..... |
| 56 | | http://www.classiccmp.org/dunfield/img/index.htm |
| 57 | | With a 5 1/4" HD floppy drive, in the GUI in settings change the number of |
| 58 | | cylinders to 40, translate speed 300 -> 250 (to read a DD disk on a HD drive). |
| 59 | | On the main menu press R to Read, type a file-name and press enter, press enter |
| 60 | | again to skip the comment. Press enter again and it will read the disk and save |
| 61 | | it to the HDD. |
| 52 | The floppy format is custom. Floppies are double sided double density and |
| 53 | regular PC DSDD 360k floppies can be used after they are formatted using the |
| 54 | P-G System. |
| 55 | The floppy geometry is 40 tracks, 16 sectors per track, 256 bytes per sector |
| 56 | and 2 sides for a total storage capacity of 327680 bytes. |
| 57 | The floppy drives are typical PC-type 5 1/4" 360k drives and were manufactured |
| 58 | by Y-E DATA, model YD-580. |
| 62 | 59 | |
| 63 | | The following is a complete list of software titles available. |
| 64 | | The info is taken from a glossy sales brochure printed in July 1985. |
| 65 | | Other versions did exist so this list is not final. |
| 66 | | * denotes it is dumped. All other titles are not dumped and are needed. |
| 60 | The floppy disks can be backed-up and imaged using a DOS program called ImageDisk |
| 61 | which is available here..... |
| 62 | http://www.classiccmp.org/dunfield/img/index.htm |
| 63 | With a 5 1/4" HD floppy drive, in the GUI in settings change the number of |
| 64 | cylinders to 40, translate speed 300 -> 250 (to read a DD disk on a HD drive). |
| 65 | On the main menu press R to Read, type a file-name and press enter, press enter |
| 66 | again to skip the comment. Press enter again and it will read the disk and save |
| 67 | it to the HDD. |
| 67 | 68 | |
| 68 | | Language Input - |
| 69 | The following is a complete list of software titles available. |
| 70 | The info is taken from a glossy sales brochure printed in July 1985. |
| 71 | Other versions did exist so this list is not final. |
| 72 | * denotes it is dumped. All other titles are not dumped and are needed. |
| 69 | 73 | |
| 70 | | Title Part Number |
| 71 | | -------------------------------- |
| 72 | | FAPT TURN A08B-0033-J600#E |
| 73 | | FAPT CUT A08B-0033-J620#E |
| 74 | | FAPT MILL A08B-0033-J640#E |
| 75 | | FAPT DIE-II A08B-0033-J660#E |
| 76 | | FAPT PUNCH-I A08B-0033-J520#E |
| 77 | | FAPT PUNCH-II A08B-0033-J700#E |
| 78 | | FAPT HELICAL A08B-0033-J642#E |
| 79 | | FAPT POST A08B-0033-H642#E |
| 80 | | *FAPT POST A08B-0031-H630 Edition C 85/1/31 |
| 74 | Language Input - |
| 81 | 75 | |
| 76 | Title Part Number |
| 77 | -------------------------------- |
| 78 | FAPT TURN A08B-0033-J600#E |
| 79 | FAPT CUT A08B-0033-J620#E |
| 80 | FAPT MILL A08B-0033-J640#E |
| 81 | FAPT DIE-II A08B-0033-J660#E |
| 82 | FAPT PUNCH-I A08B-0033-J520#E |
| 83 | FAPT PUNCH-II A08B-0033-J700#E |
| 84 | FAPT HELICAL A08B-0033-J642#E |
| 85 | FAPT POST A08B-0033-H642#E |
| 86 | *FAPT POST A08B-0031-H630 Edition C 85/1/31 |
| 82 | 87 | |
| 83 | | Graphic Input - |
| 84 | 88 | |
| 85 | | Title Part Number |
| 86 | | -------------------------------------- |
| 87 | | *Symbolic FAPT TURN A08B-0033-J800#E +English |
| 88 | | Symbolic FAPT MILL A08B-0033-J840#E |
| 89 | | Symbolic FAPT DRILL A08B-0033-J860#E |
| 90 | | Symbolic FAPT CUT A08B-0033-J820#E |
| 91 | | FAPT DIGITIZER A08B-0033-J510#E |
| 89 | Graphic Input - |
| 92 | 90 | |
| 93 | | + Symbolic FAPT TURN was available in English, German, French, Dutch, Finnish, |
| 94 | | and Swedish versions. |
| 91 | Title Part Number |
| 92 | -------------------------------------- |
| 93 | *Symbolic FAPT TURN A08B-0033-J800#E +English |
| 94 | Symbolic FAPT MILL A08B-0033-J840#E |
| 95 | Symbolic FAPT DRILL A08B-0033-J860#E |
| 96 | Symbolic FAPT CUT A08B-0033-J820#E |
| 97 | FAPT DIGITIZER A08B-0033-J510#E |
| 95 | 98 | |
| 99 | + Symbolic FAPT TURN was available in English, German, French, Dutch, Finnish, |
| 100 | and Swedish versions. |
| 96 | 101 | |
| 97 | | Support System - |
| 98 | 102 | |
| 99 | | Title Part Number |
| 100 | | ------------------------------- |
| 101 | | *FAPT TRACER A08B-0033-H620#E Edition B 85/1/16 |
| 102 | | *FAPT TEACHER A08B-0033-J610#E Edition B 85/1/12 |
| 103 | | *FAPT DOCTOR A08B-0033-J600#E Edition B 84/12/21 |
| 103 | Support System - |
| 104 | 104 | |
| 105 | Title Part Number |
| 106 | ------------------------------- |
| 107 | *FAPT TRACER A08B-0033-H620#E Edition B 85/1/16 |
| 108 | *FAPT TEACHER A08B-0033-J610#E Edition B 85/1/12 |
| 109 | *FAPT DOCTOR A08B-0033-J600#E Edition B 84/12/21 |
| 105 | 110 | |
| 106 | | The software for the Fanuc System P Model G is extremely rare now and very |
| 107 | | difficult to find. If you do have any of these wanted software titles or any manuals |
| 108 | | listed below and want to help please contact me (Guru) via http://mamedev.org/contact.html |
| 109 | 111 | |
| 110 | | The following is a complete list of manuals available for the first edition of the |
| 111 | | Fanuc System P Model G released in 1983. The info is taken from a glossy sales brochure |
| 112 | | printed in July 1985. There were other manuals released later for the Mark II and |
| 113 | | updated manuals (each with a different part number). |
| 114 | | The manuals were available in Japanese and English. The part numbers listed here |
| 115 | | are English versions, denoted by the E at the end of the part number. |
| 116 | | * denotes these manuals are secured and available in PDF format. |
| 112 | Note: To initiate booting from the floppy drive hold down the LOAD key for 3-5 seconds. |
| 117 | 113 | |
| 118 | | Description - |
| 114 | The software for the Fanuc System P Model G is extremely rare now and very |
| 115 | difficult to find. If you do have any of these wanted software titles or any manuals |
| 116 | listed below and want to help please contact me (Guru) via http://mamedev.org/contact.html |
| 119 | 117 | |
| 120 | | Title Part Number |
| 121 | | --------------------------------------- |
| 122 | | FAPT TURN/MILL Description B-54102E |
| 123 | | FAPT CUT Description B-54103E |
| 124 | | FAPT PUNCH-I Description B-54104E |
| 125 | | FAPT TRACER Description B-54106E |
| 126 | | FAPT DIGITIZER Description B-54107E |
| 127 | | Symbolic FAPT Description B-54131E |
| 128 | | FAPT DIE-II Description B-54121E |
| 118 | The following is a complete list of manuals available for the first edition of the |
| 119 | Fanuc System P Model G released in 1983. The info is taken from a glossy sales brochure |
| 120 | printed in July 1985. There were other manuals released later for the Mark II and |
| 121 | updated manuals (each with a different part number). |
| 122 | The manuals were available in Japanese and English. The part numbers listed here |
| 123 | are English versions, denoted by the E at the end of the part number. |
| 124 | * denotes these manuals are secured and available in PDF format. |
| 129 | 125 | |
| 126 | Description - |
| 130 | 127 | |
| 131 | | Operator's Manual - |
| 128 | Title Part Number |
| 129 | --------------------------------------- |
| 130 | FAPT TURN/MILL Description B-54102E |
| 131 | FAPT CUT Description B-54103E |
| 132 | FAPT PUNCH-I Description B-54104E |
| 133 | FAPT TRACER Description B-54106E |
| 134 | FAPT DIGITIZER Description B-54107E |
| 135 | FAPT DIE-II Description B-54121E |
| 136 | Symbolic FAPT Description B-54131E |
| 132 | 137 | |
| 133 | | Title Part Number |
| 134 | | ---------------------------------------------------------- |
| 135 | | System P-Model G Operator's Manual B-54111E |
| 136 | | System P-Model G Mark II Operator's Manual B-66014E |
| 137 | | *System P-Model G Operator's Manual Supplement B-54112E/03-1 |
| 138 | | FAPT TURN/MILL Operator's Manual B-54112E |
| 139 | | FAPT CUT Operator's Manual B-54113E |
| 140 | | FAPT PUNCH-I Operator's Manual B-54114E |
| 141 | | FAPT PUNCH-II Operator's Manual B-54115E |
| 142 | | *Symbolic FAPT TURN Operator's Manual B-54132E |
| 143 | | *Symbolic FAPT TURN Operator's Manual B-66025E (for System P Mark II) |
| 144 | | Symbolic FAPT MILL Operator's Manual B-54134E |
| 145 | | Symbolic FAPT DRILL Operator's Manual B-54138E |
| 146 | | Symbolic FAPT CUT Operator's Manual B-54136E |
| 147 | | FAPT DIE-II Operator's Manual B-54122E (Two Volumes) |
| 148 | | FAPT TRACER Operator's Manual B-54116E |
| 149 | | FAPT DIGITIZER Operator's Manual B-54117E |
| 150 | | FAPT TEACHER Operator's Manual B-54126E |
| 151 | 138 | |
| 139 | Operator's Manual - |
| 152 | 140 | |
| 153 | | Others - |
| 141 | Title Part Number |
| 142 | ---------------------------------------------------------- |
| 143 | *System P-Model G Operator's Manual B-54111E/03 |
| 144 | System P-Model G Mark II Operator's Manual B-66014E |
| 145 | *System P-Model G Operator's Manual Supplement B-54112E/03-1 |
| 146 | FAPT TURN/MILL Operator's Manual B-54112E |
| 147 | FAPT CUT Operator's Manual B-54113E |
| 148 | FAPT PUNCH-I Operator's Manual B-54114E |
| 149 | FAPT PUNCH-II Operator's Manual B-54115E |
| 150 | *FAPT TRACER Operator's Manual B-54116E/03 |
| 151 | FAPT DIGITIZER Operator's Manual B-54117E |
| 152 | *FAPT Universal POST Operator's Manual B-54118E/02 |
| 153 | FAPT DIE-II Operator's Manual (Volume 1) B-54122E |
| 154 | FAPT DIE-II Operator's Manual (Volume 2) B-54122E-1 |
| 155 | *FAPT TEACHER Operator's Manual B-54126E/01 |
| 156 | 220S FAPT MILL Operator's Manual B-54127E |
| 157 | *Symbolic FAPT TURN Operator's Manual B-54132E/01 |
| 158 | Symbolic FAPT MILL Operator's Manual B-54134E |
| 159 | Symbolic FAPT CUT Operator's Manual B-54136E |
| 160 | Symbolic FAPT DRILL Operator's Manual B-54138E |
| 161 | *Symbolic FAPT TURN Operator's Manual B-66025E/01 (for System P Mark II) |
| 154 | 162 | |
| 155 | | Title Part Number |
| 156 | | ----------------------------------------------------- |
| 157 | | System P-Model G Operator's Handbook B-54158E |
| 158 | | *System P-Model G Maintenance Manual B-54159E |
| 159 | | FAPT TURN/MILL/CUT Part program examples B-54128E |
| 160 | | FANUC CASSETTE Operator's Manual B-53484E |
| 161 | | *Symbolic FAPT TURN Operator's Handbook B-53034E (for System P Model D) |
| 162 | | Symbolic FAPT TURN Operator's Handbook B-54133E |
| 163 | | FAPT DIE-II Part program examples B-54123E |
| 164 | | FANUC PPR Operator's Manual B-54584E |
| 165 | 163 | |
| 166 | | Note the handbooks were pocket-sized 8" long by 3 1/2" wide and approximately 50 pages. |
| 164 | Others - |
| 167 | 165 | |
| 166 | Title Part Number |
| 167 | ----------------------------------------------------- |
| 168 | *Symbolic FAPT TURN Operator's Handbook B-53034E (for System P Model D) |
| 169 | FANUC CASSETTE Operator's Manual B-53484E |
| 170 | FAPT DIE-II Part program examples B-54123E |
| 171 | FAPT TURN/MILL/CUT Part program examples B-54128E |
| 172 | Symbolic FAPT TURN Operator's Handbook B-54133E |
| 173 | System P-Model G Operator's Handbook B-54158E |
| 174 | *System P-Model G Maintenance Manual B-54159E/01 |
| 175 | *FANUC PPR Operator's Manual B-54584E/01 |
| 168 | 176 | |
| 169 | | The unit has it's own dedicated keyboard with many special keys. |
| 170 | | The keyboard layout is shown below. |
| 177 | Note the handbooks are pocket-sized 8" long by 3 1/2" wide and approximately 50 pages. |
| 171 | 178 | |
| 172 | | |------------------------------------------------------------------------------| |
| 173 | | | | |
| 174 | | | LOAD F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 R0 R1 R2 R3 | |
| 175 | | | | |
| 176 | | | | |
| 177 | | | ! " # $ % & ' ( ) = | |
| 178 | | | K0 1 2 3 4 5 6 7 8 9 0 - ^ Y DEL 7 8 9 + | (Y is Japanese Yen sign) |
| 179 | | | | |
| 180 | | | | |
| 181 | | | K1 CAN Q W E R T Y U I O P @ [ NL BS 4 5 6 - | (NL means NEXT LINE, BS is backspace) |
| 182 | | | | (NL is equivalent to return or enter and) |
| 183 | | | + * | (forces the cursor to move to the next data entry point) |
| 184 | | | K2 UC A S D F G H J K L ; : ] UC 1 2 3 x | (UC is uppercase) |
| 185 | | | | |
| 186 | | | < > ? | |
| 187 | | | K3 LC Z X C V B N M , . / - LC 0 , . / | (LC is lowercase) |
| 188 | | | | |
| 189 | | | | |
| 190 | | | _S__P__A__C__E__B__A__R_ _N__L_ | |
| 191 | | | | |
| 192 | | |------------------------------------------------------------------------------| |
| 193 | 179 | |
| 194 | | On the numeric keypad there are directional arrows on numbers 1 2 3 4 6 7 8 9 |
| 195 | | 1 3 7 9 have arrows pointing South West, South East, North West, North East. |
| 196 | | 2 4 6 8 have arrows pointing down, left, right and up. |
| 197 | | 5 is the center and has no additional markings on it. |
| 198 | | Number 0 has an anti-clockwise 180 degrees arc with an arrow at the end and . has |
| 199 | | a clockwise 180 degrees arc with an arrow at the end. |
| 200 | | These keys are the 'Symbolic' keys. |
| 180 | The unit has it's own dedicated keyboard with many special keys. |
| 181 | The keyboard layout is shown below. |
| 201 | 182 | |
| 202 | | The F-keys and R-keys are programmed by the software that is running on the system. |
| 203 | | The F-keys are SPDT type keys so they can be either up or locked in the down position. |
| 204 | | For Symbolic FAPT TURN these keys are pre-programmed as follows..... |
| 183 | |------------------------------------------------------------------------------| |
| 184 | | | |
| 185 | | LOAD F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 R0 R1 R2 R3 | |
| 186 | | | |
| 187 | | | |
| 188 | | ! " # $ % & ' ( ) = | |
| 189 | | K0 1 2 3 4 5 6 7 8 9 0 - ^ Y DEL 7 8 9 + | (Y is Japanese Yen sign) |
| 190 | | | |
| 191 | | | |
| 192 | | K1 CAN Q W E R T Y U I O P @ [ NL BS 4 5 6 - | (NL means NEXT LINE, BS is backspace) |
| 193 | | | (NL is equivalent to return or enter and) |
| 194 | | + * | (forces the cursor to move to the next data entry point) |
| 195 | | K2 UC A S D F G H J K L ; : ] UC 1 2 3 x | (UC is uppercase) |
| 196 | | | |
| 197 | | < > ? | |
| 198 | | K3 LC Z X C V B N M , . / - LC 0 , . / | (LC is lowercase) |
| 199 | | | |
| 200 | | | |
| 201 | | _S__P__A__C__E__B__A__R_ _N__L_ | |
| 202 | | | |
| 203 | |------------------------------------------------------------------------------| |
| 205 | 204 | |
| 206 | | F0 - ON: Sets the backwards direction when using the R1 key. |
| 207 | | OFF: Sets the forwards direction when using the R1 key. Default is OFF. |
| 208 | | F1 - ON: Makes the whole screen the graphic area. |
| 209 | | OFF: Auto-calc the graphic area so the graphic does not overlap the text. Default is OFF. |
| 210 | | F2 - ON: Shows the parts figure (graphics). Default is ON. |
| 211 | | OFF: Does not show the parts figure. |
| 212 | | F3 - ON: Display the NC G-Code data on screen. Default is ON. |
| 213 | | OFF: Does not display the NC G-Code data on screen. |
| 214 | | F4 - ON: Printer ON. |
| 215 | | OFF: Printer OFF. Default is OFF. The printer can be switched on or off any time. When enabled |
| 216 | | everything displayed on the screen will also print on the printer. |
| 217 | | F5 - ON: Stops execution of the NC G-Code data before each process begins. Keyboard input additions |
| 218 | | can also be done at this time. |
| 219 | | OFF: Program execution continues to the end. Default is OFF. |
| 220 | | F6 - ON: Outputs the NC G-Code data to a separately selected medium (floppy/cassette or paper tape) |
| 221 | | OFF: No output to additional medium. Default is OFF. |
| 222 | | F7 - ON: Stops each time a line of NC G-Code data is output. This is equivalent to Single Block on a CNC Machine. |
| 223 | | OFF: Program execution continues to the end. Default is OFF. |
| 224 | | F8 - |
| 225 | | F9 - |
| 226 | | F10- ON: Sends the part figure graphic and NC G-Code data to the XY plotter |
| 227 | | OFF: No output to XY plotter |
| 228 | | F11- |
| 229 | | F12- |
| 230 | | F13- |
| 231 | | F14- |
| 232 | | F15- |
| 205 | On the numeric keypad there are directional arrows on numbers 1 2 3 4 6 7 8 9 |
| 206 | 1 3 7 9 have arrows pointing South West, South East, North West, North East. |
| 207 | 2 4 6 8 have arrows pointing down, left, right and up. |
| 208 | 5 is the center and has no additional markings on it. |
| 209 | Number 0 has an anti-clockwise 180 degrees arc with an arrow at the end and . has |
| 210 | a clockwise 180 degrees arc with an arrow at the end. |
| 211 | These keys are the 'Symbolic' keys. |
| 233 | 212 | |
| 234 | | The function of the R-keys changes depending on the application and the menu shown on the screen. |
| 235 | | The initial Symbolic FAPT TURN settings for the R-keys are.... |
| 236 | | R0 - FAPT Execution |
| 237 | | R1 - Family Program |
| 238 | | R2 - Setting |
| 239 | | R3 - Auxiliary Work |
| 213 | The F-keys and R-keys are programmed by the software that is running on the system. |
| 214 | The F-keys act like SPDT switches and can be toggled either off or on. |
| 215 | When they are on, a LED in the center of the key lights. |
| 216 | For Symbolic FAPT TURN these keys are pre-programmed as follows..... |
| 240 | 217 | |
| 218 | F0 - ON: Sets the backwards direction when using the R1 key. |
| 219 | OFF: Sets the forwards direction when using the R1 key. Default is OFF. |
| 220 | F1 - ON: Makes the whole screen the graphic area. |
| 221 | OFF: Auto-calc the graphic area so the graphic does not overlap the text. Default is OFF. |
| 222 | F2 - ON: Shows the parts figure (graphics). Default is ON. |
| 223 | OFF: Does not show the parts figure. |
| 224 | F3 - ON: Display the NC G-Code data on screen. Default is ON. |
| 225 | OFF: Does not display the NC G-Code data on screen. |
| 226 | F4 - ON: Printer ON. |
| 227 | OFF: Printer OFF. The printer can be switched on or off any time. When enabled |
| 228 | everything displayed on the screen will also print on the printer. Default is OFF. |
| 229 | F5 - ON: Stops execution of the NC G-Code data before each process begins. Keyboard input additions |
| 230 | can also be done at this time. To continue press NL. |
| 231 | OFF: Program execution continues to the end. Default is OFF. |
| 232 | F6 - ON: Outputs the NC G-Code data to a separately selected medium (floppy/cassette or paper tape) |
| 233 | OFF: No output to additional medium. Default is OFF. |
| 234 | F7 - ON: Stops each time a line of NC G-Code data is output. This is equivalent to Single Block on a CNC Machine. |
| 235 | To continue press NL. |
| 236 | OFF: Program execution continues to the end. Default is OFF. |
| 237 | F8 - |
| 238 | F9 - |
| 239 | F10- ON: Sends the part figure graphic and NC G-Code data to the XY plotter |
| 240 | OFF: No output to XY plotter |
| 241 | F11- |
| 242 | F12- |
| 243 | F13- |
| 244 | F14- |
| 245 | F15- |
| 241 | 246 | |
| 247 | The function of the R-keys changes depending on the application and the menu shown on the screen. |
| 248 | The R-keys are used for tasks within the current screen so the function of the R-keys is always |
| 249 | displayed on screen at all times. |
| 250 | The initial Symbolic FAPT TURN settings for the R-keys are.... |
| 251 | R0 - FAPT Execution |
| 252 | R1 - Family Program |
| 253 | R2 - Setting |
| 254 | R3 - Auxiliary Work |
| 242 | 255 | |
| 243 | | Box Layout (top view) |
| 244 | | ---------- |
| 245 | 256 | |
| 246 | | A08B-0033-B001 |
| 247 | | |--------------------------------------------| |
| 248 | | | ------------MAIN PCB---------------------- | |
| 249 | | | -----------SUB-PCB----------- | | |
| 250 | | | | | |
| 251 | | | |-----------------------| | | |
| 252 | | | | | | | |
| 253 | | | | | P | |
| 254 | | | | CRT UNIT | O | |
| 255 | | | | | W | |
| 256 | | | | | E | |
| 257 | | | | 12" COLOR | |---------| R | |
| 258 | | | | | |FDD UNIT | | | |
| 259 | | | | SCREEN | |A87L-0001| P | |
| 260 | | | | | |-0026 | C | |
| 261 | | | | | | | B | |
| 262 | | | | | | | | | |
| 263 | | | | | |5 1/4" | | | |
| 264 | | | | | |FLOPPY | | |
| 265 | | | | | |DRIVES | | |
| 266 | | | | | |x2 | | |
| 267 | | | |-----------------------| |---------| | |
| 268 | | |--------------------------------------------| |
| 257 | Box Layout (top view) |
| 258 | ---------- |
| 269 | 259 | |
| 260 | A08B-0033-B001 |
| 261 | |--------------------------------------------| |
| 262 | | ------------MAIN PCB---------------------- | |
| 263 | | -----------SUB-PCB----------- | | |
| 264 | | | | |
| 265 | | |-----------------------| | | |
| 266 | | | | | | |
| 267 | | | | P | |
| 268 | | | CRT UNIT | O | |
| 269 | | | | W | |
| 270 | | | | E | |
| 271 | | | 12" COLOR | |---------| R | |
| 272 | | | | |FDD UNIT | | | |
| 273 | | | SCREEN | |A87L-0001| P | |
| 274 | | | | |-0026 | C | |
| 275 | | | | | | B | |
| 276 | | | | | | | | |
| 277 | | | | |5 1/4" | | | |
| 278 | | | | |FLOPPY | | |
| 279 | | | | |DRIVES | | |
| 280 | | | | |x2 | | |
| 281 | | |-----------------------| |---------| | |
| 282 | |--------------------------------------------| |
| 270 | 283 | |
| 271 | | Main PCB Layout |
| 272 | | --------------- |
| 273 | 284 | |
| 274 | | A20B-1000-0710/03B |
| 275 | | |-------------------------------------------| |
| 276 | | | CNF CNE CND CNC CNB CNA | |
| 277 | | | VR1 ^ | |
| 278 | | | JUMPERS XXXXXXXXX| |
| 279 | | | % MB15541 XXXXXXXXXXXXXXXXXX| |
| 280 | | | XXXXXXXXXXXXXXXXXX| |
| 281 | | | 8087-3 D8253 XXXXXXXXXXXXXXXXXX| |
| 282 | | | 8086-2 D765 D8253 XXXXXXXXX| |
| 283 | | | D8257 | |
| 284 | | |15MHz D8259 D8259 D8251 D8251 | |
| 285 | | |D8284 040_001A.13A D8251 D8251 | |
| 286 | | | 040_002A.15A VR2 CN2 CN1 | |
| 287 | | | CN7 CN6 CN5 CN4 CN3 | |
| 288 | | |-------------------------------------------| |
| 289 | | Notes: |
| 290 | | D8086 - Intel 8086 CPU |
| 291 | | D8087 - Intel 8087 x87 Floating-Point Co-Processor |
| 292 | | XXXXXXX - Fujitsu MB8265-15 65536 x1-bit DRAM (72 chips total) |
| 293 | | MB15541 - Fujitsu MB15541 Custom Chip |
| 294 | | D765 - NEC D765 Single/Double Density Floppy-Disk Controller |
| 295 | | D8251 - Intel D8251 Programmable Communications Interface (USART) |
| 296 | | D8253 - NEC D8253 Programmable Interval Timer |
| 297 | | D8257 - NEC D8257 Programmable DMA Controller |
| 298 | | D8259 - NEC D8259 Programmable Interrupt Controller |
| 299 | | D8284 - Intel D8284 Clock Generator and Driver for 8086/8088 Processors |
| 300 | | A40_00* - Fujitsu MBM2764 8k x8-bit EPROM |
| 301 | | VR1/VR2 - Potentiometer |
| 302 | | ^ - 3 chips marked Y-E Data Fujitsu |
| 303 | | MB4393 |
| 304 | | MB14324 |
| 305 | | MB14323 |
| 306 | | % - Unknown 20-pin DIP chip with heat-sink |
| 307 | | CNA - 50-pin flat cable joining to Sub PCB |
| 308 | | CNB - 50-pin flat cable joining to Sub PCB |
| 309 | | CNC - 6-pin power cable joining to Sub PCB |
| 310 | | CND - 34-pin flat cable joining to FDD Unit |
| 311 | | CNE - Fanuc Honda MR-50 50-pin female connector for expansion (not used) |
| 312 | | CNF - Power input connector |
| 313 | | CN1 - 25-pin Female D-type connector. Generally this is connected to the CNC Machine serial port) |
| 314 | | CN2 - 25-pin Female D-type connector (for RS232 external peripherals) |
| 315 | | CN3 - 25-pin Female D-type connector (for RS232 external peripherals) |
| 316 | | CN4 - 25-pin Female D-type connector (for RS232 external peripherals) |
| 317 | | CN5 - Fanuc Honda MR-50 50-pin female connector (probably for external connection of the Fanuc Program File Unit) |
| 318 | | CN6 - Fanuc Honda MR-20 20-pin female connector for connection of the keyboard |
| 319 | | CN7 - Fanuc Honda MR-20 20-pin male Facit 4070 Parallel Reader/Puncher connector (PPR Unit) |
| 320 | | Pinout: (pin 1 is top left, location key is on the opposite side) |
| 321 | | |---------------------------------------------------| |
| 322 | | | | |
| 323 | | | 1_PR 2_TE 3_ERR 4_TTY3 5_+6V 6_TTY2 7_TTY1 | |
| 324 | | | | |
| 325 | | | 8_SG 9_SD 10_0V 11_CH1 12_CH2 13_CH3 O |
| 326 | | | | |
| 327 | | | 14_CH4 15_CH5 16_CH6 17_CH7 18_CH8 19_CH9 20_PI | |
| 328 | | | | |
| 329 | | |---------------------------------------------------| |
| 330 | | JUMPERS - 15 2-pin jumpers labelled S1 to S15. S2, S3 & S4 are not shorted. All others are shorted. |
| 285 | Main PCB Layout |
| 286 | --------------- |
| 331 | 287 | |
| 288 | A20B-1000-0710/03B |
| 289 | |-------------------------------------------| |
| 290 | | CNF CNE CND CNC CNB CNA | |
| 291 | | VR1 ^ | |
| 292 | | JUMPERS XXXXXXXXX| |
| 293 | | % MB15541 XXXXXXXXXXXXXXXXXX| |
| 294 | | XXXXXXXXXXXXXXXXXX| |
| 295 | | 8087-3 D8253 XXXXXXXXXXXXXXXXXX| |
| 296 | | 8086-2 D765 D8253 XXXXXXXXX| |
| 297 | | D8257 | |
| 298 | |15MHz D8259 D8259 D8251 D8251 | |
| 299 | |D8284 040_001A.13A D8251 D8251 | |
| 300 | | 040_002A.15A VR2 CN2 CN1 | |
| 301 | | CN7 CN6 CN5 CN4 CN3 | |
| 302 | |-------------------------------------------| |
| 303 | Notes: |
| 304 | D8086 - Intel 8086 CPU. Clock input 5.000MHz [15/3] |
| 305 | D8087 - Intel 8087 x87 Floating-Point Co-Processor. Clock input 5.000MHz [15/3] |
| 306 | XXXXXXX - Fujitsu MB8265-15 65536 x1-bit DRAM (72 chips total) |
| 307 | MB15541 - Fujitsu MB15541 Custom Chip |
| 308 | D765 - NEC D765 Single/Double Density Floppy-Disk Controller. Clock input 4.000MHz [16/4] |
| 309 | D8251 - Intel D8251 Programmable Communications Interface (USART) |
| 310 | D8253 - NEC D8253 Programmable Interval Timer. Clock input 1.25MHz [15/12] |
| 311 | D8257 - NEC D8257 Programmable DMA Controller. Clock input 3.000MHz [15/5] |
| 312 | D8259 - NEC D8259 Programmable Interrupt Controller |
| 313 | D8284 - Intel D8284 Clock Generator and Driver for 8086/8088 Processors |
| 314 | A40_00* - Fujitsu MBM2764 8k x8-bit EPROM |
| 315 | VR1/VR2 - Potentiometer |
| 316 | ^ - 3 chips marked Y-E Data Fujitsu |
| 317 | MB4393 |
| 318 | MB14324 |
| 319 | MB14323 |
| 320 | % - Unknown 20-pin Ceramic DIP chip with heat-sink |
| 321 | CNA - 50-pin flat cable joining to Sub PCB |
| 322 | CNB - 50-pin flat cable joining to Sub PCB |
| 323 | CNC - 6-pin power cable joining to Sub PCB |
| 324 | CND - 34-pin flat cable joining to FDD Unit |
| 325 | CNE - Fanuc Honda MR-50 50-pin female connector for expansion (not used) |
| 326 | CNF - Power input connector |
| 327 | CN1 - 25-pin Female D-type connector. (for RS232 external peripherals \ CNC Machine, |
| 328 | CN2 - 25-pin Female D-type connector. (for RS232 external peripherals | PPR Unit, X-Y Plotter, |
| 329 | CN3 - 25-pin Female D-type connector. (for RS232 external peripherals | Tablet, |
| 330 | CN4 - 25-pin Female D-type connector. (for RS232 external peripherals / Cassette Adapter etc (connections in any order) |
| 331 | CN5 - Fanuc Honda MR-50 50-pin female connector (probably for external connection of the Fanuc Program File Unit) |
| 332 | CN6 - Fanuc Honda MR-20 20-pin female connector for the keyboard |
| 333 | CN7 - Fanuc Honda MR-20 20-pin male. Specification says 'not used' but this appears to be a |
| 334 | Facit 4070 Parallel Reader/Puncher connector |
| 335 | Pinout: (pin 1 is top left, location key is on the opposite side) |
| 336 | |---------------------------------------------------| |
| 337 | | | |
| 338 | | 1_PR 2_TE 3_ERR 4_TTY3 5_+6V 6_TTY2 7_TTY1 | |
| 339 | | | |
| 340 | | 8_SG 9_SD 10_0V 11_CH1 12_CH2 13_CH3 O |
| 341 | | | |
| 342 | | 14_CH4 15_CH5 16_CH6 17_CH7 18_CH8 19_CH9 20_PI | |
| 343 | | | |
| 344 | |---------------------------------------------------| |
| 345 | JUMPERS - 15 2-pin jumpers labelled S1 to S15. S2, S3 & S4 are not shorted. All others are shorted. |
| 332 | 346 | |
| 333 | | Sub PCB Layout |
| 334 | | -------------- |
| 335 | 347 | |
| 336 | | A20B-1000-0720/02B |
| 337 | | |--------------------------------| |
| 338 | | | CNA CNB CNC CND | |
| 339 | | | | |
| 340 | | | MB15542 CNE| |
| 341 | | | | |
| 342 | | | HD6845S D8085| |
| 343 | | | 16MHz | |
| 344 | | | | |
| 345 | | | X | |
| 346 | | | XXXXXXXX | |
| 347 | | | XXXXXXXX | |
| 348 | | | XXXXXXXX 6264 A41_010B.28B| |
| 349 | | | 6264 A41_020A.30B| |
| 350 | | |--------------------------------| |
| 351 | | Notes: |
| 352 | | D8085 - NEC D8085A-2 CPU |
| 353 | | HD6845S - Hitachi HD6845S / HD46505S CRT Controller |
| 354 | | 6264 - Hitachi HM6264P-15 8k x 8-bit SRAM |
| 355 | | XXXXXXX - Fujitsu MB8265-15 65536 x1-bit DRAM (25 chips total) |
| 356 | | MB15542 - Fujitsu MB15542 Custom Chip |
| 357 | | A41_010B- Intel D27128 16k x8-bit EPROM |
| 358 | | A42_020A- Hitachi 27256G 32k x8-bit EPROM |
| 359 | | CNA - 50-pin flat cable joining to Main PCB |
| 360 | | CNB - 50-pin flat cable joining to Main PCB |
| 361 | | CNC - 6-pin power cable joining to Main PCB |
| 362 | | CND - 20-pin flat cable joining to CRT Unit (video output) |
| 363 | | CNE - Fanuc Honda MR-50 50-pin male connector for expansion (not used) |
| 348 | Sub PCB Layout |
| 349 | -------------- |
| 350 | |
| 351 | A20B-1000-0720/02B |
| 352 | |--------------------------------| |
| 353 | | CNA CNB CNC CND | |
| 354 | | | |
| 355 | | MB15542 CNE| |
| 356 | | | |
| 357 | | HD6845S D8085| |
| 358 | | 16MHz | |
| 359 | | | |
| 360 | | X | |
| 361 | | XXXXXXXX | |
| 362 | | XXXXXXXX | |
| 363 | | XXXXXXXX 6264 A41_010B.28B| |
| 364 | | 6264 A41_020A.30B| |
| 365 | |--------------------------------| |
| 366 | Notes: |
| 367 | D8085 - NEC D8085A-2 CPU. Clock input 8.000MHz [16/2]. |
| 368 | Note 8085 has internal /2 divider so actual clock speed is 4.000MHz |
| 369 | HD6845S - Hitachi HD6845S / HD46505S CRT Controller. Clock input 2.000MHz [8/2] |
| 370 | 6264 - Hitachi HM6264P-15 8k x 8-bit SRAM |
| 371 | XXXXXXX - Fujitsu MB8265-15 65536 x1-bit DRAM (25 chips total) |
| 372 | MB15542 - Fujitsu MB15542 Custom Chip |
| 373 | A41_010B- Intel D27128 16k x8-bit EPROM |
| 374 | A42_020A- Hitachi 27256G 32k x8-bit EPROM |
| 375 | CNA - 50-pin flat cable joining to Main PCB |
| 376 | CNB - 50-pin flat cable joining to Main PCB |
| 377 | CNC - 6-pin power cable joining to Main PCB |
| 378 | CND - 20-pin flat cable joining to CRT Unit (video output) |
| 379 | CNE - Fanuc Honda MR-50 50-pin male connector for expansion (not used) |
| 380 | HSync - 22.7273kHz |
| 381 | VSync - 54.6330Hz |
| 382 | |
| 383 | |
| 384 | Block Diagram |
| 385 | ------------- |
| 386 | Below is the block diagram shown in the Maintenance Manual. |
| 387 | The arrows denote direction of data flow. |
| 388 | |
| 389 | |-------| |--------| |----------------| |
| 390 | |Sub CPU| |Main CPU|<---->|Math Coprocessor| |
| 391 | |-------| |--------| |----------------| |
| 392 | /\ /\ /\ |
| 393 | | | | |
| 394 | | \/ \/ |
| 395 | |-----| | |------------------| |
| 396 | |EPROM|<--->| /\ |
| 397 | |-----| | |---------------| | |----------------| |
| 398 | | | Common memory |<---------------------------------->|<--->|RS232C interface|---CN1 |
| 399 | |<-------->|===============| | |----------------| |
| 400 | | /-->| Graphic memory|------| | |
| 401 | | | |---------------| | | |----------------| |
| 402 | | | | |--------| |<--->|RS232C interface|---CN2 |
| 403 | | | | | BOOT |<-------->| |----------------| |
| 404 | | | | | EPROM | | |
| 405 | | | |----------------| | |--------| | |----------------| |
| 406 | |<-----|-->|Character memory|--| | |<--->|RS232C interface|---CN3 |
| 407 | | |-->|----------------| | | |--------| | |----------------| |
| 408 | | | | | |Main RAM|<-------->| |
| 409 | | | | | |--------| | |----------------| |
| 410 | | | | | |<--->|RS232C interface|---CN4 |
| 411 | | | | | | |----------------| |
| 412 | |---------| | | \/ \/ | |
| 413 | |Keyboard | \/ \---|---------------------------| | |-----------------| CN9 |--------| |
| 414 | |interface|<->|<-------->| CRT control circuit | |<--->|Floppy controller|---O---|FDD UNIT| |
| 415 | |----|----| |-------------|-------------| | |-----------------| |--------| |
| 416 | | | | |
| 417 | | | \/ |
| 418 | O CN6 O CN8 O CN5 |
| 419 | | | |
| 420 | | | |
| 421 | |---|----| |----|----| |
| 422 | |Keyboard| | Screen | |
| 423 | |--------| |---------| |
| 364 | 424 | |
| 365 | 425 | |
| 366 | | Tech notes: |
| 367 | | - Once the big ASCII-art boot screen appears, you must press the "LOAD" key |
| 368 | | a few times to initiate booting from the floppy drive. |
| 369 | | |
| 370 | | |
| 371 | | The block diagram in the Maintenance Manual looks like this: |
| 372 | | |
| 373 | | |sub CPU| |main CPU|---|math coprocessor| |
| 374 | | | | | |
| 375 | | |EPROM|----| |---------------/ |
| 376 | | |-------------| Common memory / graphic memory | ------------------| |
| 377 | | | | |--------|RS232C interface|---CN1 |
| 378 | | | | |EPROM|-----|--------|RS232C interface|---CN2 |
| 379 | | |----|character memory| | |--------|RS232C interface|---CN3 |
| 380 | | | | | |main RAM|--|--------|RS232C interface|---CN4 |
| 381 | | | | | | |
| 382 | | |----| CRTC and video circuits |---CN8 | floppy controller |----CN9 |
| 383 | | | |
| 384 | | |keyboard interface|---CN6 |
| 385 | | |
| 386 | | |
| 387 | 426 | TODO: |
| 388 | | - Find char gen data. Is it inside the MB15542 custom? :-( |
| 389 | | - What's the a42_020a.30b ROM do? Both CPUs are currently happy without it, |
| 390 | | and it doesn't appear to contain valid 8086 or 8085 code. |
| 391 | 427 | - Is the VRAM hookup anything like correct? |
| 392 | 428 | - Hookup enough keyboard to get it to boot a floppy, the FAPT DOCTOR |
| 393 | 429 | program will be invaluable to answering many questions. |
| 394 | 430 | - Shared RAM is 8k, but there are 2 6264s on the sub board. Is shared RAM |
| 395 | 431 | banked? |
| 432 | - I/O is at F00xx: |
| 433 | ':maincpu' (FC15A): unmapped program memory write to F0012 = 00CE & 00FF |
| 434 | ':maincpu' (FC15D): unmapped program memory write to F0016 = 00CE & 00FF |
| 435 | ':maincpu' (FC160): unmapped program memory write to F001A = 00CE & 00FF |
| 436 | ':maincpu' (FC163): unmapped program memory write to F001E = 00CE & 00FF |
| 437 | ':maincpu' (FC16D): unmapped program memory write to F000E = 0034 & 00FF |
| 438 | ':maincpu' (FC172): unmapped program memory write to F0008 = 00D4 & 00FF |
| 439 | ':maincpu' (FC177): unmapped program memory write to F0008 = 0030 & 00FF |
| 440 | ':maincpu' (FC17C): unmapped program memory write to F000E = 0056 & 00FF |
| 441 | ':maincpu' (FC181): unmapped program memory write to F000A = 0010 & 00FF |
| 442 | ':maincpu' (FC186): unmapped program memory write to F000E = 0096 & 00FF |
| 443 | ':maincpu' (FC18B): unmapped program memory write to F000C = 0010 & 00FF |
| 444 | ':maincpu' (FC190): unmapped program memory write to F004E = 0034 & 00FF |
| 445 | ':maincpu' (FC195): unmapped program memory write to F0048 = 0020 & 00FF |
| 446 | ':maincpu' (FC19A): unmapped program memory write to F0048 = 004E & 00FF |
| 447 | ':maincpu' (FC19F): unmapped program memory write to F004E = 0056 & 00FF |
| 448 | ':maincpu' (FC1A4): unmapped program memory write to F004A = 0010 & 00FF |
| 449 | ':maincpu' (FC1A9): unmapped program memory write to F004E = 0096 & 00FF |
| 450 | ':maincpu' (FC1AE): unmapped program memory write to F004C = 0010 & 00FF |
| 396 | 451 | |
| 397 | 452 | ****************************************************************************/ |
| 398 | 453 | |
| r29384 | r29385 | |
| 481 | 536 | DECLARE_READ8_MEMBER(keyboard_r); |
| 482 | 537 | DECLARE_WRITE8_MEMBER(video_ctrl_w); |
| 483 | 538 | |
| 539 | DECLARE_READ8_MEMBER(test_r); |
| 540 | DECLARE_READ8_MEMBER(vbl_r); |
| 541 | |
| 484 | 542 | DECLARE_WRITE_LINE_MEMBER(vsync_w); |
| 485 | 543 | |
| 486 | 544 | DECLARE_DRIVER_INIT(fanucspmg); |
| r29384 | r29385 | |
| 493 | 551 | INT32 m_vram_bank; |
| 494 | 552 | UINT8 m_vbl_ctrl; |
| 495 | 553 | UINT8 m_keyboard_row; |
| 554 | UINT8 m_vbl_stat; |
| 496 | 555 | }; |
| 497 | 556 | |
| 498 | 557 | DRIVER_INIT_MEMBER(fanucspmg_state, fanucspmg) |
| r29384 | r29385 | |
| 516 | 575 | m_shared[offset] = data; |
| 517 | 576 | } |
| 518 | 577 | |
| 578 | READ8_MEMBER(fanucspmg_state::test_r) |
| 579 | { |
| 580 | return 0x00; // 0x80 to start weird not-sure-what process which may be FDC related |
| 581 | } |
| 582 | |
| 583 | READ8_MEMBER(fanucspmg_state::vbl_r) |
| 584 | { |
| 585 | return m_vbl_stat; |
| 586 | } |
| 587 | |
| 519 | 588 | static ADDRESS_MAP_START(maincpu_mem, AS_PROGRAM, 16, fanucspmg_state) |
| 520 | 589 | AM_RANGE(0x00000, 0x7ffff) AM_RAM // main RAM |
| 521 | 590 | |
| 522 | | AM_RANGE(0xf0000, 0xf00ff) AM_RAM // not sure if this is RAM or I/O |
| 591 | AM_RANGE(0x88000, 0x88001) AM_READ8(vbl_r, 0xffff) |
| 523 | 592 | |
| 593 | AM_RANGE(0xf0004, 0xf0005) AM_READ8(test_r, 0xffff) |
| 594 | |
| 524 | 595 | AM_RANGE(0xf8000, 0xf9fff) AM_READWRITE8(shared_r, shared_w, 0xffff) |
| 525 | | |
| 526 | 596 | AM_RANGE(0xfc000, 0xfffff) AM_ROM AM_REGION(MAINCPU_TAG, 0) |
| 527 | 597 | ADDRESS_MAP_END |
| 528 | 598 | |
| r29384 | r29385 | |
| 538 | 608 | m_subcpu->set_input_line(I8085_RST75_LINE, ASSERT_LINE); |
| 539 | 609 | } |
| 540 | 610 | } |
| 611 | |
| 612 | m_vbl_stat = (state == ASSERT_LINE) ? 1 : 0; |
| 541 | 613 | } |
| 542 | 614 | |
| 543 | 615 | READ8_MEMBER(fanucspmg_state::vram1_r) |
| r29384 | r29385 | |
| 572 | 644 | return 0xff; |
| 573 | 645 | } |
| 574 | 646 | |
| 647 | // bit 1 seems to route to bit 7 of f0004 on the 8086 (signals the "LOAD" key pressed?) |
| 575 | 648 | // bit 3 appears to enable vblank IRQs |
| 576 | 649 | WRITE8_MEMBER(fanucspmg_state::vbl_ctrl_w) |
| 577 | 650 | { |
| r29384 | r29385 | |
| 725 | 798 | |
| 726 | 799 | static MACHINE_CONFIG_START( fanucspmg, fanucspmg_state ) |
| 727 | 800 | /* basic machine hardware */ |
| 728 | | MCFG_CPU_ADD(MAINCPU_TAG, I8086, XTAL_15MHz/4) // guess - 3.75 MHz |
| 801 | MCFG_CPU_ADD(MAINCPU_TAG, I8086, XTAL_15MHz/3) |
| 729 | 802 | MCFG_CPU_PROGRAM_MAP(maincpu_mem) |
| 730 | 803 | MCFG_CPU_IO_MAP(maincpu_io) |
| 731 | 804 | |
| 732 | | MCFG_CPU_ADD(SUBCPU_TAG, I8085A, XTAL_16MHz/8) // part is -2 rated |
| 805 | MCFG_CPU_ADD(SUBCPU_TAG, I8085A, XTAL_16MHz/2/2) |
| 733 | 806 | MCFG_CPU_PROGRAM_MAP(subcpu_mem) |
| 734 | 807 | |
| 735 | 808 | MCFG_DEVICE_ADD(USART0_TAG, I8251, 0) |
| r29384 | r29385 | |
| 738 | 811 | MCFG_DEVICE_ADD(USART3_TAG, I8251, 0) |
| 739 | 812 | |
| 740 | 813 | MCFG_DEVICE_ADD(PIT0_TAG, PIT8253, 0) |
| 741 | | MCFG_PIT8253_CLK0(XTAL_15MHz/4) |
| 742 | | MCFG_PIT8253_CLK1(XTAL_15MHz/4) |
| 743 | | MCFG_PIT8253_CLK2(XTAL_15MHz/4) |
| 814 | MCFG_PIT8253_CLK0(XTAL_15MHz/12) |
| 815 | MCFG_PIT8253_CLK1(XTAL_15MHz/12) |
| 816 | MCFG_PIT8253_CLK2(XTAL_15MHz/12) |
| 744 | 817 | MCFG_DEVICE_ADD(PIT1_TAG, PIT8253, 0) |
| 745 | | MCFG_PIT8253_CLK0(XTAL_15MHz/4) |
| 746 | | MCFG_PIT8253_CLK1(XTAL_15MHz/4) |
| 747 | | MCFG_PIT8253_CLK2(XTAL_15MHz/4) |
| 818 | MCFG_PIT8253_CLK0(XTAL_15MHz/12) |
| 819 | MCFG_PIT8253_CLK1(XTAL_15MHz/12) |
| 820 | MCFG_PIT8253_CLK2(XTAL_15MHz/12) |
| 748 | 821 | |
| 749 | | MCFG_I8257_ADD(DMAC_TAG, XTAL_15MHz / 4, fanucspmg_dma) |
| 822 | MCFG_I8257_ADD(DMAC_TAG, XTAL_15MHz / 5, fanucspmg_dma) |
| 750 | 823 | |
| 751 | 824 | MCFG_PIC8259_ADD(PIC0_TAG, INPUTLINE("maincpu", 0), VCC, NULL) |
| 752 | 825 | MCFG_PIC8259_ADD(PIC1_TAG, INPUTLINE("maincpu", 0), VCC, NULL) |
| r29384 | r29385 | |
| 759 | 832 | MCFG_SCREEN_RAW_PARAMS(XTAL_15MHz, 640, 0, 512, 390, 0, 384 ) |
| 760 | 833 | MCFG_SCREEN_UPDATE_DEVICE( CRTC_TAG, mc6845_device, screen_update ) |
| 761 | 834 | |
| 762 | | MCFG_MC6845_ADD( CRTC_TAG, HD6845, SCREEN_TAG, XTAL_15MHz/3, mc6845_fanuc_intf) |
| 835 | MCFG_MC6845_ADD( CRTC_TAG, HD6845, SCREEN_TAG, XTAL_8MHz/2, mc6845_fanuc_intf) |
| 763 | 836 | MACHINE_CONFIG_END |
| 764 | 837 | |
| 765 | 838 | /* ROM definition */ |