summaryrefslogtreecommitdiffstatshomepage
path: root/src/mess/drivers/nes.c
Commit message (Collapse)AuthorAgeFilesLines
* move mess into mame (nw) Miodrag Milanovic2015-09-301-347/+0
|
* change flags from GAME_ to MACHINE_ David Haywood2015-07-291-9/+9
| | | | this better fits the drivers from MESS (which have always illogically used the GAME_ flags despite not being games) and also fits fine with arcade machines.
* nes.c: fixed the flip disk input not being recognized in etabeta782015-06-021-0/+1
| | | | the fds driver. nw.
* Update for Carlos A. Lozano, Victor Trucco and Charles MacDonald, also few ↵ Miodrag Milanovic2015-05-221-1/+1
| | | | fixes (nw)
* Brad Oliver licenses (nw) Miodrag Milanovic2015-05-111-1/+1
|
* Added dummy license lines to each file for MESS (nw) Miodrag Milanovic2015-05-071-0/+2
|
* Cleanups and version bumpmame0158 Miodrag Milanovic2015-01-281-1/+1
|
* (MESS) nes: converted input code to use slot devices. this means that now you etabeta782015-01-261-583/+18
| | | | | | | | | | | | | | | | | | | | | | | change the emulated controllers (Zapper, NES Four Score Adapter, Bandai Power Pad and Family Trainer, Famicom Keyboard Component, Arkanoid Vaus Paddle and Mahjong Controller) via the Slot Device menu of the UI interface and not anymore from the System Configurations menu. Also, changing controller now requires to reset the system, so please take some time *before* starting the game if you want to play a game that uses particular controllers. [Fabio Priuli] (MESS) nes: added emulation of the Konami Hyper Shot controllers, which are necessary to play Hyper Olympics and Hyper Sports for Famicom. [Fabio Priuli] (MESS) nes: added emulation of the Yonezawa Party Tap controllers, which are necessary to play in more than two players some quiz games for Famicom. [Fabio Priuli] (MESS) nes: added emulation of the Pachinko controller used by a few pachinko games for Famicom. [Fabio Priuli] (MESS) nes: added emulation of the Epoch Barcode Battler unit (even if only as Famicom controller, and not as a standalone unit) which is necessary to play Barcode World for Famicom. [Fabio Priuli]
* nes.c: removed erroneous use of postload, fixes fds and famitwin save state ↵ Osso2015-01-021-1/+1
| | | | problem (nw)
* Cleanups and version bumpmame0155 Miodrag Milanovic2014-10-151-10/+10
|
* (MESS) fds/famitwin: attach the disk controller device directly Fabio Priuli2014-10-031-33/+43
| | | | | | to the machines, without the intermediate cartslot. This is more accurate for famitwin and it also avoids the possible misunderstanding about the -cart switches in these systems (+ avoids possible misconfigurations). nw.
* fixed famitwin bios usage. nw. Fabio Priuli2014-09-121-0/+6
|
* (MESS) famicom: converted the disk system add-on to be a cart Fabio Priuli2014-09-111-32/+106
| | | | | | | | | | | | | | | | | | | | | | | | | in the softlist. The official syntax to launch disk games is now mess famicom -cart disksys -flop gamename which corresponds to inserting the RAM expansion cart with connected the disk drive into the cartslot and the desired disk in the disk drive (exactly like you would have done with the real thing). In this way, you cannot mount anymore both a cart and a disk in the Family Computer (as in a real unit). Users that cannot cope with this limitation and/or with the new syntax can still use the famitwin driver (which offers both cart and disk options) or the newly added driver fds which emulates a famicom with the expansion always inserted: in both latter cases the old syntax mess famitwin -flop gamename will launch the game, as previously. [Fabio Priuli] (MESS) famicom: fixed disk system IRQ latch clear in Kaettekita Mario Bros. based on investigations by FHorse. [Fabio Priuli] Out of whatsnew: For the moment I gave up the original plan to also modernize the floppy drive and the disk format. If anyone wants to look into these, be my guest :-)
* Cleanups and version bump Miodrag Milanovic2014-07-221-1/+1
|
* cassette config moved inline (nw) Miodrag Milanovic2014-05-021-10/+4
|
* Cleanup of image device interfaces (nw) Miodrag Milanovic2014-05-021-9/+2
|
* nes_apu: converted to use inline config. nw. Fabio Priuli2014-04-111-10/+3
|
* (MESS) removed an unused interface from NES carts. nw. Fabio Priuli2014-04-081-7/+2
|
* nes ppu: converted to use inline config + removed some unused config values. nw. Fabio Priuli2014-04-081-11/+6
| | | | vsnes/playch10: reduce tagmap lookups at runtime. nw.
* Made palette settings for screen explicit and mandatory for ind16 mode (nw) Miodrag Milanovic2014-03-141-0/+1
|
* snes and nes slot devices moved into bus folder (nw) Miodrag Milanovic2014-03-101-352/+0
|
* Huge update, palette is now device (nw) Miodrag Milanovic2014-02-271-1/+2
| | | note: Aaron please give more descriptive text for release log I have no more strength :)
* (MESS) nes: properly implemented Aladdin Deck Enhancer as a Fabio Priuli2014-02-211-0/+2
| | | | | | | | | | | | | pass-through cart. Correct syntax to launch e.g. Dizzy The Adventurer is now "mess nes -cart ade -cart2 dizzyadv". Moved Aladdin minicart dumps to a separate softlist (but you can load in -cart2 iNES files from fullpath, if you like) [Fabio Priuli] nes_camerica: simplified emulation of the BF9096 board and fixed emulation of GoldenFive board (used by the Polish Pegasus 5 in 1 cart). [Fabio Priuli] out of whatsnew: this commit completes the recent work about emulating properly the different pass-through NES/Famicom devices and their corresponding mini-carts... there should be no more games requiring non-standard syntax to be launched.
* (MESS) nes: Properly implemented the Bandai Karaoke Studio expansion Fabio Priuli2014-02-191-2/+3
| | | | | | | | slot. The two Senyou Cassettes (Top Hit 20 Vol 1 & Vol 2) have now to be loaded with the following commands "mess nes -cart karaoke -cart2 top20v1" (or top20v2). This is accurate to the hardware, because these expansions had to be manually inserted into the body of the main Karaoke Studio cart before playing. [Fabio Priuli]
* (MESS) nes: Properly implemented the Bandai Datach as a passthru cart. Fabio Priuli2014-02-131-1/+2
| | | | | | | | Datach games have now to be loaded with the following commands "mess nes -cart datach -cart2 gamename" where gamename can be either a shortname from the datach softlist, or a fullpath to the iNES files (or to headerless 256k dump of the Datach minicarts). This is accurate to the hardware, because Datach carts could not be mounted in the main Famicom cartridge slot. [Fabio Priuli]
* (MESS) nes: added support for Multi-Discrete PCB (aka Mapper 28) used Fabio Priuli2014-02-061-0/+1
| | | | by Action 53 - Function 16 - Volume ONE - "Streemerz Bundle" homebrew multicart. [Fabio Priuli]
* (MESS) nes.c: Added support for NROM368 homebrew PCB. [Fabio Priuli] Fabio Priuli2014-02-011-0/+3
| | | | nes.c: Fixed support for BMC-12in1 PCB, based on Cah4e3's research. [Fabio Priuli]
* moved nes_cart from .h to .c (nw) smf-2013-12-111-0/+343
|
* make that last commit use the bios system, since we can. Also mark famitwin ↵ Jonathan Gevaryahu2013-11-151-3/+5
| | | | bios as non-optional since it was an irremovable part of the Sharp twin famicom system (n/w)
* (MESS) nes.c: add RP2C33-01 'older' version FDS bios and fix labels of FDS ↵ Jonathan Gevaryahu2013-11-151-2/+3
| | | | bios roms. [Dead_Body]
* Modernize nes_apu device. (nw) Ivan Vangelista2013-11-051-12/+8
| | | Needs merging with N2A03 cpu core.
* [MESS] a7800.c - Cleanup of address maps, high score maps added [Robert ↵ Scott Stone2013-09-201-0/+5
| | | | | | Tuccitto] [MESS] nes.c - Documented new PAL NES clone called "Golden China TV Game" [kaylee]
* Created new device_video_interface. Right now its sole purpose is to Aaron Giles2013-07-241-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | house a screen tag and to find the screen at startup, providing an m_screen object that can be used. One nice feature is that if there is only one screen and no screen has been specified, it will auto configure to that screen. This removes the need to explicitly specify a screen in the configuration for a large chunk of drivers (though doing so never hurts). A new macro MCFG_VIDEO_SET_SCREEN is provided, though devices are encouraged to define their own that maps there so it is obvious which device is being targeted. The device_video_interface's validation function will error if an invalid screen is specified or if no screen is provided but there are multiple screens present. Updated all devices that currently had an m_screen in them to use the device_video_interface instead. This also has the nice benefit of flagging video-related devices for categorization purposes. It also means all these devices inherit the same screen-finding behaviors. For devices that had interfaces that specified a screen tag, those have been removed and all existing structs updated. Added an optional_device<screen_device> m_screen to the base driver_device. If you name your screen "screen" (as most drivers do), you will have free access to your screen this way. Future updates include: * Updating all devices referencing machine.primary_screen to use the device_video_interface instead * Updating all drivers referencing machine.primary_screen to use the m_screen instead * Removing machine.primary_screen entirely
* Cleanups and version bumpmame0149u1 Miodrag Milanovic2013-07-231-1/+1
|
* (MESS) nes.c: fixed famicom controller regression due to family trainer ↵ Fabio Priuli2013-06-171-26/+26
| | | | addition. nw.
* (MESS) nes.c: added emulation of the FC Family Trainer controller, Fabio Priuli2013-06-161-3/+51
| | | | to be enabled in Expansion Port through the Driver Configuration submenu, and mapped by default like the Power Pad. [Fabio Priuli]
* (MESS) nes.c: added emulation of the NES Power Pad controller, Fabio Priuli2013-06-151-3/+39
| | | | | to be enabled in Controller Port 2 through the Driver Configuration submenu, and mapped by default on TY,FGHJ,BN keys for side A layout and RTYU,FGHJ,VBNM keys for side B. [Fabio Priuli]
* (MESS) nes.c: emulated microphone input for old famicom controller, Fabio Priuli2013-06-151-0/+9
| | | | | | | | | as detected by games (i.e. it only detects voice/no voice, while the actual transmission of your voice to the speakers is not emulated). To use it in games expecting you to blow or shout in the mic, select the "Gamepad (Older Version)" as "P2 Controller" in the Driver Configuration submenu, and press "6" when the game requires it. [Fabio Priuli] input is recognized both by BASIC (peeking at $4016) and by Raid on Bungeling Bay 2P mode, so I think it's correct...
* (MESS) NES input cleanup, part 5 and last (Simplified FC input too, added ↵ Fabio Priuli2013-06-151-27/+30
| | | | | | | | | | Arkanoid FC paddle emulation, fixed P3 & P4 inputs in Jpn games using them). nw. paddle now works in Chase HQ too (the NES one don't because of the different protocol), 3rd & 4th players can enter inputs in Technos games, and it turned out that Lightgun was actually working (I had probably tested with a non-clean compile), so that at last all selectable input devices are finally working :-)
* (MESS) NES input cleanup, part 4 (Simplified NES input reads and fixed ↵ Fabio Priuli2013-06-151-3/+5
| | | | | Arkanoid paddle emulation which has been broken for long time, probably more than 6 years). nw.
* (MESS) famicom: added support for loading/saving BASIC programs from/to Fabio Priuli2013-06-151-3/+17
| | | | | | | | cassette. wav files supported only. [Fabio Priuli] (MESS) Added software list for BASIC programs saved to tape [Anna Wu, UglyJoe, Fabio Priuli] If anyone has more Family BASIC tapes or other cassettes for Famicom games or add-ons (e.g. Bandai Karaoke or Fukutake Study Box) or for some chinese clones (ABM, or Bridge, or any other), please contact us.
* (MESS) NES input cleanup, part 3 (Moved some FC controllers to the Expansion ↵ Fabio Priuli2013-06-141-261/+326
| | | | | | | | port, since they were attached there. This temporarily breaks Lightgun and Multitap in Famicom, but in reality they were never working in Japanese-exclusive games, only in worldwide games who supported NES protocol, so just use the NES driver to have previous functionality until I add support for the FC protocol. Standard pads, keyboards and mj panel work as before). nw.
* (MESS) NES input cleanup, part 2 (Crazy Climber "controller" was just a set ↵ Fabio Priuli2013-06-141-21/+56
| | | | | of sticks to put on the standard controls and it was Japan-only + Famicom supported a single lightgun). nw.
* (MESS) marked Game Boy, Game Boy Color, Game Boy Advance, Game Gear, ↵ Fabio Priuli2013-06-081-7/+7
| | | | | | | | | Intellivision, Lynx, Master System, MegaDrive / Genesis, NES / Famicom, Neo Geo Pocket, Neo Geo Pocket Color, PV-1000, Super Cassette Vision, Super NES / Super Famicom, Wonderswan and Wonderswan Color as supporting save states. PC-Engine supports save states too, but only for HuCard games and not for CDs. Please report issues with save and restore in these systems, if any, to MameTesters. [Fabio Priuli]
* Moved default card config, device inputs and clock off the slot interface so ↵ smf-2013-05-291-2/+2
| | | | they can be specified for all cards [smf]
* (MESS) NES: Switched button arrangement to match left to right order from ↵ Scott Stone2013-04-251-8/+8
| | | | actual gamepad. Mike Tyson's Punchout plays a little more logically now. (nw)
* (MESS) nes.c: major refactoring and improvements of NES/FC cart emulation: ↵ Fabio Priuli2013-04-211-25/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [Fabio Priuli] - converted carts, mappers and pcbs to use slot devices - fixed starting of Famicom, Famicom Twin and Dr. PCJr - fixed handling of "no disk" in FDS so that the system displays Mario and Luigi jumping around as expected - added AY8910 sound to Sunsoft-5B (Gimmick JPN sfx) - added YM2413 to VRC-7 (Lagrange Point OST) - added support for recorded samples to Jaleco sport titles and to Bandai Family Trainer Aerobics Studio, thanks to notes by hap and egoh, and recordings by Pongbashi (samples are needed because these games use a currently undumpable speech chip) - added support for NES-EVENT pcb used by Nintendo World Championship 1990, including dipswitches - added support for Galoob Game Genie real usage (in addition to the codes which Puggsy added to his cheat collections): when you load ggenie, a second cartslot becomes available to load another game attached to the cheat device (e.g. with "mess.exe nes -cart ggenie -cart2 smb") and you can enter the cheat codes as in a real NES - added support for Nantettatte!! Baseball lock-on mechanism, based on the tests performed by naruko on his carts: when you load nantbb, a second cartslot becomes available to load one of the two update minicarts (91 Hen or OB Hen) - improved emulation of Namcot 163, 175 and 340 boards, based on the tests performed by naruko, lidnariq and bootgod on the real hardware - moved Nantettatte!! Baseball minicarts to a separate list (nes_ntbrom.xml) because they cannot be loaded in the NES directly, but only through the nantbb subslot - emulated bus conflict (CPU/PRG) in PCBs documented as having it - partial emulation of open bus, enough to make working the games using it as a sort of protection - fixed crash when loading files using FFE mappers - fixed mirroring in some boards (Sunsoft DCS and UNL-CC-21) and in some games (e.g. Paris Dakar Rally Special and Escape from Atlantis) - fixed a few bugs in Tengen 800032 emulation (mapper 64), promoting Klax, Xybots and Road Runner to work state - fixed Tengen 800037 emulation (mapper 158), promoting US Alien Syndrome to work state - added working emulation of many bootleg pcbs used for pirate conversions from FDS (Ai Senshi Nicol, Doki Doki Panic, Fuuun Shaolin Kyo, Green Beret, Monty no Doki Doki Daidassou, Tobidase Daisakusen, Super Mario Bros Malee 2 / Genius Merio Bros...) - improved emulation of many pirate pcb (BMC-GOLDENCARD-6IN1, KS7013B, KS7012, BMC-GHOSTBUSTERS63IN1, UNL-MALISB, MAXI15 and more...) - improved RacerMate Challenge II emulation, but the game is still not working due to unemulated bicycle controller - added CPU-based IRQ mode in Tengen 800032 emulation (mapper 64), fixing Skulls & Crossbones gfx (but the game is still not working) - fixed many small inaccuracies in the old code, spot during the conversion - added support for most other known pcbs, even if in most cases emulation is only sketchy - reduced the need of fake alt pbcs for boards which only differed by mirroring handling (these are now recognized through the "mirroring" feature) - removed fake wram which was added to a lot of partially documented pcbs and re-added it only where actually present, so to more accurately document what was really in the carts Out of whatsnew: There's still a lot to do (e.g. to clean up the implementation of the pirate pcbs) but I hope that submitting this now I can get some wider testing help so to catch and fix regressions before next release :)
* changed machine().device("maincpu") with m_maincpu in mess tree part (nw) Miodrag Milanovic2013-04-101-1/+1
|
* Fixed nes clones regression (nw) Miodrag Milanovic2013-04-041-0/+2
|
* made ppu nmi also delegate and now inline config (nw) Miodrag Milanovic2013-03-281-4/+4
|