trunk/src/mess/drivers/gb.c
| r30929 | r30930 | |
| 448 | 448 | |
| 449 | 449 | |
| 450 | 450 | /* Initial value of the cpu registers (hacks until we get bios dumps) */ |
| 451 | | static const UINT16 mgb_cpu_regs[6] = { 0xFFB0, 0x0013, 0x00D8, 0x014D, 0xFFFE, 0x0100 }; /* Game Boy Pocket / Super Game Boy 2 */ |
| 452 | 451 | static const UINT16 megaduck_cpu_regs[6] = { 0x0000, 0x0000, 0x0000, 0x0000, 0xFFFE, 0x0000 }; /* Megaduck */ |
| 453 | 452 | |
| 454 | 453 | |
| r30929 | r30930 | |
| 744 | 743 | MCFG_CPU_PROGRAM_MAP(gameboy_map) |
| 745 | 744 | MCFG_LR35902_TIMER_CB( WRITE8( gb_state, gb_timer_callback ) ) |
| 746 | 745 | MCFG_LR35902_HALT_BUG |
| 747 | | MCFG_CPU_VBLANK_INT_DRIVER("screen", gb_state, gb_scanline_interrupt) /* 1 dummy int each frame */ |
| 748 | 746 | |
| 749 | | MCFG_QUANTUM_TIME(attotime::from_hz(60)) |
| 750 | | |
| 751 | 747 | MCFG_MACHINE_START_OVERRIDE(gb_state, gb ) |
| 752 | 748 | MCFG_MACHINE_RESET_OVERRIDE(gb_state, gb ) |
| 753 | 749 | |
| r30929 | r30930 | |
| 810 | 806 | MCFG_CPU_MODIFY("maincpu") |
| 811 | 807 | MCFG_LR35902_TIMER_CB( WRITE8( gb_state, gb_timer_callback ) ) |
| 812 | 808 | MCFG_LR35902_HALT_BUG |
| 813 | | MCFG_LR35902_RESET_VALUES(mgb_cpu_regs) |
| 814 | 809 | |
| 815 | 810 | MCFG_MACHINE_START_OVERRIDE(gb_state, gbpocket) |
| 816 | 811 | MCFG_MACHINE_RESET_OVERRIDE(gb_state, gbpocket) |
| r30929 | r30930 | |
| 854 | 849 | MCFG_LR35902_TIMER_CB( WRITE8( gb_state, gb_timer_callback ) ) |
| 855 | 850 | MCFG_LR35902_HALT_BUG |
| 856 | 851 | MCFG_LR35902_RESET_VALUES(megaduck_cpu_regs) |
| 857 | | MCFG_CPU_VBLANK_INT_DRIVER("screen", gb_state, gb_scanline_interrupt) /* 1 int each scanline ! */ |
| 858 | 852 | |
| 859 | 853 | MCFG_SCREEN_ADD("screen", LCD) |
| 860 | 854 | MCFG_SCREEN_REFRESH_RATE(DMG_FRAMES_PER_SECOND) |
| 861 | 855 | MCFG_SCREEN_VBLANK_TIME(0) |
| 862 | 856 | MCFG_SCREEN_PALETTE("palette") |
| 863 | 857 | |
| 864 | | MCFG_QUANTUM_TIME(attotime::from_hz(60)) |
| 865 | | |
| 866 | 858 | MCFG_MACHINE_START_OVERRIDE(megaduck_state, megaduck ) |
| 867 | 859 | MCFG_MACHINE_RESET_OVERRIDE(megaduck_state, megaduck ) |
| 868 | 860 | |
| r30929 | r30930 | |
| 904 | 896 | ROM_END |
| 905 | 897 | |
| 906 | 898 | ROM_START( gbpocket ) |
| 907 | | ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASEFF ) |
| 908 | | /* ROM_LOAD( "gbp_boot.bin", 0x0000, 0x0100, NO_DUMP ) */ |
| 899 | ROM_REGION( 0x0100, "maincpu", 0 ) |
| 900 | ROM_LOAD( "mgb_boot.bin", 0x0000, 0x0100, CRC(e6920754) SHA1(4e68f9da03c310e84c523654b9026e51f26ce7f0) ) |
| 909 | 901 | ROM_END |
| 910 | 902 | |
| 911 | 903 | ROM_START( gblight ) |