Commit Graph

1650 Commits

Author SHA1 Message Date
brandman211 da65f8bdd4 -Merged Atari.
-Line count: 583.

TODO: The one I really didn't want to deal with...Gameboy. Why did you have to make this a NESControllerTemplate instead of a GameboyControllerTemplate[]?
2012-03-25 07:00:21 +00:00
brandman211 bc1804dcdb -Made it so that the right controllers use the default settings.
-Merged Genesis.
--This was completely broken beforehand.
---Update updated PCE.
---It had 8 joypads instead of 1.
-Line count: 661.

Note: Atari Auto 2 throws an exception.
2012-03-25 06:42:31 +00:00
brandman211 b28cfca204 -Merged TI-83.
--As it'd be obnoxious to make CONTROLS a string, object dictionary and have casts all over the place, I just made a TI83Controls string array to match CONTROLS["TI-83"].
--Positioned the fields as well as I could.
--The config for ( and ) were switched. Fixed. Yet another example of redundant code failing! :)
-Line count: 741.
2012-03-25 06:05:13 +00:00
brandman211 5e126bf04f -Made the last two TI-83 buttons visible in the Config by increasing the height from 556 to 580.
-Started merging TI-83 to Do:
--This is going to be difficult because the field names are not the same as the label names, meaning that I'm going to have to use a dictionary for TI-83, if not for all of the controls.
--I have to create a formula that calculates the proper row / column for a given field to be placed. Sounds like fun.
2012-03-25 02:36:20 +00:00
brandman211 a07165cffd -"PC Engine / SGX" -> "PC Engine / SuperGrafx".
-Line count: 978.
2012-03-25 02:11:26 +00:00
brandman211 4f2ebdfbd4 -Fixed InputConfig_Load...forgot that the switch syntax from before acts like an OR statement; I thought it meant "don't do anything".
-PCE.
2012-03-25 01:58:33 +00:00
brandman211 1d21a89f3a Converting merges one at a time...here's SMS.
-Because of Reset and Pause being separate from everything else, I had to code a special condition for these.
-Line count: 1081.
2012-03-25 01:32:44 +00:00
brandman211 8686cc87ff Converted the switch statement in InputConfig_Load to a dictionary. 2012-03-25 00:54:40 +00:00
brandman211 0eae992403 Created general functions Do and Update.
-Because I have been advised not to convert the objects to dictionaries, and because using the equivalent of typedef seems confusing if it isn't outright impossible, I had to implement switch statements to handle certain aspects on a platform to platform basis.
-These will end up being much bigger than I would have hoped, but the entire file will be much, much smaller.

TODO: Implement all of the other platforms using these functions.

Note: It seems that the Enabled checkbox doesn't do anything other than persist its state. I checked the latest release, and the same issue was there, so I didn't break it!
2012-03-25 00:39:51 +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
brandman211 d7453a3770 -Shrunk UpdateNES. 2012-03-24 21:06:47 +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
Rolanmen1 d0afec182f Pause/Resuming Scripts Have Been Implemented 2012-03-24 18:59:24 +00:00
zeromus e7eb6d8dcd fix input.get 2012-03-24 18:39:55 +00:00
zeromus 0bb9f65038 try not to crash when size of arrays in config file changes 2012-03-24 17:47:52 +00:00
adelikat 96fc783107 Lua - implement input.get() 2012-03-24 15:55:22 +00:00
rolanmen1 d0995970fc User Can't Toggle, Edit Nor Pause Or Resume To Separators. Edit Buttons Now Opens Multiple Scripts Instead Of The First Selected. 2012-03-24 13:25:19 +00:00
rolanmen1 87f9ace0d9 Added Resume/Pause Script Option Everwhere It Should Be And Also Added Pause Icon To All Of Them. 2012-03-24 12:43:11 +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
rolanmen1 661565cf3e Added Pause Property To Scripts, Menu Option To Pause/Resume Scripts, Enabled And Paused Scripts Change It's Background To Red (May need to change this). Label Above ListView Shows How Many Scripts Are Paused. Need To Add Pause Icon To The Menu Option. 2012-03-24 10:53:26 +00:00
zeromus b9dd682f1d name the context menu items better things 2012-03-24 03:18:02 +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 216a44e3f0 add input.getimmediate 2012-03-23 22:52:02 +00:00
zeromus adcb03f8d5 fix context menu open logic to not rely on indices 2012-03-23 22:06:42 +00:00
zeromus aaf92e0e25 how did that happen 2012-03-23 19:48:45 +00:00
zeromus bc3e8606a2 refactor lua scripts to be more flexible 2012-03-23 19:44:47 +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
adelikat 715d46ed1d Hook up atari controller 2 to input config dialog. 2012-03-23 00:39:21 +00:00
adelikat 684252a816 Fix mainform context menu logic from the screenshot to clipboard addition 2012-03-23 00:06:20 +00:00
zeromus fa25305d67 atari-add player 2 controls? 2012-03-22 06:33:28 +00:00
rolanmen1 dcaf724dae Fixed A Bug When Saving A Session That Prevented Them To Be Loaded Correctly. 2012-03-21 12:51:52 +00:00
zeromus d8c0e3b27e make GetExeDirectoryAbsolute more robust (handle # in paths) 2012-03-21 06:38:19 +00:00
adelikat 365f60988e Hook up Atari to the controller config dialog (interim only) 2012-03-21 02:44:01 +00:00
andres.delikat bb7e320f92 Lua Console - when opening a duplicate lua script, don't turn script on if the disable lua script on load option is checked 2012-03-20 21:44:34 +00:00
rolanmen1 652fea7392 If User Opens A Script That Is Currently On The Session, It Will Toggle It On.
If User Deletes The Script From The Session, It Will Stop.
Script Counter Now Updates On More Circumstances.
2012-03-20 15:31:06 +00:00
brandman211 22feb43b78 joypad_set works. 2012-03-19 19:10:30 +00:00
andres.delikat da634a45f1 Lua Console - autoload session 2012-03-19 16:49:47 +00:00
andres.delikat 33383b533b Lua Console - option to disable scripts on load 2012-03-19 16:19:31 +00:00
andres.delikat adda412369 Lua Console - track changes on Move Up / Down 2012-03-19 15:33:38 +00:00
andres.delikat 40b057a474 Lua Console - drag & drop .txt files 2012-03-19 15:26:05 +00:00
andres.delikat 9f6420b2bc Lua Console - Open Script - add a *.txt option in the openfile dialog 2012-03-19 15:23:08 +00:00
brandman211 78d8effcfc Made joypad_get independent of mnemonics. Here's the Lua script I used to test:
while true do
	joypad.set("Up", true)
	local buttons = joypad.get()
	local result = {}
    for index, value in pairs(buttons) do
        table.insert(result, index .. ": " .. tostring(value))
    end
	gui.text(0, 36, table.concat(result, "\n"))
	emu.frameadvance()
end

For some bizarre reason, after a while, the ordering of the buttons goes from stable to chaotic, making it impossible to read the buttons pressed. adelikat says not to worry about this because order is meaningless in Lua. Still, this is very curious...

TODO: Set using a ClickyVirtualPadController and Global.StickyXORAdapter.SetSticky(Controller + " Up", false)...whatever that means.
2012-03-19 14:52:23 +00:00
brandman211 a4a8dec005 Lua glue for zeromus. 2012-03-19 03:39:56 +00:00
adelikat 0bdce38dc4 Add atari to path config dialog (interim builds only) 2012-03-19 02:12:43 +00:00
adelikat c92f1b556c Lua - implement movie.filename(), movie.getreadonly(), movie.setreadonly() 2012-03-18 19:52:28 +00:00
adelikat e695263eba Lua - implement movie.isloaded() and movie.length() 2012-03-18 19:33:38 +00:00
adelikat 951721bb39 remove joypad.set and add joypad.get, as set was not built and get was 2012-03-18 19:14:50 +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 ada3c55311 lock down PCE BG Viewer to interim 2012-03-18 00:30:36 +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
adelikat 338f4230f1 Lua Console - logic for hiding/disabling menu items 2012-03-17 23:16:11 +00:00
adelikat 300f68e8b7 Lua Console - implementing changes tracking and asking to save changes 2012-03-17 22:23:52 +00:00
adelikat 97f32bde91 Lua Console - implement recent session 2012-03-17 21:59:56 +00:00
adelikat 44ba1c2594 Lua Console - implement Save Session and Save Session As 2012-03-17 21:31:48 +00:00
adelikat c3aeda2d54 Lua Console - clear output window on New Session 2012-03-17 12:19:30 +00:00
adelikat 1380cccd7a Lua Console - output window - context menu with a clear option 2012-03-17 12:14:59 +00:00
adelikat dac438ec02 Lua Console - Better dialog for lua functions list, stop and start sound on calling list 2012-03-17 02:18:09 +00:00
andres.delikat 871e6df12f PCE BG Viewer - GUI overhaul 2012-03-16 15:29:05 +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
brandman211 45430c8ca7 ImportMCM now supports NES movies.
-No info on the control bytes, so I'm not dealing with them right now.
-It seems like there's an extra byte for at the beginning of input for NES that doesn't exist for PCE.
--I think it might be the "1 byte for power-on and reset" that the docs refer to, though I'm not sure why this would exist for NES and not PCE...because NES supports control commands and PCE doesn't?
--Perhaps this will become more apparent if I write the importers for SMS, GG, GB, and GBA. I'll need access to a Linux machine to do these, though.
2012-03-15 04:22:37 +00:00
brandman211 172115dcca Reformatted ImportMCM. Now to add the additional consoles. 2012-03-15 02:23:01 +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
brandman211 4c47676c02 -Added warning messages for:
--FDS commands in ImportFMV.
--Bad ROM checksums in ImportText. TaoTao: There's nothing wrong with using warningMsg; it just is limited to showing the first warning message that occurs.
-ImportNMV
--Nintendulator's Four Score recording is seemingly broken.

TODO: ImportMCM clean-up / expansion, Intellivision research.
2012-03-14 20:08:00 +00:00
Rolanmen1 a8df8116e6 Toggling Lua Scripts By Double Clicking Now Works 2012-03-13 22:39:07 +00:00
Rolanmen1 ff21856389 Toogling Scripts From The Toogle Button And Menu Option Works, Double Clicking Doesn't 2012-03-13 22:08:17 +00:00
Rolanmen1 21fbe4f16e Unwanted Exception When Turning Off All Scripts Fixed 2012-03-13 21:36:20 +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
brandman211 f53088c7be -Used masks to simplify ImportFMV.
-Finished ImportVMV:
--I'm not sure what the following comment means: "For the other control bytes, if a key from 1P to 4P (whichever one) is entirely ON, the following 4 bytes becomes the controller data." I'm going to assume this is a bad translation that is the equivalent of my 4 controllers = 4 bytes comment.
--Nesmock has a block of code that seems to handle, or at least account for, commands (Lines 207 - 239 of virtuanes.hh). I don't do anything about this, but it doesn't seem like Nesmock does much of anything about it either. I'll ignore this for now.

TODO: ImportNMV, clean up ImportMCM, and perhaps support other platforms for .MCM, although everyone thinks it's a waste...I like writing importers! I'm afraid of writing cores!
2012-03-13 02:37:59 +00:00
adelikat 863f3fc4e5 fix an error in chr rom size for a CNROM game 2012-03-13 02:10:18 +00:00
andres.delikat f863bc41ed PCE GB Viewer - start a menu strip 2012-03-12 22:05:53 +00:00
brandman211 8938290e36 -Fixed FourScore handling for .FCM.
-Made it so that .tas is appended to the file path instead of changing the extension to it.
-Added default emu/MovieOrigin comments to the importers that don't have explicit ones.
-ImportVMV header / added blank frames
-Moved the MnemonicsGenerator declarations outside of the loops.

TODO: Finish ImportVMV (I don't think the provided documentation explains how the input works...) and figure out if my re-record count is off by one or if TASVideos.org is.
2012-03-12 20:35: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 b10b7632e8 Forgot to add files. very sorry 2012-03-12 05:26:48 +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
peter ccc9fdf672 Case sensitivity fixes 2012-03-12 04:44:19 +00:00
peter 0776d48b81 Add subwcrev.sh build script for non-Windows platforms 2012-03-12 04:44:10 +00:00
adelikat 22f0b358aa Make lua files run again 2012-03-12 01:57:38 +00:00
beirich ca47082737 fix some PCE savestate desyncs 2012-03-12 00:14:44 +00:00
adelikat 79d8f3d920 Fix display of Loadstate hotkeys in loadstate menu 2012-03-11 20:56:15 +00:00
taotao54321 41b1d3c82a Lua: now setrenderplanes() works also with SMS. 2012-03-11 17:25:25 +00:00
taotao54321 bcbe16c49c Moved SMS-related settings to "SMS" menu from "Emulation" menu 2012-03-11 17:19:15 +00:00
taotao54321 a595e367db Added SMS specific menu: Graphics Settings
PCE Graphics Settings dialog bugfix
2012-03-11 17:08:25 +00:00
taotao54321 3dcd94ea3d Moved PCE-related settings to "PCE" menu from "Emulation" menu 2012-03-11 16:30:55 +00:00
taotao54321 2f9a5212bc Added BG/OBJ display settings for SMS (not accessible yet) 2012-03-11 16:15:20 +00:00
adelikat 62f80406c4 Clean up the PCE Graphics config dialog 2012-03-11 15:41:51 +00:00
taotao54321 2b79ae88b3 Added a comment 2012-03-11 15:18:24 +00:00
taotao54321 9d72bf0c7c Added PCE specific menu: Graphics Settings 2012-03-11 15:12:48 +00:00