Commit Graph

2101 Commits

Author SHA1 Message Date
brandman211 1c5a5a5ac3 Seemingly fixed the casting problem.
-UGLY REDUNDANT UGLY REDUNT UGLY REDUNDANT (Especially for DoSpecificValue() and DoPreviousValue()).
-I tested every possible scenario for the aforementioned abomination and it seems to work.
-I applied SignedVal and UnsignedVal to the comparison functions for sorting, the ToString functions, and specific value and previous weedings. I don't think there's any other places where this is an issue.

TODO:
-Try my mid-search data size conversion code again.
--Use it on System Bus and see if it is as slow (Not Responding) as it was previously now that 3 lists have been removed.
--Try allowing unaligned addresses and see if that makes any difference.
-Convince adelikat that moving "Prev value as change" to its own data item and column ("Differences" seems more appropriate) is the only sensible way.
-Maybe move all of the previous definitions from Ram Search to Ram Watch (With the exception of "Since last Search" of course.
-Perhaps allow the viewing / hiding of more columns on Ram Watch / Search.
2012-06-09 08:29:31 +00:00
brandman211 06d4017b07 Unsigned / signed conversion for the Specific Value now works for word / dword.
-Well, dword is broken in general because of casting, which will hopefully be fixed soon...
2012-06-09 06:52:04 +00:00
brandman211 720193b50f -Cleared the sorted column whenever the previous definition, data size, data type, or endian changes because these options might place the values out of order.
--Well, data size and endian don't, but they will once these changes take effect in the middle of a search.
-Previous can now be defined as the last change, fixing the enhancement shown in Issue 73 (Ram Watch equivalent might come later).
-Fixed unsigned sort.
2012-06-09 06:40:11 +00:00
adelikat f02d28fb38 Ram Search/Watch, Hex Editor - improve some code efficiency, tiny speedups if any 2012-06-09 05:34:01 +00:00
brandman211 f716caeae5 Temporary fix for the ROM loading crash issue. Will report if it crashes again. 2012-06-09 02:24:19 +00:00
brandman211 3b54bd268a -Useful refactoring!
--prevList, undoPrevList, and redoPrevList removed. All of the definitions for previous are now stored in separate data items.
---Should yield small speed increases.
---Makes it easier to port these definitions to Ram Watch eventually.
---Auto-aligns data, making it impossible for issues, such as the original values not aligning with the correct values because the prevList wasn't recreated, impossible.
---Makes it possible for the field to automatically update when the definition is changed (Implemented).
--Value/PrevToString() now use the same code.
--Reduces redundancy.
---This was a problem as PrevToString wasn't taking into account the data type, whereas Value was. This is now fixed.
-Watch now stores the data for the "last change" previous definition. Now I just have to set up the option in the GUI.
2012-06-09 01:56:56 +00:00
brandman211 eefb41f0b3 -Added message saying that the data type has been converted when you change the data type.
-Moved the "Included mis-aligned" box to data size where it should be.
2012-06-08 18:59:20 +00:00
brandman211 e5972f1368 Fixed Issue 44. I created two new lists, undoPrevList and redoPrevList which are updated / restored in the same places as their counterparts with prevList instead of searchList. 2012-06-08 06:23:33 +00:00
brandman211 3aaf57802c Fixed Issue 43. In hindsight, the problem was very obvious: "Since last frame" uses searchList while the other options use prevList, and only the former ever got sorted! 2012-06-08 05:15:07 +00:00
brandman211 4a6fed75d9 ConvertListDataType now converts all of the lists. 2012-06-08 02:25:24 +00:00
brandman211 67a9f86c78 -Fixed GetSpecificValue(), which means that signed searching works now.
-Upon changing data type, the contents of the specific value box converts accordingly.
2012-06-07 23:17:22 +00:00
zeromus cff7ba6d24 nes-fix lagrange point, including sound 2012-06-07 20:52:49 +00:00
brandman211 38d22b8549 Exlude => Exclude. >_< 2012-06-07 20:24:29 +00:00
brandman211 5a678f96d8 Fixed Issue 69 by properly chucking the invalid lines out of watch files instead of trying to get out of range substrings and parsing non-numbers as integers. Also, as the newly stored SystemID has yet to be accounted for in any way, I made the parser skip those lines. Not sure if there's something Ram Watch should do with this data as it seems like the SystemID is more accurately defined by the core currently running. 2012-06-07 18:41:39 +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
adelikat c8d07a5078 Ram Watch/Search - add System ID to .wch files 2012-06-07 03:16:25 +00:00
beirich 7e1ccc4faf Update gamedb entries for Neutopia 1 & 2 2012-06-04 22:25:43 +00:00
adelikat a9eeac6d64 Lua - fix bug that was causing lua functions to duplicate each time a lua script was toggled or opened, eventually causing crashes. 2012-06-04 02:33:34 +00:00
beirich fe369e0455 pce: alter handling of reading $1FF402 irq status port, fixes Aldynes intro freeze 2012-06-03 20:09:09 +00:00
beirich 775845184c update ROM header detection algorithm. Fixes some homebrew roms which have no header and aren't padded to a multiple of 1024 bytes. 2012-06-03 05:39:30 +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
adelikat 8ca6b24614 Cheats, Lua, Ram Search/Watch - flag changes when adding a separator, default to SaveAs if saving a new file, allow Save in menu item in this scenario 2012-06-02 22:06:00 +00:00
adelikat 393dd9dcfe Ram Watch/Search, Hex Editor - set endian based on the endianness of the memory domain by default 2012-06-02 21:48:09 +00:00
adelikat 0a0c4b43ae Hex Editor - add Go to Address to the context menu 2012-06-02 21:18:21 +00:00
adelikat a74fbb84fe Fix Ram Poke for Ram Watch/Search dialogs 2012-06-02 21:07:29 +00:00
adelikat 6578371bca Hex Editor - remove poke context menu item, since there is no need for it, just type in the values! 2012-06-02 18:49:06 +00:00
adelikat 2e5547806d Ram Search - add View In Hex Editor menu item to the context menu 2012-06-02 14:38:35 +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 820875fbae Multiclient menu - disable the movie, avi, and screen shot menus when no ROM is loaded 2012-05-31 01:13:25 +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
phillip.grimsrud 9a1e18045e Fixed rewind to still work if there is no active movie. 2012-05-28 03:32:27 +00:00
adelikat 0118b34b41 Slight UI fixes - show mapped hotkey for Open TAStudio on TAStudio menu item, fix alignment of a few boxes in the hotkey config 2012-05-28 03:09:47 +00:00
phillip.grimsrud bf325ec082 Fixed TAStudio read-only mode button to change the movie mode instead of changing the read-only flag which has a different meaning. 2012-05-28 01:50:16 +00:00
adelikat 520dfcb37b Revert SetReadOnly() function 2012-05-28 01:29:43 +00:00
phillip.grimsrud f7ee1dbbf3 Added an image for the TurboFastForward button which was entirely forgotten in my previous commit. 2012-05-28 00:56:51 +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 bd3e576614 Move Help menu back to its intended location 2012-05-20 15:37:01 +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
adelikat abba87738f Fix input config for Gameboy, some small random work on ColecoHawk 2012-05-18 22:57:05 +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
brandman211 7ab8fe087a Fixed drop down labels in RAM Watch and Search. 2012-05-12 07:07:34 +00:00
brandman211 23b3cedf7d Removed the now redundant TargetZoomFactor scaling for drawRectangle. Drawn shapes now scale nicely. Whether or not text should be drawn this way is a worthwhile discussion IMO, but as zeromus has said, it would require text to be drawn in the same way like shapes. 2012-05-11 21:11:29 +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 b35ab0d936 Add JMD to config.cs, and fix whitespace on JMDWriter.cs.
My editor whitespace settings are correct now, I promise!
2012-05-10 00:38:26 +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 35a9edc018 Refactor JMDWriter to be a bit less painful to read 2012-05-09 15:08:57 +00:00
goyuken d0ada9dbb3 AviWriter.cs: be informative if worker thread dies 2012-05-09 01:00:16 +00:00
goyuken d70a4e0a9c clarify some comments and add more comments to JMD code 2012-05-09 00:15:59 +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
zeromus de0cdf1c3c add sharpziplib for gzip so we can make portable JMD dumping without relying on the native 7z.dll 2012-05-07 18:42:43 +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
zeromus 857d0a5b39 voila, "emu" resolution lua drawing, hacked in place of the native resolution drawing because rolanmen1 decided to destroy my surface management paradigms (i can tell because the earth is scorched with spaces instead of tabs) 2012-05-06 07:09:04 +00:00
brandman211 05157997f1 -Added a very basic fix to the graphics scaling issue per adelikat's advice.
--Gets worse as the scale increases.
--For x3, the box doesn't increase size, but the box still changes position. I think there might be a difference between the TargetZoomFactor and the actual screen size, so perhaps we should tie this to something else.
-Working on very small optimizations to the NES PPU with CorruptedSyntax...this is more fun, so we'll do this first.
--Eliminated an entire loop.
--Branched to two loops instead of branching for every iteration in one loop.
--Got rid of some redundant instructions using temporary variables.
--This may be completely premature, but I seem to have gained a few FPS from doing this. For me, I get 38-39 FPS where I'd previously get 33-34.
2012-05-06 04:09:28 +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
beirich 604a774118 Add 2 SMS homebrew and a GG prototype to gamedb 2012-05-05 22:43:11 +00:00
goyuken d964558856 Multithreaded AviWriter.cs
Moves calls to AVIStreamWrite() to a separate worker thread.  They are where all of the cpu time for video compression is used, so can give a decent speedup.  Could conceivably go slower on pathetic single core machines due to synchronization and copy overhead.
2012-05-05 14:52:23 +00:00
Rolanmen1 9b9a8546a5 Deleted the ClearDisplaySurface functions. If you just need to clear the graphics, call gui_ClearGraphics function in LuaImplementation. 2012-05-01 15:15:19 +00:00
Rolanmen1 2799d55f4a Now gui.drawNew and gui.drawFinish doesn't need to be invoked via Lua Scripts. However they are invoked every frame. Basically, this means that graphics are drawn and cleaned every frame. So, if you Pause/Stop a script, the graphics gets cleaned right away. 2012-05-01 14:43:17 +00:00
adelikat 22eec9c4d7 Archive Chooser - put (U) [!] roms at the top of the list 2012-04-30 01:26:37 +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 e60ba05e66 Gui.text - fix inverted default fore/back colors, fix lua scripts to use new gui.text parameter scheme 2012-04-30 00:45:37 +00:00
adelikat e0dc96abdc GUI Text / Ram Watch on screen display - fix inverted foreground and background colors 2012-04-30 00:30:44 +00:00
adelikat fffe30f4f9 Atari - add a version of Magicard to the gamedb 2012-04-29 19:40:28 +00:00
adelikat 25c2e45da8 movies - use Global.Game.System not Global.Emulator.SystemId for the System header when recording a new movie 2012-04-29 14:18:10 +00:00
adelikat 38dd7889b3 Input Config - hide Enabled checkbox since we have no intention of supporting the disabling of a controller at this time. 2012-04-29 14:06:24 +00:00
adelikat 5e91cc2a7e TAStudio - clear holds menu item & context menu item, clears all buttons pressed on the virtual pads 2012-04-29 13:25:35 +00:00
adelikat 8df4ac18bd Play Movie Dialog - show warnings on mismatches for system, movie version, and emu version 2012-04-29 13:11:33 +00:00
adelikat d9134ac6ce TI-83 add a bunch of rom versions to gamedb, mark bad dumps accordingly, and display the version number when displaying the rom name 2012-04-29 03:58:06 +00:00
adelikat 3d10431a2b Atari - implement console switches (as menu items) 2012-04-29 02:48:33 +00:00
rolanmen1 3bcaa8f2e6 gui.clearGraphics implemented. This will allow the user to clear the graphics whenever he wants. I also created a function ClearDisplaySurface that is used to clear the graphics whenever the user stops a scripts. 2012-04-27 20:15:07 +00:00
rolanmen1 56b8d6d55e gui.drawImage implemented. It needs a Path, X and Y Points, Width (optional) and Height (optional). If Width or Height are null, their value will change to the original Width/Height. As with gui.drawIcon, the Path needs double backslash (\\).
Take in mind that if the image have transparent background, the background will be drawn in transparent.
2012-04-26 03:41:31 +00:00
rolanmen1 fd9005f361 gui.drawIcon implemented. It draws an Icon file (Path to File) in the specified X and Y Coordinates. It has 2 optional parameters, Width and Height. You can't resize the icon to be bigger than it's original size, only smaller. Oh, and Path must have double backslash (\\). 2012-04-25 20:34:50 +00:00
rolanmen1 93335d287a Fixed gui.alert anchoring. Since do.gui.text now have more parameters, it didn't worked. 2012-04-25 19:58:17 +00:00
brandman211 cb3e0ec666 Applied the renames for "minimum buttons pressed", "minimum buttons inputted". 2012-04-25 04:56:48 +00:00
Rolanmen1 f637f5f400 gui.text now has a line color parameter. 2012-04-24 15:23:56 +00:00
rolanmen1 cefc803425 gui.text now accepts BackgroundColor parameter. I didn't had enough time to check stuff, so i will check more deeply some other time. 2012-04-24 03:57:23 +00:00
adelikat d62b2d98e1 Hotkeys - add Open TAStudio hotkey 2012-04-24 00:11:58 +00:00
adelikat 1fc010ad56 Record Movie Dialog - make filename text box default to the game name, and change save file dialog to populate from this text box not game name 2012-04-22 14:04:10 +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 75b5ec9223 redo revision 2168, this method also fixes the issue of loading a non-movie state while a movie is loaded, but also doesn't break the parsing of the savestate frame value in CheckTimeLines 2012-04-22 13:38:12 +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
adelikat 8711c49819 Cheats - on screen message when Disable All Cheats is performed. 2012-04-21 22:42:32 +00:00
adelikat c112573c30 Atari - fix recording/playback & input display of 2 players 2012-04-21 18:27:37 +00:00
zeromus 1e3b38538d fix a surface GC churn bug in display manager 2012-04-21 17:21:09 +00:00
adelikat aecd849eb5 Show svn revision number in about boxes 2012-04-21 15:25:47 +00:00
adelikat e43b53aba8 NES Graphics Config Dialog - limit last line to 239 instead of 240 (prevents crash) 2012-04-21 15:13:42 +00:00
Rolanmen1 152f6f37e8 Added a HitBox Script for SMB2U, it runs but still a bit buggy. 2012-04-18 15:06:07 +00:00
Rolanmen1 cf9606eb49 Created 2 functions, GetPen and GetBrush. They will recieve an object variable to return a Pen/Brush of said color, this was made to clean the code of the draw functions. 2012-04-18 14:11:16 +00:00
rolanmen1 4db055ce36 gui.drawPie implemted. BizHawk now can make graphics. Quick Example: http://i44.tinypic.com/ibigs2.jpg 2012-04-17 21:41:21 +00:00
rolanmen1 ee8ff2c1cf gui.drawBezier, gui.drawPixel, gui.drawPolygon are all implemented. 2012-04-17 19:58:27 +00:00
rolanmen1 733a1e7bc6 gui.drawLine implemented 2012-04-17 17:48:37 +00:00
Rolanmen1 10a73f777d gui.drawRectangle now accepts both hex and string. Hex format is ARGB (Alpha, Red, Green and Blue respectively). 2012-04-17 16:12:14 +00:00
adelikat 68a8dd5f74 Lua - implement gui.drawEllipse() 2012-04-17 03:21:16 +00:00
zeromus d156dbe5fc dont crash when minimized 2012-04-16 22:12:11 +00:00
andres.delikat 1f5e4d1046 Replace the "Play" and "Record" messages for movies with Icons. 2012-04-16 21:04:00 +00:00
rolanmen1 0fd023dc8c gui.drawRectangle now accepts Line Color and Background Color. Line Color is mandatory, background is not. If user decides to not specify background color, it won't fill. 2012-04-16 20:47:01 +00:00
andres.delikat 839a247bba Fix input display during lag frames for NES games 2012-04-16 20:19:08 +00:00
rolanmen1 a4032aff51 gui.drawRectangle now accepts 4 parameters (X, Y, Width and Height). Should implement Line Color and Background Color as parameters. 2012-04-16 20:04:43 +00:00
andres.delikat 48f65ac847 Movie subtitles - implement ability to display multiple subtitles at once 2012-04-16 20:00:11 +00:00
adelikat 3bae8da0b6 Adjustment to height settings of osd messages, code clean up in movie.cs 2012-04-16 12:17:25 +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
adelikat 0aa08984ed Add SHA1 to movie headers, Play Movie - highlight sha1 in red when there is a SHA1 mismtach between the movie and the current game. 2012-04-15 03:02:07 +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
zeromus 7b86f66353 nes-oops. now, actually pass all mmc3 tests 2012-04-14 09:40:41 +00:00
zeromus 73fba31c34 nes-add mapper012 (mmc3 variant, for dragon ball z 5). add concept of mmc3 chip revision variants to mmc3 code and game database, and add proper emulation thereof. pass a bunch of mmc3 tests. simplify (to almost nothing) iNES board detection to correspond to new paradigms of virtual board types. your savestates for mmc3 games are invalidated. 2012-04-14 08:28:42 +00:00
zeromus a1d798cc8f nes-mark banana bad dump variants as bad in gamedb 2012-04-11 18:17:59 +00:00
zeromus 9f6820b83f revise nes gamedb to be more organized and useful hopefully with respect to the actual kinds of scenarios we run into 2012-04-07 18:34:05 +00:00
adelikat 87fa6d5f17 Hex Editor - Context menu - fix "Add to Ram Watch" hotkey display to be Ctrl+W (was left as A) 2012-04-06 02:04:00 +00:00
adelikat da2062d373 Atari - add avgn game to gamedb 2012-04-05 23:57:57 +00:00
rolanmen1 fd6a1a88da Emulator Won't Crash When User Loads A State That Is Not Embedded To A Movie 2012-04-05 01:42:24 +00:00
zeromus 87b455b195 oops 2012-04-05 01:40:30 +00:00
zeromus 3f6127152f build lua differently so that it has at least a prayer at interoperating with plug-in dlls. at least, it can load them. there may be other problems later due to the dlls generally being compiled against a different CRT (vc8) than our lua and luainterface (vc10). we could fix this if we needed to by compiling the CUSTOMIZED lua in vc8 and referencing it from the vc10 luainterface. 2012-04-05 01:05:08 +00:00
Rolanmen1 39e640aee9 gui.cleartext() Implemented. This Function Should Always Be Called After emu.yield() In Order For The Later To Work Correctly. 2012-04-04 20:09:50 +00:00
adelikat ea2bdac456 Fix an exception from commit 2161 (Prevent lua script restart when resetting a game). Fixed by making RecentFiles.GetRecentFileByPosition() more robust by not crashing when there is no recent file (returns "") instead 2012-04-04 02:23:47 +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 2581edc958 Play Movie dialog - include .bkm and .tas regardless, since our matching of current rom is not very robust, make match current game option set to false by default 2012-04-02 01:35:34 +00:00
adelikat a18b700664 Bigger hammer fix for drag & drop of movie files 2012-04-02 00:47:52 +00:00
adelikat 59f92b4c81 TAStudio - atari virtualpads 2012-04-01 18:53:06 +00:00
zeromus 4c817b20c8 add konami collection games to gamedb so they show as good dumps 2012-04-01 16:25:59 +00:00
brandman211 557f437195 -As much as I dislike the new joypad.set() setup, the least I could do is make it consistent with joypad.get().
--If there is no controller parameter, then all of the buttons are returned as they are stored in the system, just like joypad.set(input) takes button names as is.
--If there is a controller parameter, all of the buttons for that controller are returned without the "PX ", just like joypad.set(input, controller) takes button names without the "PX " and assigns them to the matching buttons for that controller.
--No one approved this change, but seriously, this is common sense. I expect some "change denied" April Fool's stuff tomorrow...
-Implemented a blacklist for ButtonCount. By default, Lag, Pause, and Reset are blacklisted. I don't think any of these buttons should be tracked.
2012-04-01 08:08:40 +00:00
adelikat f38073db5c another movie file extension fix 2012-03-31 15:36:10 +00:00
adelikat 7e9085b46d Fix drag & drop of movie files 2012-03-31 15:34:31 +00:00
adelikat f3d098a390 Atari - hook up to the default paths 2012-03-31 13:41:00 +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 4c958584f5 Add Lua scripts folder to MakeRelease.bat 2012-03-31 00:44:17 +00:00
adelikat ab2e804300 Change default movie extension to .bkm 2012-03-31 00:38:39 +00:00
adelikat 2eba9e0c71 Atari - console buttons hooked up to mnemonics (input display and movie recording now work) 2012-03-30 23:42:09 +00:00
adelikat cb3df74105 Atari - console buttons now work in input config dialog 2012-03-30 23:34:38 +00:00
andres.delikat e4acb65ed1 Controller Config - hook up atari console buttons mostly, still one thing to fix up, currently crashes when trying to save 2012-03-30 22:03:08 +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
brandman211 4240c119b6 Fixed Issue 14, which mentioned that in TAStudio, frame numbers of more than 5 digits don't display properly by default. I fixed this by increasing the width of the Frame column as much as I could without making the section horizontally scroll. This accommodates for 6 digits. 2012-03-30 14:24:40 +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 52fd33153a Atari - fix recording and playback of atari resets 2012-03-30 03:43:25 +00:00
adelikat 8a199f0e3a Atari - fix the recording of reset 2012-03-30 03:15:36 +00:00
adelikat 91f5733662 Record movie dialog - if file already exists, confirm overwrite 2012-03-30 00:32:45 +00:00
zeromus 37d58f1a4f add a2600 game database 2012-03-29 23:55:10 +00:00
Rolanmen1 e0d98c8a7f Fixed: * if a lua script errors it stops, but you can't toggle it back because you can't resume a non-suspended script 2012-03-29 20:22:49 +00:00
Rolanmen1 720b1cc2ba Joypad.Set - Added Slot Number As An Optional Parameter 2012-03-29 19:53:16 +00:00
Rolanmen1 1c6b792a28 Joypad.Set Nox Fixed 2012-03-29 19:16:25 +00:00
Rolanmen1 4337ea9d63 Joypad.Set() correctly implemented. 2012-03-29 19:03:14 +00:00
adelikat 5203286f34 Lua - movie.getrerecordcounting() and movie.setrerecordcounting() implemented 2012-03-29 03:16:55 +00:00
andres.delikat 50e357f345 Lua - start work to implement lua.get/setrerecordingcounting functions 2012-03-29 03:09:46 +00:00
andres.delikat de7bd1f346 Lua - implement anchor parameter to gui.alert() 2012-03-29 02:45:38 +00:00
andres.delikat 78ee40a546 Lua - remove mainmemory.readbyte() and mainmemory.writebyte(), these are not preferred since there are equivlant functions, and unlike the memory library, they are not useful for compatibility with scripts form other emulators. 2012-03-29 01:44:01 +00:00
adelikat 01145b1dfc unofficial about box - Add a nifty close button 2012-03-28 23:43:15 +00:00
adelikat f91becbef8 Show hawk name on main window instead of console. 2012-03-28 23:11:43 +00:00
andres.delikat ca7d5d9131 Lua Console - add online documentation link to the Lua Function wiki 2012-03-28 20:49:58 +00:00
brandman211 7e75d983ae Came up with a solution for the joypad.get() issue.
-adelikat has informed me that in FCEUX, savestates contained the button state of the frame on which you saved on. He claims that this is redundant because you could retrieve the state from the frame you're loading on, so BizHawk will not do this.
-As such, I just retrieved the input for the frame you're saving on before associating the data with the state.
--This essentially includes the missing info without having to depend on a movie frame to get the data from.
--In order for this to make sense, I made it so that the main joypad.get() doesn't run on a frame you're saving / loading on.
--Finally, in order to show the data from before the save frame when loading the data, I cached that data as well.
---The two above steps require collecting the data for a state once and using that until the frame is advanced or a state is loaded. Otherwise, I'd be able to increase the count significantly by saving multiple times.
-All this said and done, I think this script is perfect now, and is way more convenient to use than the FCEUX counterpart.

Notes:
-As mentioned before, it seems that the scripts are disabled when the console is reset / a movie begins playing. I don't like this to begin with, but worse yet, I noticed that this somehow makes the button data carry over from before the reset. Why is this?
-It seems that using gui.text in savestate.registersave/load causes the text to be written over the previous text instead of clearing the screen and then writing. Is this expected? How can I avoid overlapping text?
2012-03-28 17:06:25 +00:00
Rolanmen1 b295d7cd23 Record Movie - User Can Choose To Save Movie Files As .tas or ."consolebeingran".tas
Play Movie - Same As Record Movie
2012-03-28 12:40:42 +00:00
adelikat 71396ad4b7 Lua - sort the functions in the lua function list (both in the console dialog, and console.luafunctionslist()) 2012-03-28 12:26: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
brandman211 40e2d5f543 Refactored for the register functions. This seems to work fairly well, but when loading a state, joypad.get() contains the button states for the frame you were on BEFORE loading instead of the frame you are now on. This results in small errors. The issue might be deeper than my script or even the Lua implementation, so I can't do anything about this. 2012-03-28 03:41:46 +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 b585a0a23a fix savestate.registerload 2012-03-28 01:24:32 +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
adelikat 397f289493 Lua - savestate.registersave/load - show exception message on error 2012-03-28 00:13:25 +00:00
adelikat 8bc8ec0e5b Lua - output registersave/load error messages to the lua console not the screen 2012-03-27 23:58:56 +00:00
andres.delikat 251c169cf3 Play Movie - small dialog tweaks - fix anchoring of a checkbox, better minimum size values 2012-03-27 21:44:04 +00:00
andres.delikat 655af69326 Lua - savestate.registerload() implemented 2012-03-27 21:17:20 +00:00
brandman211 be807c3def -Used the new movie.getinput() function to simplify parse(), now frames().
--TODO: Disallow Reset, Lag, and other non-buttons. Pause?
--If this works like adelikat says, my missing load state idea will be possible.
-Made the loading information show up on the console instead of the gui.

Note: Still need savestate.registersave/load!
2012-03-27 21:11:34 +00:00
andres.delikat 0330e1f742 Lua - implement savestate.registersave() 2012-03-27 21:09:36 +00:00
andres.delikat 83fe222ba9 Lua - movie.getinput() - fix 2012-03-27 20:10:05 +00:00
andres.delikat 489086716d Lua - Better output for movie.getinput() 2012-03-27 19:21:10 +00:00
rolanmen1 3e84fc9936 Lua - Implemented movie.getinput()
NOTE: There may be uknown errors.
2012-03-27 15:45:50 +00:00
rolanmen1 5e25b15100 Lua Console - Save Menu Option Now Enables Even When There's No Session Loaded
ListView Refreshes When Loading A Session From Recent
When Clicking On New Lua Session Option, It Now Cleans The CurrentLuaSession String. This Will Prevent Some Unwanted Results When Saving A Session.
2012-03-27 13:54:29 +00:00
rolanmen1 5337fb2213 Lua Console Now Saves And Loads Sessions With Separators 2012-03-27 13:31:30 +00:00
brandman211 9ff5f10a70 Resolving Issue 13. Easy fix; just needed to check if the string was empty before doing substring operations on it. 2012-03-27 07:48:05 +00:00
zeromus 46a638ee96 fix bug in lua coroutines which made error propagation get mixed up and possibly result in a bunch of other subtle bugs 2012-03-27 07:25:36 +00:00
brandman211 d1b00e6d4d Added my converted ButtonCount.lua script (Original here: http://code.google.com/p/brandon-evans-tas/source/browse/Lua/ButtonCount.lua)
-As you'll recall, the script has 3 methods of keeping track of input:
--1. Tracking the button counts in real time. This took some minor adjustments, but seems to work fine.
--2. Parsing the button presses from a loaded, read-only TAS file when starting the script, if possible.
---This works well enough after a good amount of refactoring, but I only have it rigged to work for NES.
---As always, note that this method is very slow for big movies, which is why we only use it once.
--3. Caching the counts when saving a state and loading them when loading a state.
---savestate.registerload and savestate.registersave are not currently supported by BizHawk, so this is not functioning at all.
-I propose that a function called movie.getframe(frame) be added that gets status of all of the buttons, just like joypad.get(), for a given frame of a movie.
--This makes the would make method 2 trivial and fast.
--It would allow me to generalize the function for all platforms easily.
---Certainly there might be some discrepancies about which buttons should be disallowed, if any (Is Reset a button press?), but still. 
--If this method could somehow work for non-readonly movies, then I'd be able to use the movie to get the counts when I load a state that doesn't have cached data.
---Trust me when I tell you that this would be immensely useful for minimum button TASing. The process would be seamless, and all of these methods combined would provide perfect accuracy while being fairly efficient and only using intensive routines when absolutely necessary.

Note: Earlier, I came up with the idea for a function that lets you set what frame of the movie you are on, which would be useful for endless TASes like we've already discussed, adelikat. Do you still think this is worth having?
2012-03-27 06:44:47 +00:00
rolanmen1 36c4dee7b8 Show Errors On Lua In The Output Box More Accurately 2012-03-27 03:34:21 +00:00
zeromus b7eaa1eaf7 luainterface - throw exceptions when lua_resume errors 2012-03-27 03:15:57 +00:00
adelikat 5d483b9e55 revamp rbi baseball script for bizhawk special functions, such as sending script info to the output window. And right aligning display stuff 2012-03-27 02:56:59 +00:00
adelikat 701e0823d5 Really fix PunchOutStats.lua 2012-03-27 02:26:01 +00:00
adelikat 9e0e6407b3 Revamp the Punchout stats using the anchor property of gui.text() 2012-03-27 02:17:17 +00:00
Rolanmen1 adfa18694e Text Alignment Parameter Can Be Either Int Or Either A String 2012-03-27 01:49:27 +00:00
brandman211 e9bb960902 Removed .fm2 / .mc2 from the Play Movie dialog. 2012-03-27 01:39:06 +00:00
adelikat 3f83614629 Overhaul anchoring of messages on screen, anchor right now right aligns, and the x value is the number of pixels from the right edge. This fixes the behavior of the messages config as well as gui.text() and Ram Watch on screen option. 2012-03-27 00:46:58 +00:00
adelikat f145d8e655 Cheat Window, Ram Watc, Lua Console - fix exception when clicking Move Up on the first item in the list. 2012-03-26 23:38:29 +00:00
adelikat 602ee06ffc Lua Cosnole - output message at bottom of dialog to show if changes have occured and saved messages (same as other tool dialogs such as ram watch). Better minimize size parameters of dialog. 2012-03-26 23:31:21 +00:00
brandman211 cba68551d0 -Removed LuaVarArgs from gui_text. I think this function is pointless and over complicates things; let me know if you agree based on this example.
-Fixed DrawMessages, which was setting y = x, making the y parameter of gui.text useless.
2012-03-26 14:48:05 +00:00
rolanmen1 908a9a11c5 Lua Console - Save Session Menu Option Should Now Enable/Disable Correctly. Also Added The Condition That There Should Be At Least One Script To Be Able To Save. 2012-03-26 13:46:28 +00:00
rolanmen1 e2e3ee3301 Loading A Script With Errors Via Load Lua File Now Disables And Shows Error In Output Box. Toggling On A Script With Errors Disables Itself Right Away. 2012-03-26 08:52:06 +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
adelikat 7daf318134 gui.text() - add a 5th parameters "anchor" that will anchor the text to top, left, bottom, or right. Same functionality as the message config anchor option. 2012-03-26 02:58:24 +00:00
adelikat 74648bd806 add punchout stats lua script 2012-03-26 02:06:04 +00:00
adelikat 588888d439 check in my RBIBaseball luaScript modified for bizhawk (only had to change memory.writebyte to mainmemory.write_u8 and it worked fine) 2012-03-26 01:58:04 +00:00
adelikat f72fce15fd Lua Console - fix anchoring properties 2012-03-26 01:41:39 +00:00
rolanmen1 5283b4c06c Avoid Crashing After Trying To Delete A Script With Errors. 2012-03-25 15:34:09 +00:00
rolanmen1 35f42b94f3 Dragging A Lua Session Now Works. Script Errors From Dragging Sessions Now Appears In The Output Box. 2012-03-25 14:51:35 +00:00
rolanmen1 75c0a9f7d3 Script Errors Now Appears In OutputBox. 2012-03-25 09:47:31 +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
brandman211 81586afc20 Finished merging...499 lines. Not as good as I had hoped, but the file would have been significantly smaller if controller templates just used dictionaries and had just a little bit more consistency. 2012-03-25 07:10:11 +00:00
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
brandman211 05f73ab436 Made it so that the Reset flag gets reset (Hehe) every frame, regardless of whether a warning message has been hit already or not. This fixes the ImportFM2 and ImportFCM functions that were broken in the last commit. Thanks TaoTao! 2012-03-11 13:27:11 +00:00
taotao54321 f117e4fce8 ImportMCM() bugfix 2012-03-11 13:21:16 +00:00
brandman211 79944b2d26 -Applied micro500's flag ANDing syntax to all of my functions...I concede that this is a much simpler way to do this.
-Fixed ImportFMV's movie title; before, I mistook it for the game name.
-Made "comment" and "SyncHack" constants.
-Moved the "ControllerDefinition"s outside of all of the loops.
-ImportGMV:
--Emulation Version => Movie Version.
--Added the PAL header.
--Made it so that the 6-button error is a warning; considering that the code already properly handles the controller properly and all that needs to be done is have Bizhawk actually support that kind of input, I don't feel there's a reason to go so far as to kill the conversion in this case.
--Reformatting.
---Notably, I added a player loop to simplify the frame data.
--It seems that 1937M uses a 6-button recording and 1731M has 2-player input...bizarre. Anyway, this means that ImportGMV should be good now.

TODO: ImportVMV, ImportNMV, ImportMCM, ImportSMV, Atari core? :)
2012-03-11 12:24:56 +00:00
taotao54321 575c44f470 Now setrenderplanes() works also for SuperGrafx. 2012-03-11 09:51:23 +00:00
taotao54321 f25ddb2fce Lua: now setrenderplanes() takes variable arguments 2012-03-11 09:16:09 +00:00
taotao54321 05321d19bc NES Graphics Settings bugfix 2012-03-11 07:02:10 +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
taotao54321 beb0b5a74d Lua: added setrenderplanes(). For now, it works only for NES. 2012-03-11 05:47:38 +00:00
taotao54321 3dffd0b9b6 cosmetics (added trailing commas to make it easy to add new lua functions) 2012-03-11 05:13:12 +00:00
adelikat 86da2c6b5e About box - add contributers 2012-03-11 01:22:02 +00:00
adelikat 76f1faf122 Lua - add gui.alert() which draws messages in the alert font 2012-03-11 00:54:24 +00:00
adelikat 635ae613a4 Ram Watch - when drawing watches on screen, use alert font for frozen addresses 2012-03-11 00:50:06 +00:00
taotao54321 3687b8d803 NES Debugger: fixed disassembler to print addresses correctly 2012-03-10 19:42:20 +00:00
taotao54321 bd5f1b3135 NES Debugger: implemented poor disassembler 2012-03-10 17:54:58 +00:00
adelikat 8ae543bb14 Lua implementation - code cleanup 2012-03-10 16:14:19 +00:00
adelikat 40698b119c Add an atari controller image for controller config dialog 2012-03-10 14:10:50 +00:00
adelikat 49c751e4c4 variation of a game added to gamedb.txt 2012-03-10 13:55:36 +00:00
adelikat efd4c5cbab Make...a certain game...work 2012-03-10 13:30:39 +00:00
taotao54321 a69ec16c03 Lua: Implemented writebyte() and fixed readbyte() 2012-03-10 03:58:42 +00:00
taotao54321 66f034b96f Modified gui.text(): convert arguments to int directly 2012-03-10 03:31:07 +00:00
taotao54321 5283b29d54 Lua: Implemented new memory access functions. It can specify datasize and endianness.
Lua: Modified print() to emit a newline.
Lua: Fixed console_clear() not to take any argument.
2012-03-10 03:07:05 +00:00
adelikat 7e38f4a940 Hex Editor - move Add to Ram Watch to Ctrl+W instead of A! A is a hex value that should be able to be typed in 2012-03-10 02:31:34 +00:00
zeromus 65282a366e fix versions stuff 2012-03-10 00:21:40 +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 b207c81fea Removed unused LogWindow::ShowConsole() 2012-03-09 21:22:52 +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
adelikat 88424ca2b7 Fix a few warnings 2012-03-09 20:38:44 +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 c5c1457f32 NES PPU Viewer - clipboard options for palette, pattern, and sprite 2012-03-09 19:22:31 +00:00
adelikat c7ec2aed6c NES Nametableviewer - Screenshot to clipboard option 2012-03-09 19:07:16 +00:00
taotao54321 3017dacdf1 SetMemoryDomain() called StartNewSearch(), so fixed it
It broke LoadSearchFile()
2012-03-09 18:50:26 +00:00
adelikat 4cfceab969 Add screenshot -> clipboard to Ctrl+C hotkey, and add message on screen 2012-03-09 17:31:37 +00:00
taotao54321 9716387b2f HexEditor: set defaultWidth/Height at loading, not in constructor 2012-03-09 17:14:39 +00:00
taotao54321 389693e6f4 HexEditor: member Width, Height hide the original property Width, Height. So renamed to Width_, Height_ 2012-03-09 16:37:55 +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 0e2341b37f Sometimes HexEditor forgot the settings, so fixed it
And refactored loading/saving settings
2012-03-09 16:13:40 +00:00
brandman211 be60ee206a -More tweaking of ImportGMV.
-Fixed InputAdapters with regards to the Genesis 3-Button Controller. It previously did not have a flag placeholder.

Potential issues that I don't have the time to investigate right now:
-When importing 1937M, I get the error "6 button controllers are not supported." Is this a false positive?
-The result of importing 1731M seems sane, but has 2-player input. This run is classified as "One player in a multiplayer game". Is this input normal?
2012-03-09 15:30:09 +00:00
taotao54321 888ce23bee ImportText(): interpret "romChecksum" entry in FM2 2012-03-09 13:26:06 +00:00
taotao54321 dae469543e ImportMCM(): forgot to close input stream 2012-03-09 12:18:16 +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
taotao54321 adceb81e91 ImportFCM(): emits "Platform" entry 2012-03-09 11:49:43 +00:00
taotao54321 363fa25200 ImportFCM(): fixed to interpret reset commands correctly.
It emited an incorrect result for "Zanac (U)" movie (734M).
Control update bytes are not toggle-form, unlike controller update bytes.
2012-03-09 11:38:29 +00:00
taotao54321 869f900d11 MovieImport: modified EMULATIONORIGIN value to "emuOrigin" from "emuVersion".
On previous versions, converted files had two "emuVersion" entries. That seems not right.
2012-03-09 09:30:33 +00:00
taotao54321 da9c95c38e Implemented ImportMCM() 2012-03-09 09:24:47 +00:00
adelikat f9e43cf3d7 Mapper 46 - fix gamedb entry, put in high bits 2012-03-09 03:24:05 +00:00