Commit Graph

80 Commits

Author SHA1 Message Date
adelikat c6634273d7 N64 - hook up input for 4 controllers and autofire, still needs to be hooked to the core, and also needs to be added to controller config dialog 2013-05-02 01:54:44 +00:00
goyuken 8b029d9eb1 saturn: controls. fuck boilerplate 2013-05-01 02:53:53 +00:00
goyuken 84b271684b dual gameboy recording mnemonic |P|UDLRsSBA|P|UDLRsSBA| 2013-04-27 15:10:39 +00:00
adelikat e32eaeeb9a More code cleanup 2013-04-16 00:19:31 +00:00
adelikat 7199b64a95 More multiclient refactoring 2013-04-15 02:14:14 +00:00
adelikat 77846acf01 Lua - joypad.set - implement false to force input off, and a string param to serve as inverse 2013-03-23 20:34:25 +00:00
adelikat c01919a376 Mutliclient hookups for dual gb core 2012-12-29 02:30:31 +00:00
adelikat 76c9a68a2d Intellivision - Hook up controllers to the core 2012-12-22 01:56:14 +00:00
adelikat 054f0df3e4 Atari 7800 - basic mnemonics set up (input display and movie rerecording), however these mnemonics will change 2012-12-15 04:28:29 +00:00
adelikat d34368e98d Atari 7800 - hook up input on client side, implement joystick button 2 in controller definition 2012-12-14 02:17:47 +00:00
zeromus a4b442abda unify coreinputcomm and coreoutputcomm. there is a slight chance your console will be messed up until i fix a teeny tiny something, since i didnt test them all, since with more recent cores i dunno what roms are working anyway. let me know if i broke anything. 2012-12-10 00:43:43 +00:00
adelikat 9c8b79be4b Allow Shift + another key to register as Shift and that key separately on Controller input (not hotkey input), this allows the C64 keyboard to use shift as intended 2012-12-09 01:42:47 +00:00
brandman211 a346389c2f -Controller type for GBA.
-Cleanup (adelikat inspired me to always use braces).
2012-12-06 05:19:08 +00:00
adelikat 9ddd3d56a8 C64 - implement Restore key on client side, fixes to the Keyboard virtualpad 2012-11-25 21:49:07 +00:00
goyuken fec546f77a gba: fix cartmem problem i caused that was exposed by recording movies.
inputadapters: finish GBA mnemonic stuff, including power button.  |P|UDLRsSBALR|
mainform: show informative warning when starting recording a GBA movie
2012-11-24 22:14:05 +00:00
goyuken f289ce7525 grumble grumble grumble 2012-11-24 16:14:30 +00:00
goyuken b515b62b3e gba: spend approximately 200 seconds on mnemonic stuff before getting bored 2012-11-20 01:35:28 +00:00
adelikat aca129d5f6 C64 - VirtualPad Keyboard - more progress - also fixed some mnemonic errors 2012-11-19 02:47:57 +00:00
adelikat b9c77106f7 C64 - implement rerecording and input display 2012-11-18 22:16:48 +00:00
adelikat 5df1cd532e C64 - implement rerecording/input display for the 2 controllers (no keyboard yet) 2012-11-18 17:43:02 +00:00
adelikat 94475aa9a7 ColecoHawk - hook up virtualpads 2012-11-18 05:19:05 +00:00
adelikat da804a4272 ColecoHawk - only 1 L and 1 R button 2012-11-18 02:36:30 +00:00
adelikat 823e84592a Coleco - hook up controller 2 2012-11-17 22:38:32 +00:00
adelikat a0281498d3 Coleco - fix mnemonics, hookup up controller 1 autofire 2012-11-17 21:57:39 +00:00
adelikat bb0f409550 NESHawk - support movie recording for disk eject, insert coin 1, 2, FDS disk eject, and FDS Inserting of disks 1-4 2012-11-09 02:41:37 +00:00
adelikat a205158a0f Hook up C64 joysticks on client side (except for mnemonics) 2012-11-08 13:33:30 +00:00
adelikat 68cba7d792 Genesis - implement Reset button on client side (not yet hooked up in core) 2012-11-08 04:33:18 +00:00
adelikat 53520540ea NES - Implement ability to record hard resets 2012-11-06 02:32:33 +00:00
goyuken 927fb7070c sound throttle now respects forced throttle off (user hits fastfoward button, etc) 2012-10-10 17:19:51 +00:00
adelikat 2f8ce5e1d1 SNES - hook up autofire controllers, also probably hooked up player 3 & 4 that were probably not working up to now 2012-09-26 01:20:11 +00:00
adelikat 32ca8fba61 SNES - hook up power cycle to mnemonics for recording & input display, TAStudio - hook up the power button on virtual pad 2012-09-16 17:39:57 +00:00
goyuken 727e441bb4 change gameboy control "Reset" virtual button to "Power" virtual button
some consoles have both "Reset" and "Power" notions, so this is to be more consistent
i'm not sure that i got all references...
2012-09-16 16:25:54 +00:00
goyuken a8fb28f652 finish wiring up reset control for gameboy. i recorded and played back a movie containing a "soft reset", and it worked correctly. 2012-09-15 16:59:21 +00:00
adelikat a075f21af6 Implemented autohold for autofire keys 2012-09-15 13:11:29 +00:00
adelikat ead2d186cf SNES - hook up movie playback, probably, needs a frame counter to use it 2012-09-05 02:24:03 +00:00
zeromus 37e6f68370 bsneshawk step 1 of N - compile libsnes, make bsneshawk core, setup interop, support frameadvance, video, gamepad. games are playable, I think. 2012-09-04 00:20:36 +00:00
adelikat 632127fe0a NES - don't record lag frame status into movies, it is not necessary for TAStudio anymore 2012-09-03 21:38:11 +00:00
phillip.grimsrud 8bc250e7dd 1. Added Atari 2600 to COMMANDS dictionary.
2. Added Atari 2600 case when updating virtual pads.
2012-06-30 01:23:02 +00:00
pasky1382 7ef1151b99 Added a 'Custom Colors' Dialog for the Hex editor tool. 2012-06-10 22:43:43 +00:00
adelikat 059aebec8e ColecoHawk - set up ROM loading (bind .col to Coleco), set up preliminary controller garbage in 85 places for coleco 2012-05-06 00:54:13 +00:00
adelikat c112573c30 Atari - fix recording/playback & input display of 2 players 2012-04-21 18:27:37 +00:00
zeromus 35fbe354c1 add threaded display manager to allow heavy OSD/compositing/filtering to happen on another thread. add a lua layer accessible via GDI+ which can be automatically composited and the simplest possible demo of it. add some filtering infrastructure and a hq2x filter set ported to c# but need to work on a minimal selector gui before its usable. separate OSD from RenderPanel so that gdi+ presentation mode now gets full OSD support. the OSD is now a little uglier because its drawn entirely differently and could use some finetuning 2012-04-16 08:18:41 +00:00
brandman211 f6a353196d -Started refactoring InputConfig.cs as adelikat requested:
--Created CONTROLS constant which contains all of the controls in one dictionary.
--Shrunk DoNES significantly.

TODO:
-Shrink UpdateNES.
-Generalize both functions and apply to NES.
-Have all of the platform specific functions utilize these generalized functions.
-Combine all of the platforms.
2012-03-24 19:45:50 +00:00
peter e310e90d9f Conditionally compile Windows code, make Throttle class portable, and add dummy input/audio implementations for non-Windows
This is (almost, bar some local resource hacks) enough to start the
emulator on Linux/Mono, load a ROM and watch the demo (input and
audio don't work yet).
2012-03-12 04:44:34 +00:00
zeromus c0ace9ce83 add a2600 core stub 2012-03-07 00:40:20 +00:00
zeromus fd6ac896fc general cleanup.. remove a bunch of warnings.. improve log console system a bit.. add new icons for log console window.. remove old demo psx interop system and add new, simpler one, which isnt really tested yet but is way less annoying. 2012-02-24 20:38:35 +00:00
brandman211 91ea63c09e -Made the errorMsg in ImportFile display.
--Moved the command message in ImportText to this.
-Converted ImportVBM to use a MnemonicsGenerator.
--This should work, but I can't test as I still don't know for sure as the import fails and displays "Not a valid VBM platform type."
--I iterated through the buttons using a list and left-shifting. I applied this method to ConvertMMV, which works.

TODO:
-Comment MovieImport.cs.
-Fix the exception that is thrown for Gameboy games.
-Get ImportVBM to actually work, scanning through the input to see if it seems sane.
-Figure out why pressing Pause on GameGear results in a "P" instead of a "p", and whether or not this is a factor in runs syncing.
2012-02-24 04:44:40 +00:00
brandman211 fcd8822a6b -Finished my simplification of InputAdapters for everything but TI-83 (I don't remember how to test it). Saved 183 lines from the last revision, and this number is probably going to grow tremendously after TI-83 is handled.
-Inadvertently fixed the seemingly broken Genesis 3-Button Controller mnemonics...the controllers weren't responding at all before. I guess refactoring and working with simplified code IS worth it. <_<
--That said, this is still really broken:
---Mnemonics don't show up while recording.
---Input goes past the frame length, and it's never labeled finished.
---Doesn't seem to sync at all.
---This exception:
---------------------------
Oh, no, a terrible thing happened!

System.Exception: unhandled opcode at pc=013648
   at BizHawk.Emulation.CPUs.M68000.MC68000.ExecuteCycles(Int32 cycles) in C:\Users\Administrator\Repo\bizhawk\BizHawk.Emulation\CPUs\68000\MC68000.cs:line 147
   at BizHawk.Emulation.Consoles.Sega.Genesis.FrameAdvance(Boolean render) in C:\Users\Administrator\Repo\bizhawk\BizHawk.Emulation\Consoles\Sega\Genesis\Genesis.cs:line 106
   at BizHawk.MultiClient.MainForm.StepRunLoop_Core() in C:\Users\Administrator\Repo\bizhawk\BizHawk.MultiClient\MainForm.cs:line 1676
   at BizHawk.MultiClient.MainForm.ProgramRunLoop() in C:\Users\Administrator\Repo\bizhawk\BizHawk.MultiClient\MainForm.cs:line 346
   at BizHawk.MultiClient.Program.Main(String[] args) in C:\Users\Administrator\Repo\bizhawk\BizHawk.MultiClient\Program.cs:line 47
---------------------------
System.Exception: unhandled opcode at pc=013648

   at BizHawk.Emulation.CPUs.M68000.MC68000.ExecuteCycles(Int32 cycles) in C:\Users\Administrator\Repo\bizhawk\BizHawk.Emulation\CPUs\68000\MC68000.cs:line 147

   at BizHawk.Emulation.Consoles.Sega.Genesis.FrameAdvance(Boolean render) in C:\Users\Administrator\Repo\bizhawk\BizHawk.Emulation\Consoles\Sega\Genesis\Genesis.cs:line 106

   at BizHawk.MultiClient.MainForm.StepRunLoop_Core() in C:\Users\Administrator\Repo\bizhawk\BizHawk.MultiClient\MainForm.cs:line 1676

   at BizHawk.MultiClient.MainForm.ProgramRunLoop() in C:\Users\Administrator\Repo\bizhawk\BizHawk.MultiClient\MainForm.cs:line 346

   at BizHawk.MultiClient.Program.Main(String[] args) in C:\Users\Administrator\Repo\bizhawk\BizHawk.MultiClient\Program.cs:line 47
---------------------------
OK   
---------------------------
--I don't think I broke anything...if anything, I fixed it slightly so that input is at least recognized in some way.
--Question: Is Genesis going to be properly supported by release time? If so, I might hold off a Genesis TAS until this is done. I hate Gens.
-Moved BUTTONS, COMMANDS, and new variable PLAYERS, which indicates how many players are for a given system, to Global.cs.
--If there's a better place for this, please let me know.
--That said, if there are places in the code that refer to the mnemonics of button names of a given system, we should definitely apply these variables for easier modification. Please let me know where these places might be.
-Fixed ImportText(). It now only reads as many controllers as the given system supports.

TODO:
-Merge the TI-83 stuff.
-Mnemonic header.
-Comment!
-Fix the TI-83 mnemonics with the IRCs blessings.
-Port the new mnemonics to the wiki.
-Fix the importers.
--I don't think ImportMMV handles the Pause and Reset commands (Or buttons, I don't even know) covert.
2012-02-20 23:25:26 +00:00
zeromus 60f2b411b6 dont vsync when fastforwarding or unthrottling 2011-09-04 05:18:38 +00:00
zeromus 8c08bc84cb tweak multitrack logic 2011-08-21 04:44:40 +00:00