Commit Graph

691 Commits

Author SHA1 Message Date
andres.delikat 0834c63a43 NES - sound config dialog for toggling sound channels 2012-07-12 23:13:22 +00:00
andres.delikat f5a7dc2191 Lua - implement client.setwindowsize() 2012-07-12 22:20:48 +00:00
andres.delikat 70b5d68ae0 Add hotkey for background input (add on screen message when toggling this feature) 2012-07-12 21:56:59 +00:00
andres.delikat 16b86e70e7 Increase/Decrease Speed hotkeys 2012-07-12 21:39:11 +00:00
goyuken fd7a0b2fe7 change CoreOutputComm to use exact integers to specify VsyncRate. Helps for AV dumping with formats that require exact integer rates (AVI), and for emulators that aren't exactly 50hz/60hz (none yet). 2012-07-11 21:37:35 +00:00
andres.delikat ca9c27113f "Never be asked to save changes" config menu item 2012-07-10 17:22:23 +00:00
brandman211 104511c5b7 -Intellivision.cs' constructor initializes the PC to 0x1000.
-Set up the "official" memory map - see http://wiki.intellivision.us/index.php?title=Memory_Map
--Things I didn't do:
---Accessibility.
---Additional Occupied Memory Ranges.
---Addresses Available to Cartridges
---Initialize any of the byte arrays.
--Not sure which of these I need to do, but clearly the byte arrays have to be initialized somewhere to something and there's a lot of gaps in this memory map.
2012-07-09 05:29:45 +00:00
beirich 36ba018ae0 basic wire-up of Intellivision core 2012-07-08 04:20:53 +00:00
phillip.grimsrud a6ced95e07 1. Fixed tastudio memory leak. This was accomplished by dropping the oldest saved stats after hitting a size limit (1 GB).
2. Changed StopOnEnd to StopOnFrame. This expands the functionality so that you can tell the emulator to run and then stop at a predetermined point.
3. Expanded the functionality of RewindToFrame to handle more cases. Now you can go back or even forward to a frame and it handles the execution and greenzone appropriately.
4. Due to the change in structure some code was changed to check the index of the first and last saved states in the greenzone rather than relying on the size of the saved state list.
5. Changed the list of saved states in the movie log from a list of byte[] to a list of structures (the structure has an int for the index and byte[] for the state).
6. Saved an init state in the movie log. This is used to go back to the beginning if the beginning of the movie is no longer in the list of saved states.
7. Expanded the AddState and SetFrameAt logic in the movie log to account for the fact that the size of the saved state list is now capped.
8. Fixed a bug in the log interpretation for SMS.
9. Fixed a bug in the sms virtual controller, buttons 1 and 2 were hooked to the wrong objects.
10. Fixed the tastudio listview to show lag as pink.
2012-06-18 01:36:38 +00:00
adelikat 16d0afa607 update version to 1.0.5 interim. 2012-06-17 00:05:50 +00:00
goyuken 42c9a78047 Add FFmpegWriterForm, dialog choosing what ffmpeg format to write to
Fix some error handling and cleanup
2012-06-16 16:51:47 +00:00
goyuken f69fc08012 Redesign a/v writer selection. A simple dialog is shown with a list of all IVideoWriter possibilities 2012-06-13 19:50:50 +00:00
goyuken c2e88829f6 Add NutWriter, which writes uncompressed audio and video to the crappy Nut container. Will be used for piping audio and video at the same time to ffmpeg once it's been tested some more. 2012-06-11 23:24:57 +00:00
zeromus 5b86a9c375 emergency measures to return display thread stuff to the way it was before (i think? i hope?) as a reasonable baseline when no video pipeline fanciness is called for (no lua overlay, for instance) so that this is useful for gaming again. also add a toggle for the entire HUD system which bypasses some extra work for people stuck in sysdrawing mode who need more speed. 2012-06-10 02:19:36 +00:00
goyuken 32d163e409 add FFmpegWriter, pipes data to ffmpeg for encoding. Only handles video directly; audio is saved as .wav file separately (via WaveWriterV).
ffmpeg parameters cannot be set at the moment,  defaults to x264 rgb lossless in mkv
2012-06-10 00:53:19 +00:00
phillip.grimsrud cb4c45eb70 1. Upgraded insert and delete functions in tastudio to support multiple selection.
2. Fixed issues with the light blue current frame pointer in tastudio
3. Removed a totally useless index that was being kept seperately in the movie log.
4. Moved the tastudio update after the check to see if the rest of the saved state list is valid.
5. Changed some function/variable names related to the movie log for clarity.
2012-06-07 04:47:54 +00:00
adelikat 93b266838c Add drag & drop for lua and luases files to main window. Allow multiple lua script drop to console and main window 2012-06-07 03:41:45 +00:00
phillip.grimsrud c7db5fd543 1. Fixed an issue that prevented going into the movie finished state properly.
2. Relegated a memory leak to tastudio.
2012-06-03 04:04:13 +00:00
adelikat 1275744b14 Disabling unchecked greenzoning for now 2012-06-03 01:18:13 +00:00
phillip.grimsrud d6479e5613 These changes are TAStudio related.
1. Added a list of save states to the movie log.
2. Added corresponding support functions for the save states.
3. Added double click to the list view to load a previous frame.
4. Added a context menu to the list view with insert and delete.
5. Fixed some issues with the green zone of valid state history.
6. Fixed an input bug that I had unwittingly created, as well as issues with the nes log format.
2012-06-01 05:49:26 +00:00
adelikat 986774f5ee Multiclient menu - moved many toggles from the GUI to the Enable submenu. Also fixed a taborder mistake in the hotkey config dialog 2012-05-31 01:51:47 +00:00
adelikat 9d5e4d9451 Fix so that rewind only sends bizhawk into play mode if it was in record mode previously 2012-05-30 00:52:08 +00:00
phillip.grimsrud c813cd853b Fixed a rewind buffer problem. A recent hack started the rewind buffer by saving the state after frame 0 to the start of the rewind buffer. This fix saves the state to LastState at the end of the rom load. This way the rewind buffer starts with a diff between the state after rom load and the state after frame 0. 2012-05-28 04:59:22 +00:00
adelikat 520dfcb37b Revert SetReadOnly() function 2012-05-28 01:29:43 +00:00
phillip.grimsrud fc0ec832ae These changes are for TAStudio upgrades. If I've broken other stuff please yell at me.
1. Hooked up Fast Forward, Fast Forward to End
2. Made a placeholder for Turbo Fast Forward.
3. Fixed rewind to not stomp on the previous frame with new input.
4. Fixed rewind to stop at the beginning of the movie instead of freaking out.
5. TAStudio now shows data from the most recent frame.
6. CommitFrame is called even if not recording so played back frames also show up in TAStudio.
7. Play mode only stops at the end of the movie if you tell it to. Your emulator normally continues to play with no input after the end of the movie.
8. TAStudio is now updated after a rewind (even though the rewind doesn't play a new frame).
9. Split the tools update into before and after updates.
10. Going into read-only mode adjusts the movie mode.
11. Implemented New, Open, Save, and Save As for TAStudio.
12. Fixed an issue where frames past the end of the log would default to the input from the last frame of the log.
13. Fixed a problem where you couldn't rewind to frame 0.
14. Fixed a scrolling issue in the TAStudio list view.
15. Fixed an issue with the TAStudio virtual NES controller not matching up with the log.
16. Fixed an issue where the NES reset button would get held in when rewinding.
17. Added/Modified a couple of button graphics.
2012-05-28 00:44:27 +00:00
adelikat 147caec758 GameboyHawk - Skip BIOS menu option 2012-05-19 15:17:32 +00:00
adelikat b08d338761 Gameboy - make debugger useful by connecting it to the multiclient events 2012-05-19 13:33:45 +00:00
zeromus 42715fdca7 rehabilitate the GB core: fix videoprovider and input system 2012-05-18 18:28:12 +00:00
adelikat 9c5f56308b Gameboy - fix the assigning of the active controller/autofire controller when loading a gameboy core (fixes crash when attempting to run a gameboy game) 2012-05-16 03:14:50 +00:00
goyuken 78a0494708 add WavWriter, writes standard WAV files for capture. For the moment, only available as its own IVideoWriter (that discards all video frames). Choose by selecting .wav format in the start avi capture file select dialog. 2012-05-11 17:00:44 +00:00
goyuken a313d3910d Add sound output to sound card while dumping is occurring. Uses a proxy ISoundProvider (DualSound.cs) to guarantee emulation sound core and dumping routine are unaffected, while sending "best effort" sound to system output. Doesn't sound great, but simple and functional. 2012-05-09 20:21:23 +00:00
goyuken 1980011952 Add user interface to select compression options (level and number of threads) for JMD dumper. 2012-05-08 22:19:12 +00:00
goyuken 037870eb43 Select between JMD and AVI at save file dialog. 2012-05-07 23:18:08 +00:00
goyuken ab6f9b175f Add JMDWriter.cs, dumps to JMD format. No 2G limit, and single segment even across multiple resolutions. Can use a bunch of cores, but still not terribly fast. Hasn't been hooked in to the UI yet; for testing, change MainForm.cs:2669 2012-05-07 21:45:25 +00:00
goyuken cdd82cbb06 Rename VideoWriter IVideoWriter per zeromus 2012-05-06 22:18:16 +00:00
goyuken 02ca0e82e9 Create new interface VideoWriter, which AviWriter inherits from. Sets up for other video dumping systems. 2012-05-06 22:08:47 +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 54d1c873df Fix when guitext gets cleared, reduces most of the flickering and inconsistencies with ram watch on screen and lua gui.text, fix punchoutstats lua script 2012-04-30 01:14:23 +00:00
adelikat 3d10431a2b Atari - implement console switches (as menu items) 2012-04-29 02:48:33 +00:00
adelikat d62b2d98e1 Hotkeys - add Open TAStudio hotkey 2012-04-24 00:11:58 +00:00
adelikat 2aeedf074e Fix Load/Save Named State to default to the correct savestate path rather than the most recently used path. Fix so that these functions can not be accessed during Null emulator via hotkey 2012-04-22 13:56:34 +00:00
adelikat 27239847c0 Fix so that the Save Config menu item does not close tool dialogs 2012-04-21 22:46:48 +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
beirich b3e79aa06f Fix input chain stuff so that genesis roms can be loaded without crashing client 2012-04-14 16:02:45 +00:00
Rolanmen1 2b9483f68f Lua Scripts Don't Disable If You Record A New Movie Nor When You Reset The Game. However, It Does When You Load A Different Rom. 2012-04-02 19:50:26 +00:00
adelikat a18b700664 Bigger hammer fix for drag & drop of movie files 2012-04-02 00:47:52 +00:00
adelikat 7e9085b46d Fix drag & drop of movie files 2012-03-31 15:34:31 +00:00
adelikat 7b0599bfb5 Update version numbers to 1.0.4 (interim) and remove erroneous release notes file. 2012-03-31 01:28:45 +00:00
adelikat ab2e804300 Change default movie extension to .bkm 2012-03-31 00:38:39 +00:00
andres.delikat 724fe704fc Atari - hook up console select and reset buttons to config file. Still TODO: add to input config dialog, modify mnemonics 2012-03-30 16:40:52 +00:00
adelikat 00d25b2355 Fix so main form text field displayed Atari 2600 on atari games. Remove "Hawk" that I added earlier. 2012-03-30 12:26:36 +00:00
adelikat f91becbef8 Show hawk name on main window instead of console. 2012-03-28 23:11:43 +00:00
Rolanmen1 f7f4e64985 Joypad.Get recieves a numeric parameter to return only the specified controller. Is there other way to know of what controller is a button other than the first 2 characters of the string? 2012-03-28 08:35:43 +00:00
adelikat 9c40367fa8 Increase/Decrease Window Size hotkeys (mapped to Alt+Up/Alt+Down by default) 2012-03-28 02:32:05 +00:00
adelikat c88a6b4b7a Lua - savestate.registersave/load - pass state name as a string (ex:"quicksave0"). Put event after the save/load not before. Event no longer fires on non-saveslot events 2012-03-28 01:03:50 +00:00
andres.delikat 655af69326 Lua - savestate.registerload() implemented 2012-03-27 21:17:20 +00:00
andres.delikat 0330e1f742 Lua - implement savestate.registersave() 2012-03-27 21:09:36 +00:00
adelikat c5334cc639 gui.text() - fix so that screen is clearned at the beginning of each frame, so that the text stays drawn when paused 2012-03-26 03:01:39 +00:00
zeromus f694959da9 cleanup some transient junk in mainform, fix nametable viewer screenshots garbage pixels off by one bug, add shortcut buttons for common display area sizes (this last part was tricky since the nes graphics control dialog has a feature which prevents its size from changing in visual studio) 2012-03-25 08:52:52 +00:00
Rolanmen1 e9e988a83e When Loading An Script With An Error, BizHawk Won't Crash. For Some Reason I Couldn't Show The Script Error In The OutputBox. 2012-03-24 21:55:37 +00:00
zeromus e7eb6d8dcd fix input.get 2012-03-24 18:39:55 +00:00
adelikat 96fc783107 Lua - implement input.get() 2012-03-24 15:55:22 +00:00
adelikat 8714b6da75 Small amount of code cleanup - remove unnecessary code in mainform load function, move function to a better file 2012-03-24 12:20:21 +00:00
zeromus 5f39ba5bbd add emu.yield, which when used allows a script to run while emulation is paused and interact with the gui/main window in realtime 2012-03-23 23:03:39 +00:00
zeromus 0372969f13 change lua to use lua coroutines for multiple scripts instead of .net threads 2012-03-23 18:24:29 +00:00
adelikat 2e5ec4fdcb Fix bugs in input config regarding atari controllers, fix auto-fire controllers for atari (both controllers) 2012-03-23 02:15:58 +00:00
zeromus fa25305d67 atari-add player 2 controls? 2012-03-22 06:33:28 +00:00
adelikat 44daaa0841 Lua - Implement savestate.save 2012-03-18 18:24:24 +00:00
adelikat c3cb5e0b72 Update version number, note that the previosu commit, r1983 marks the start of version 1.0.3 2012-03-18 17:22:21 +00:00
zeromus 42f16e95ac dont use so much cpu while paused and whatnot 2012-03-18 17:11:59 +00:00
zeromus efd5bcaa21 context menu screenshot -> clipboard 2012-03-18 04:08:05 +00:00
adelikat 6072d2d8de Open ROM dialog - better organization of interim vs release 2012-03-18 00:05:35 +00:00
zeromus f7d0852741 build luainterface differently. fix lua poop? 2012-03-18 00:05:06 +00:00
adelikat e404dea408 lock down gameboy and atari to interim build only 2012-03-18 00:00:47 +00:00
zeromus d0354fd1fe fix lua poop 2012-03-17 23:40:30 +00:00
andres.delikat c55e863b15 TASEdit - fix frame advance button 2012-03-16 15:27:45 +00:00
zeromus 219df85492 multiclient-sync nes's bogus soundOn hack at the moment when a nes core is launched, to avoid situation where we can't enjoy the bogus and likely buggy speedhack unless we fiddle with the sound options to refresh them 2012-03-15 19:16:43 +00:00
zeromus 3c267db54c add reset button to atari 2600 and add .a26 to multiclient filetypes list 2012-03-14 21:35:07 +00:00
brandman211 e71763ba81 Added file types to the Import Movies dialog. 2012-03-14 20:46:59 +00:00
Rolanmen1 4a3544a5a7 Random Crashes When Using Lua Scripts Fixed 2012-03-13 21:21:21 +00:00
Rolanmen1 04c8e8d7a3 Skip Lag Frame When Frame Advancing Has Been Implemented 2012-03-13 21:19:36 +00:00
adelikat e0e95ee8ea PCE BG Viewer - implemented auto-load and save window position options 2012-03-13 02:41:10 +00:00
taotao54321 287c5c61f8 PCE BG Viewer:
Added a dropdown box to select VDC1/VDC2.
  Now it is automatically updated in 3fps. (this is just a makeshift. PCE core should provide callbacks)
2012-03-12 06:27:34 +00:00
taotao54321 54f89fca9f Added PCE BG Viewer (interim) 2012-03-12 05:19:59 +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
peter 1d111ce0ff Use Path.Combine where appropriate 2012-03-12 04:44:26 +00:00
taotao54321 a595e367db Added SMS specific menu: Graphics Settings
PCE Graphics Settings dialog bugfix
2012-03-11 17:08:25 +00:00
taotao54321 2f9a5212bc Added BG/OBJ display settings for SMS (not accessible yet) 2012-03-11 16:15:20 +00:00
taotao54321 9d72bf0c7c Added PCE specific menu: Graphics Settings 2012-03-11 15:12:48 +00:00
taotao54321 575c44f470 Now setrenderplanes() works also for SuperGrafx. 2012-03-11 09:51:23 +00:00
taotao54321 30b0dc6780 PCE: added settings to show/hide BG/OBJ for TurboGrafx (not for SuperGrafx)
Now setrenderplanes() works for TurboGrafx (not for SuperGrafx)
2012-03-11 06:50:46 +00:00
adelikat 5195453229 Update versioning stuff and about box, and set interim flag back (I seem to keep checking that in on accident). This marks the beginning of 1.0.2. 2012-03-09 23:33:56 +00:00
taotao54321 7613d51ea2 Bugfix for log console.
Console type should not be changed by user when console is shown.
2012-03-09 21:36:55 +00:00
taotao54321 8cbe59cfa8 Fixed the behavior related to closing LogWindow.
If you close LogWindow manually, Config.ShowLogWindow becomes false.
If you close the emulator window, Config.ShowLogWindow does not change.
2012-03-09 21:20:02 +00:00
taotao54321 386d9b5f71 Now LogWindow should save the settings correctly 2012-03-09 20:37:43 +00:00
taotao54321 83447d2d71 Now LuaConsole should save the settings correctly. 2012-03-09 20:12:57 +00:00
taotao54321 ecf9e6efc0 Now NESNameTableViewer, NESPPU, NESDebugger, Cheats, TI83KeyPad, TAStudio should save the settings correctly. 2012-03-09 20:10:01 +00:00
taotao54321 7779326535 Now Ram Search and Ram Watch remember the window position correctly 2012-03-09 19:32:43 +00:00
adelikat 4cfceab969 Add screenshot -> clipboard to Ctrl+C hotkey, and add message on screen 2012-03-09 17:31:37 +00:00
adelikat baf189b464 Movie Import dialog - combine .mc2 and .mcm into a Mednafen/PCEjin row instead of seperately (both .mc2 and .mcm have been used at some point in both emulators) 2012-03-09 16:31:14 +00:00
taotao54321 e0aa4b15da Added *.fcm and *.mcm to the filter of "Import Movie" dialog.
And some typo fix.
2012-03-09 12:10:41 +00:00
adelikat add74942f7 Stop and start sound before showing the load named state dialog. Fixes reported 'sound jitter' when using the Loadstate As hotkey. 2012-03-08 12:37:40 +00:00
Rolanmen1 f6d558d4b4 Skipping Lag Frames While Frame Advancing Has Been Implemented 2012-03-07 03:58:54 +00:00
zeromus c0ace9ce83 add a2600 core stub 2012-03-07 00:40:20 +00:00
pjgat09 e3ba08fefd Implemented the GMV importer. An error is returned for 6 button controllers, and third player input is currently thrown away. 2012-03-05 22:45:52 +00:00
offspring131313 099cf590b6 Can now make Animated Gifs Huzzah 2012-03-04 20:37:49 +00:00
adelikat 196ce3de45 Start an animated gif config dialog 2012-03-04 19:24:10 +00:00
offspring131313 357f6bff83 Just remembered that there was an issue with creating directories. *FIXED* 2012-03-04 19:07:52 +00:00
offspring131313 48266e670d Added a function for making Animated Gifs. No UI has been implemented to allow a user to use this functionality, but there is commented out code that I used to test it in MainForm.TakeScreenShot().
Instructions on how to use is in comments.
2012-03-04 19:02:28 +00:00
zeromus 263773cf8d multiclient-refine screenshot code, add screenshot->clipboard menuitem 2012-03-04 01:30:30 +00:00
adelikat 63b6004293 set back to interim build 2012-03-03 23:58:13 +00:00
zeromus 2d11f91d16 make pce cd bios use path configuration 2012-03-03 21:51:20 +00:00
adelikat f415bff02e --release version 1.0.0!--
update release date on about box, add forums link, change link for online help
2012-03-03 20:49:44 +00:00
adelikat ff6b6d6677 Open FIle dialog - reorder valid rom files, put genesis and gb as "experimental" and in their own section 2012-03-03 20:17:22 +00:00
adelikat 5d44836c92 File -> MOvie -> Import movies menu item 2012-03-03 20:14:20 +00:00
adelikat e3b3879954 FIxed Get/Set mneomnics to not break on null emulator, refactored the drag and drop for movies to allow the user to continue if they decline to open a rom from the open rom pop up 2012-03-03 18:24:34 +00:00
adelikat 3bfe716952 Fix drag and drop importing so it doesn't crash during null emulator. Also fixed the movie sram clearing function to not crash on null emulator. 2012-03-03 18:11:07 +00:00
zeromus f801d04a46 now remove traces of psx from the current project, so it doesnt confuse any users 2012-02-24 20:45:27 +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 e40ca4c18d -ImportFile now has access to errorMsg, which will show a message box and not play the movie when assigned, and warningMsg, which will simply add a message to RenderPanel and move on as usual.
-Made it so that any of the exceptions thrown from the Import* functions get converted into a string and stored in errorMsg. Now I can investigate what's wrong with ImportFCM.
2012-02-24 07:48:06 +00:00
brandman211 145830d5a4 -Began working on the importer.
--Created ImportFile to decide what function to use for each filetype.
---It currently automatically writes to a .TAS file, but that option will eventually only be applied when specified in the GUI, hopefully completely external from this class.
--Made IsValidMovieExtension work.
--Created LoadText to do the majority of the work that both .FM2 and .MC2 need to be done.
--.MC2 seems to work perfectly, not that it was a hard conversion!
--.FM2 seems to convert most headers correct, except for subtitles, which replaces the beginning portions of each subtitle's text with 0 0 120 4294967295. Not sure what that's about, though this sure feels like deja vu...
--I still need to switch around the order of the buttons the frames are added, but I need to find out what way I can do this without reinventing the wheel.
-Added the FixMnemonic function to Movie.cs. It currently does nothing, but my goal is to have it correct the mnemonic for all frames in a movie file based on the position of the characters.
--As of right now, ImportFile uses this.
-MainForm.IsValidMovieExtension only checks whether or not its .TAS or not now.

TODO:
-Fix the FM2 subtitles.
-Shift around the FM2 buttons.
--After completed, test a .FM2 file that should sync and see if it works, with and without FixMnemonic being used.
-Make FixMnemonic actually do something.
-Refactor code? I originally thought it'd be best to treat Movie.LoadText just like any other importer, but I think at this point it might just be best to keep these things completely separate.
-Consider the possibility of working with the binary file importers.
--Yes adelikat, I am somewhat interested, especially considering how useful it would be to have a working .FCM importer so I can compare old runs when TASing. I already was hoping to learn about .VBM and .SMV for my ButtonCount.lua script. By the way, might this be bundled with bizhawk as it is with FCEUX 2.1.6? :)
2012-02-15 06:54:09 +00:00
andres.delikat ff5c9a2799 refactor movie convert into movie import. Currently this breaks movie conversion, as the main convert function now needs implementation 2012-02-15 00:43:21 +00:00
brandman211 a38afd4fb2 -Fixed NES movie mnemonics.
--.FM2 is no longer a valid movie extension, so it is no longer counted as such in IsValidMovieExtension.
-Reused the code from PCE controller setting for NES.
-Seem to support 4 controllers for the NES now.
-General code cleanups.

TODO:
-Input from the 3rd and 4th controllers doesn't seem to be polled properly. Figure out what's wrong here.
-The copypasta from PCE to NES could probably be made into one function. The same could be said about many other portions of this code...DRY.
-Now that the mnemonics are fixed, I will have to write a proper converter for FM2.
--Once this is done, I will try the same for PCE, even if it can currently run natively.
---Once this is done, IsValidMovieExtension might as well be removed in favor of only accepting .TAS files and converting everything else.
2012-02-14 04:28:47 +00:00
andres.delikat 8e241067e6 Lua - hook up savestate library and implement saveslot() and loadslot() methods 2012-02-03 12:18:27 +00:00
kylethomson 363b913e52 2012-01-29 03:32:18 +00:00
kylethomson ca1114311c Kill the lua thread as part of closing. 2012-01-29 03:22:05 +00:00
andres.delikat 5492a9fd19 Lua - gui.text() finished 2012-01-28 23:26:10 +00:00
andres.delikat 2e0ac111ab Proper checking if lua is running when doing thread waiting/set 2012-01-28 22:00:51 +00:00
andres.delikat 41708a8579 Lua - move threading code into the frame loops, now emu.frameadvance works per frame not per emulator loop 2012-01-28 21:43:55 +00:00
andres.delikat 5c2587ecfb Make last commit compile 2012-01-23 00:38:28 +00:00
kylethomson 588eed4474 Try again. 2012-01-23 00:20:23 +00:00
kylethomson a36005e8fc Fixed typo. 2012-01-23 00:18:23 +00:00
andres.delikat 7ac7f335f9 send FromCuePath a default CueBinPref object to make it compile. Todo: feed it a correct value?? 2012-01-22 23:56:49 +00:00
kylethomson 16ec704e41 Added Frameadvance with threading. Can't test, because CueFromPath is broken. 2012-01-22 23:44:53 +00:00
andres.delikat defbe971c4 Lua - open/close rom, open tool dialogs, fix memory_readbyte to read from a selected memory domain instead of hardcoded main memory (with main memory as the default), small fix ups to lua console 2012-01-22 22:42:40 +00:00
andres.delikat 78cc4d5cae Lua - started a client library for functions that control the multiclient. Added client.openramwatch() as a proof of concept. 2012-01-22 22:20:09 +00:00
andres.delikat 47f68a611b Lua - fix typo problem that caused exception throwing in last commit, implemented emu.pause, emu.unpause, emu.togglepause 2012-01-21 20:20:06 +00:00
andres.delikat 955cee21b6 Lua console - hook up lua file loading! Lua library - Added a console library with an implemented console.output(), registered all lua libraries, implemented movie.stop, movie.rerecords, movie.mode 2012-01-21 20:05:53 +00:00
andres.delikat d6a57e08c1 Toolbox - reload icons on rom open/close so that core dependent tools update. 2012-01-10 02:11:17 +00:00
andres.delikat c871eedbbc Debugger icon, add to gameboy debugger menu item, add gameboy debugger to toolbox (conditional on gb emulation) 2012-01-10 02:02:11 +00:00
andres.delikat ee440f140f Lua Console - hook up autoload, fix hotkey and toolbox to open lua console (not the old lua window dialog). Add TAStudio to the toolbox dialog. 2012-01-10 01:30:17 +00:00
andres.delikat 422e9c6daa Gameboy - fix ROM loading, and implement memory domains (WRAM banks, VRAM, HRAM, OAM) 2011-12-27 02:10:07 +00:00
andres.delikat b2748b7836 Genesis - hook up lag counter (shows all frames as lag currently), and hook core up to input config dialog (1 controller only currently) 2011-12-24 01:59:51 +00:00
beirich a95957dcf6 Add option for auto-savestates 2011-10-15 23:17:15 +00:00
beirich e801025d0f Fix some file extension stuff in Open Rom dialog; add .GEN extension 2011-10-14 03:40:34 +00:00
beirich 8fb8a35317 Genesis core revive! Get it back to where loading a genesis rom doesnt crash everything immediately 2011-10-01 17:06:25 +00:00
andres.delikat 2418947b69 Add "Toggle Menu" hotkey 2011-10-01 03:43:37 +00:00
beirich f3dc6068ce delete extra/external 68k core 2011-09-27 02:46:23 +00:00
andres.delikat b56f1ae062 on second thought, don't toggle the global config option on show/hide menu. Also make it a function in mainform 2011-09-24 23:12:43 +00:00
andres.delikat 9db06ca408 Add a menu option to show menu in fullscreen mode. Add a context menu item to show/hide menu. 2011-09-24 23:00:59 +00:00
zeromus 2f25237548 nes-fix rom status icon 2011-09-24 20:38:48 +00:00
andres.delikat 6bbab41b0c PCE - Implement PCECD system id in core and in game info. Also set cancel property of LogWindow winform 2011-09-24 17:05:34 +00:00
andres.delikat 871ba80a76 Make Save Named State derive the name by the same logic as slot 0 would (using game name and possibly movie name) 2011-09-24 16:25:16 +00:00
andres.delikat f06c4e0091 Don't save the frame buffer into savestates if the core is NES since it saves this data itself anyway 2011-09-24 16:19:38 +00:00
andres.delikat edb40f4087 Movies - fix bug where rerecord count value was getting added as a comment on load 2011-09-24 16:09:40 +00:00
zeromus 6e67055b16 oops 2011-09-21 05:48:57 +00:00
zeromus 6a570c89fc nes-fix a little bug in MMC2 and support MMC4 while i am at it 2011-09-21 05:47:41 +00:00
andres.delikat 80d01b6512 Add GUI menu item for toggling the log window as console option, and move said option to the config file 2011-09-21 00:48:40 +00:00
beirich f9d7ff62f4 pce-cd: support arcade card, fix cd-audio playback bug
add new emulation options to gui for SMS and PCE/CD
2011-09-19 00:39:28 +00:00
andres.delikat 6d9d77afbc autoload last saveslot menu option 2011-09-17 00:25:34 +00:00
andres.delikat b587ecffd9 move saveslot to config 2011-09-17 00:04:50 +00:00
zeromus e68acda91d dont crash throttling nullemulator 2011-09-16 00:40:33 +00:00
beirich 7a272192fb Add version IDs to the other working cores
Add toggle for saving screenshot with savestate. Update loadstate code to not die when encountering a state without a screenshot
2011-09-15 23:32:21 +00:00
beirich f7109d5f17 fix a stupid bug in pce-cd causing irqs to not be released 2011-09-15 05:10:23 +00:00
zeromus 8ee8711b1a client saves framebuffer into text states 2011-09-11 21:08:41 +00:00
andres.delikat 95c4e658ac Make interim flag (set to true currently) that flips a lot of settings all at once (such as disabling unfinished dialogs, setting the mainform text, and the about box (lol)) 2011-09-11 00:11:46 +00:00
beirich e67ff446da Fix new GameInfo to not default to in-database, special handling for 'null' games 2011-09-05 01:21:59 +00:00
zeromus 60f2b411b6 dont vsync when fastforwarding or unthrottling 2011-09-04 05:18:38 +00:00
andres.delikat 35d0ad1b31 NES - implement Clip Left & Right sides option 2011-09-04 01:58:16 +00:00
andres.delikat 721a514d26 NES Graphics Config - Ability to set the first and last scanlines. NES Core - refactor MyVideoProvider to accomodate new settings. Set to Top 8, Bottom 231 by default. 2011-09-04 01:12:12 +00:00
andres.delikat a84f881c5c Movies - Remove UserMovie and change all references to it to Global.MovieSession.Movie, fix error in CheckTime Line logic, read-only savestates should now work 2011-09-03 18:07:30 +00:00
beirich afaf5879f6 Improve CD-Audio w/ volume/fade support; put error messages in client when invalid system card selected 2011-08-30 04:02:52 +00:00
andres.delikat 4ef00921e9 Autofire Config - Add flag for the "Take lag frames into account" feature, true by default 2011-08-29 22:25:40 +00:00
andres.delikat aba919874d Autofire - take lag frames into account 2011-08-29 03:28:34 +00:00
zeromus 27136932c3 throttle diagnostics 2011-08-27 18:09:54 +00:00
andres.delikat 31c19e5043 Disable NES Debugger menu item, and remove a commented out debug line I left by accident 2011-08-27 16:30:59 +00:00
zeromus 9e97379d45 oops 2011-08-27 02:45:02 +00:00
zeromus dacc65eb0d 2010 cleanup 2011-08-27 02:31:43 +00:00
andres.delikat 0536a04f59 Update Status Bar save slots on LoadRom() 2011-08-26 23:54:15 +00:00
zeromus ce4837b326 cleanup some icon related things?? 2011-08-21 06:07:38 +00:00
zeromus 8c08bc84cb tweak multitrack logic 2011-08-21 04:44:40 +00:00
zeromus 9418dff3b2 refine direct3d missing error handling 2011-08-21 01:07:58 +00:00
andres.delikat 276c759d88 Fixed Loadstate stream issues, rerecording is now possible again 2011-08-20 19:27:00 +00:00
andres.delikat decd3b3071 oops, This code was committed unintentionally 2011-08-19 01:36:41 +00:00
andres.delikat 668a90fdc6 On SoftReset() reset core frame counter if no movie is active 2011-08-19 01:05:30 +00:00
kylethomson 2243c7dcad Fixed Multitrack-load crash.
Also, read-only can't be toggled while no movie active. 
Same for multitrack.
2011-08-17 02:06:50 +00:00
beirich 0a5157d9a6 Extremely preliminary TurboCD support 2011-08-14 18:20:13 +00:00
andres.delikat 124da117b8 Add default constructor to GameInfo to avoid null reference crashes, right click menu during null emulator now no longer crashes (and probably a number of other situations). Added BizHawk back to the Main form text property instead of 0 2011-08-10 23:50:01 +00:00
zeromus 5bf7b33f4a fix crash relating to null AutofireNullControls 2011-08-10 04:31:07 +00:00
andres.delikat 034b2e6e68 Autofire config dialog 2011-08-09 23:27:47 +00:00
andres.delikat cde05919ad Refactor autofire into an autofire controller. Added On & Off values that can be used to create any combination of On/Off patterns, hooked them to Global.Config values 2011-08-09 22:13:57 +00:00
andres.delikat 8fa630c0fa Autofire UI for PCE, GG, GB 2011-08-09 02:40:22 +00:00
andres.delikat 63b1f9b93a Input Config - autofire for SMS/GG/SG, disable autofire pulldown item for TI83 2011-08-09 02:16:46 +00:00
andres.delikat 4cd457ada6 Hook up autofire nes controls to the input config dialog 2011-08-09 01:38:51 +00:00
andres.delikat 9b2ba5c85c Basic implementation of Global.ActiveController, uses an ORAdapter to OR against Active Controller. Still TODO: setting up autofire controllers for platforms and a UI in the Controller Config 2011-08-09 00:51:46 +00:00
andres.delikat 0d01af5c7b Refactor autofire, remove the autofire adaptor. Added an autofire bool to IController and implemented it in the Controller object. Setting to true will turn the controller buttons into autofire buttons 2011-08-08 23:35:13 +00:00
zeromus 1f541be6df disc: cue+mp3/mpc/flac decoding 2011-08-08 01:48:31 +00:00
andres.delikat d92c27f89d Autofire Input Adaptor, currently no UI for it 2011-08-07 23:26:06 +00:00
andres.delikat fd36356536 Mainform Status Label - add a Cheats status button. Displays if there are active cheats, clicking it opens the cheat window 2011-08-07 02:12:41 +00:00
andres.delikat 6c252d08fa Fix so that cheat list isn't cleared after loading a .cht file automatically in mainform. Add a destructor to the Cheat Object that clears the corresponding memory pulse. Make a Clear() function on CheatList that clears the MemoryPulse, Cheat Window - Disable All Cheats clears the memory pulse even those not in the CheatList 2011-08-07 01:16:55 +00:00