src/mess/drivers/crvision.c
| r8448 | r8449 | |
| 21 | 21 | * Titanic Frogger Demo 1.1 |
| 22 | 22 | */ |
| 23 | 23 | |
| 24 | /* |
| 25 | |
| 26 | Salora Manager |
| 27 | |
| 28 | PCB Layout |
| 29 | ---------- |
| 30 | |
| 31 | Main board |
| 32 | |
| 33 | |-------------------------------------------------------------------------------| |
| 34 | | |-----CN1-----| |-----CN2-----| | |
| 35 | | 10.738MHz --| |
| 36 | | X CN3 | |
| 37 | | ROM01 VDC | |
| 38 | | X --| |
| 39 | | | |
| 40 | | ROM23 X | |
| 41 | | | |
| 42 | | X | |
| 43 | | LS04 --| |
| 44 | | X 6821 | |
| 45 | | LS32 | |
| 46 | | X | |
| 47 | | LS139 PSG | |
| 48 | | X | |
| 49 | | LS138 | |
| 50 | | X CN4 | |
| 51 | | LS244 | |
| 52 | | | |
| 53 | | LS245 | |
| 54 | | | |
| 55 | | LS244 | |
| 56 | | 6502 --| |
| 57 | | LS244 | |
| 58 | | CN5 | |
| 59 | |-------------------------------------------------------------------------------| |
| 60 | |
| 61 | Notes: |
| 62 | All IC's shown. Prototype-ish board, with many jumper wires and extra capacitors. |
| 63 | |
| 64 | ROM01 - Toshiba TMM2464P 8Kx8 one-time PROM, labeled "0.1" |
| 65 | ROM23 - Toshiba TMM2464P 8Kx8 one-time PROM, labeled "23" |
| 66 | 6502 - Rockwell R6502AP 8-bit Microprocessor |
| 67 | 6821 - Hitachi HD468B21P Peripheral Interface Adaptor |
| 68 | VDC - most likely TMS9929A (covered w/heatsink) |
| 69 | PSG - Texas Instruments SN76489AN Programmable Sound Generator |
| 70 | X - some kind of RAM chip (covered w/heatsink) |
| 71 | CN1 - sub board connector (17x2 pin header) |
| 72 | CN2 - RF board connector (17x1 pin header) |
| 73 | CN3 - tape connector (7x2 PCB edge male) |
| 74 | CN4 - expansion connector (30x2 PCB edge male) |
| 75 | CN5 - cartridge connector (18x2 PCB edge female) |
| 76 | |
| 77 | Sub board |
| 78 | |
| 79 | |---------------------------------------| |
| 80 | | 17.73447MHz |-----CN1-----| | |
| 81 | | | |
| 82 | | 74S04 4116 | |
| 83 | | | |
| 84 | | LS90 4116 | |
| 85 | | | |
| 86 | | LS10 4116 | |
| 87 | | | |
| 88 | | LS367 4116 | |
| 89 | | | |
| 90 | | LS393 4116 | |
| 91 | | | |
| 92 | | LS244 4116 | |
| 93 | | | |
| 94 | | LS257 4116 | |
| 95 | | | |
| 96 | | LS257 4116 | |
| 97 | | | |
| 98 | | LS139 | |
| 99 | | | |
| 100 | |---------------------------------------| |
| 101 | |
| 102 | Notes: |
| 103 | All IC's shown. |
| 104 | |
| 105 | 4116 - Toshiba TMM416P-3 16Kx1 RAM |
| 106 | CN1 - main board connector (17x2 pin header) |
| 107 | |
| 108 | */ |
| 109 | |
| 24 | 110 | #include "emu.h" |
| 25 | 111 | #include "includes/crvision.h" |
| 26 | 112 | #include "cpu/m6502/m6502.h" |
| r8448 | r8449 | |
| 67 | 153 | AM_RANGE(0xf800, 0xffff) AM_ROM |
| 68 | 154 | ADDRESS_MAP_END |
| 69 | 155 | |
| 156 | static ADDRESS_MAP_START( lasr2001_map, ADDRESS_SPACE_PROGRAM, 8 ) |
| 157 | AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x0c00) AM_RAM |
| 158 | AM_RANGE(0x1000, 0x1003) AM_MIRROR(0x0ffc) AM_DEVREADWRITE(PIA6821_TAG, pia6821_r, pia6821_w) |
| 159 | AM_RANGE(0x2000, 0x2000) AM_MIRROR(0x0ffe) AM_READ(TMS9928A_vram_r) |
| 160 | AM_RANGE(0x2001, 0x2001) AM_MIRROR(0x0ffe) AM_READ(TMS9928A_register_r) |
| 161 | AM_RANGE(0x3000, 0x3000) AM_MIRROR(0x0ffe) AM_WRITE(TMS9928A_vram_w) |
| 162 | AM_RANGE(0x3001, 0x3001) AM_MIRROR(0x0ffe) AM_WRITE(TMS9928A_register_w) |
| 163 | AM_RANGE(0xc000, 0xffff) AM_ROM AM_REGION(M6502_TAG, 0) |
| 164 | ADDRESS_MAP_END |
| 165 | |
| 70 | 166 | /* Input Ports */ |
| 71 | 167 | |
| 72 | 168 | static INPUT_CHANGED( trigger_nmi ) |
| r8448 | r8449 | |
| 239 | 335 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START ) PORT_NAME("Reset") PORT_CODE(KEYCODE_F10) PORT_CHANGED(trigger_nmi, 0) |
| 240 | 336 | INPUT_PORTS_END |
| 241 | 337 | |
| 338 | static INPUT_PORTS_START( manager ) |
| 339 | INPUT_PORTS_END |
| 340 | |
| 242 | 341 | /* Machine Interface */ |
| 243 | 342 | |
| 244 | 343 | static INTERRUPT_GEN( crvision_int ) |
| r8448 | r8449 | |
| 628 | 727 | MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ |
| 629 | 728 | MACHINE_DRIVER_END |
| 630 | 729 | |
| 730 | static MACHINE_DRIVER_START( lasr2001 ) |
| 731 | MDRV_DRIVER_DATA(crvision_state) |
| 732 | |
| 733 | /* basic machine hardware */ |
| 734 | MDRV_CPU_ADD(M6502_TAG, M6502, 2000000) |
| 735 | MDRV_CPU_PROGRAM_MAP(lasr2001_map) |
| 736 | MDRV_CPU_VBLANK_INT(SCREEN_TAG, crvision_int) |
| 737 | |
| 738 | MDRV_MACHINE_START(pal) |
| 739 | |
| 740 | /* sound hardware */ |
| 741 | MDRV_SPEAKER_STANDARD_MONO("mono") |
| 742 | MDRV_SOUND_ADD(SN76489_TAG, SN76489A, 2000000) |
| 743 | MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00) |
| 744 | |
| 745 | MDRV_SOUND_WAVE_ADD("wave", CASSETTE_TAG) |
| 746 | MDRV_SOUND_ROUTE(1, "mono", 0.25) |
| 747 | |
| 748 | /* peripheral hardware */ |
| 749 | MDRV_PIA6821_ADD(PIA6821_TAG, crvision_pia_intf) |
| 750 | |
| 751 | /* cartridge */ |
| 752 | MDRV_CARTSLOT_ADD("cart") |
| 753 | MDRV_CARTSLOT_EXTENSION_LIST("bin,rom") |
| 754 | MDRV_CARTSLOT_INTERFACE("crvision_cart") |
| 755 | MDRV_CARTSLOT_LOAD(crvision_cart) |
| 756 | |
| 757 | /* software lists */ |
| 758 | MDRV_SOFTWARE_LIST_ADD("cart_list","crvision") |
| 759 | |
| 760 | /* cassette */ |
| 761 | MDRV_CASSETTE_ADD(CASSETTE_TAG, crvision_cassette_config) |
| 762 | |
| 763 | /* printer */ |
| 764 | MDRV_CENTRONICS_ADD(CENTRONICS_TAG, standard_centronics) |
| 765 | |
| 766 | /* internal ram */ |
| 767 | MDRV_RAM_ADD("messram") |
| 768 | MDRV_RAM_DEFAULT_SIZE("1K") // MAIN RAM |
| 769 | MDRV_RAM_EXTRA_OPTIONS("15K") // 16K expansion (lower 14K available only, upper 2K shared with BIOS ROM) |
| 770 | |
| 771 | /* video hardware */ |
| 772 | MDRV_IMPORT_FROM(tms9928a) |
| 773 | MDRV_SCREEN_MODIFY(SCREEN_TAG) |
| 774 | MDRV_SCREEN_REFRESH_RATE((float)10738000/2/342/313) |
| 775 | MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ |
| 776 | MACHINE_DRIVER_END |
| 777 | |
| 631 | 778 | /* ROMs */ |
| 632 | 779 | |
| 633 | 780 | ROM_START( crvision ) |
| r8448 | r8449 | |
| 646 | 793 | #define rom_rameses rom_fnvision |
| 647 | 794 | #define rom_vz2000 rom_fnvision |
| 648 | 795 | |
| 796 | ROM_START( manager ) |
| 797 | ROM_REGION( 0x4000, M6502_TAG, 0 ) |
| 798 | ROM_LOAD( "01", 0x0000, 0x2000, CRC(702f4cf5) SHA1(cd14ee74e787d24b76c166de484dae24206e219b) ) |
| 799 | ROM_LOAD( "23", 0x2000, 0x2000, CRC(46489d88) SHA1(467f5bcd62d0b4117c443e13373df8f3c45df7b2) ) |
| 800 | ROM_END |
| 801 | |
| 649 | 802 | /* System Drivers */ |
| 650 | 803 | |
| 651 | | /* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME */ |
| 652 | | CONS( 1982, crvision, 0, 0, pal, crvision, 0, "Video Technology", "CreatiVision", 0 ) |
| 653 | | CONS( 1982, fnvision, crvision, 0, pal, crvision, 0, "Video Technology", "FunVision", 0 ) |
| 654 | | CONS( 1982, crvisioj, crvision, 0, ntsc, crvision, 0, "Cheryco", "CreatiVision (Japan)", 0 ) |
| 655 | | CONS( 1982, wizzard, crvision, 0, pal, crvision, 0, "Dick Smith Electronics", "Wizzard (Oceania)", 0 ) |
| 656 | | CONS( 1982, rameses, crvision, 0, pal, crvision, 0, "Hanimex", "Rameses (Oceania)", 0 ) |
| 657 | | CONS( 1983, vz2000, crvision, 0, pal, crvision, 0, "Dick Smith Electronics", "VZ 2000 (Oceania)", 0 ) |
| 658 | | CONS( 1983, crvisio2, crvision, 0, pal, crvision, 0, "Video Technology", "CreatiVision MK-II (Europe)", 0 ) |
| 804 | /* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME */ |
| 805 | CONS( 1982, crvision, 0, 0, pal, crvision, 0, "Video Technology", "CreatiVision", 0 ) |
| 806 | CONS( 1982, fnvision, crvision, 0, pal, crvision, 0, "Video Technology", "FunVision", 0 ) |
| 807 | CONS( 1982, crvisioj, crvision, 0, ntsc, crvision, 0, "Cheryco", "CreatiVision (Japan)", 0 ) |
| 808 | CONS( 1982, wizzard, crvision, 0, pal, crvision, 0, "Dick Smith Electronics", "Wizzard (Oceania)", 0 ) |
| 809 | CONS( 1982, rameses, crvision, 0, pal, crvision, 0, "Hanimex", "Rameses (Oceania)", 0 ) |
| 810 | CONS( 1983, vz2000, crvision, 0, pal, crvision, 0, "Dick Smith Electronics", "VZ 2000 (Oceania)", 0 ) |
| 811 | CONS( 1983, crvisio2, crvision, 0, pal, crvision, 0, "Video Technology", "CreatiVision MK-II (Europe)", 0 ) |
| 659 | 812 | /* |
| 660 | | COMP( 1983, lasr2001, 0, 0, lasr2001, lasr2001, 0, "Video Technology", "Laser 2001", GAME_NOT_WORKING ) |
| 661 | | COMP( 1983, vz2001, lasr2001, 0, lasr2001, lasr2001, 0, "Dick Smith Electronics", "VZ 2001 (Oceania)", GAME_NOT_WORKING ) |
| 662 | | COMP( 1983, manager, lasr2001, 0, lasr2001, lasr2001, 0, "Salora", "Manager (Finland)", GAME_NOT_WORKING ) |
| 813 | COMP( 1983, lasr2001, 0, 0, lasr2001, lasr2001, 0, "Video Technology", "Laser 2001", GAME_NOT_WORKING ) |
| 814 | COMP( 1983, vz2001, lasr2001, 0, lasr2001, lasr2001, 0, "Dick Smith Electronics", "VZ 2001 (Oceania)", GAME_NOT_WORKING ) |
| 663 | 815 | */ |
| 816 | COMP( 1983, manager, 0, 0, lasr2001, manager, 0, "Salora", "Manager (Finland)", GAME_NOT_WORKING ) |