Commit Graph

892 Commits

Author SHA1 Message Date
KrimtonZ b9be612ac5 add remaining trap instructions, properly implement traps for the interpreter core 2019-12-16 14:15:26 -06:00
shygoo 5c2aa06f7c [Debugger] Rewrite memory viewer
replace the list control with a custom hex editor control
add ability to select/copy/paste/delete multiple bytes
add byte group size option
make window resizable
fix DPI-related issues
speed up auto-refresh
remove option to disable auto-refresh (new control's cpu usage is insignificant)
move the dump and search buttons into the context menu
change colors of breakpoints to match the command window's
highlight CPU read and write targets while stepping
move address info into a status bar
allow window to open before MMU is initialized
add shortcut keys for various actions
add "follow pointer" feature
add "safe mode" feature
add copy gameshark code feature
add copy with row/group addresses feature
add tabs feature
add jump menu for hardware regions
fix cartridge ROM addresses not being viewable
allow writes to cartridge ROM
use thread-safe functions for reading/writing memory
2019-11-30 11:48:46 -06:00
Duncan Ogilvie 18686e710c
Implement Randomize SI/PI interrupts setting
closes #1656
2019-10-03 11:39:46 +02:00
oddMLan ac0a9258bd Pass Platform solution parameter to UpdateVersion.cmd and package_zip.cmd
This adds the ability to package x64 builds if requested.
2019-09-29 19:20:42 -07:00
LuigiBlood f43201fdea [App] Add "Open Combo" File Menu for Combo N64 + 64DD Loading.
Also added seperate functions for generic game loading, N64 ROM loading, and 64DD Disk loading.
2019-08-22 13:44:30 +02:00
LuigiBlood 3cca0e5549 [App] Add Command Line Combo N64 + 64DD Image Loading
With --combo <Disk Image> <ROM Image>
2019-08-22 13:16:58 +02:00
zilmar c78260ce54 Fix some warnings/errors in android build 2019-08-21 18:57:50 +09:30
shygoo 2137b365bb [Debugger] Add breakpoints for specific interrupts and FP exceptions 2019-08-20 17:20:49 -05:00
LuigiBlood ddaff077b2 [Disk] Add more failsafe in case of invalid offsets 2019-08-14 16:32:13 +02:00
LuigiBlood 3951fbe828 [Disk] Perform Filesize check for D64 files, remove useless check 2019-08-14 16:18:31 +02:00
LuigiBlood 0587f06317 [Disk] Handle D64 RAM Save (expand RAM Area internally) 2019-08-14 00:04:20 +02:00
LuigiBlood 97be800889 [RomList] Properly Byteswap a Development Disk 2019-08-13 22:08:38 +02:00
LuigiBlood 239c8f1128 [Rom] Use Base Game Save File if loaded both a disk and cart 2019-08-13 21:34:55 +02:00
LuigiBlood c7bbd12b41 [Rom] Do not load ROM settings if a disk is loaded
It will prioritize the settings from disk if one is loaded.
2019-08-13 20:26:23 +02:00
LuigiBlood 63d0410d79 [Disk] Make sure to avoid Saving RAM file if there's no RAM Area available + fix D64 Save Area 2019-08-12 23:50:02 +02:00
LuigiBlood affc694149 [Core & UI] Add RAM Area Only (*.ram) Disk Save Type
- It's a bit hacky but it works for *.ndd files.
- For *.d64 files, it might be more problematic for now
2019-08-12 23:07:33 +02:00
LuigiBlood bfd793c184 [UI] Add 64DD Tab in Options 2019-08-12 19:55:10 +02:00
LuigiBlood 0c6936d67e [Core] Perform more thorough disk validity checks & change DiskIdent for Config/RDB
- It didn't detect NUD-4567-JPN dump.
2019-08-12 17:50:04 +02:00
LuigiBlood 0cee922767 [Disk & N64Class] Handle Combo Loading with development disks without TOOL IPL
- You don't actually need the Development IPL for that purpose as games will never actually check.
2019-08-12 14:16:16 +02:00
LuigiBlood cf576246e1 [Core & UI] Handle and Select IPLs depending on Disk Country Code
- Removes 64DD IPL loading when not found, so the user has to either load the IPL ROMs once or set them in the settings
2019-08-12 13:39:56 +02:00
LuigiBlood 53da2eca49 [Disk] Fix Loading Disks without Disk ID 2019-08-12 13:35:30 +02:00
LuigiBlood c8947e93ea [Disk] Perform heuristics to find System Data and Disk ID for *.ndd 2019-08-12 11:40:44 +02:00
LuigiBlood 075c82a3e3 [Disk] Support D64 Master Disk Format 2019-08-11 18:13:52 +02:00
LuigiBlood ce868c57f8 [Rom] Enable 64DD hardware when using 64DD IPL standalone 2019-08-11 18:12:41 +02:00
LuigiBlood b2f0623746 [Rom] Use IsLoadedRomDDIPL 2019-08-11 13:35:49 +02:00
LuigiBlood 3bd5595e77 [Rom] Support CRC calculation for 64DD IPLs 2019-08-11 13:30:51 +02:00
LuigiBlood 053ef11c5a [Disk] Treat 64DD TOOL IPL as seperate 2019-08-11 11:45:52 +02:00
LuigiBlood db35bd6518 [Disk] Handle Sector & Sector Size in AddressBlock function (for future D64 support) 2019-08-11 11:45:05 +02:00
LuigiBlood 444a8a6d1a [Disk] Fix Disk Header Allocation 2019-08-11 11:31:39 +02:00
LuigiBlood 90d4bf0df8 [Disk] Remove MAME Format Conversion Code, support SDK format on its own
Use LBAToByte & LBAToPhys for SDK addressing
2019-08-10 21:18:17 +02:00
zilmar cabef36f91 [Project64] Do not load cheat enhancements if not enabled. 2019-06-26 21:46:12 +09:30
zilmar 7a964b058e Check for recompiler in SysEvent_ResetRecompilerCode 2019-04-29 06:26:07 +09:30
zilmar 352dcff301 Have cheats to record in project64.cfg 2019-04-24 15:17:09 +09:30
zilmar a3d9249fdb
Merge pull request #1613 from oddMLan/restore-oc-gamesettings
Restore Overclock modifier in Game Settings panel
2019-04-23 13:30:53 +09:30
oddMLan cfbc2ee75e [Status Bar] Tweak duration of some messages
Makes debugging with CPU profiling much more pleasant
2019-04-20 13:35:05 -07:00
oddMLan ead4d9311e [Game Settings] Restore Overclock Modifier 2019-04-20 11:57:33 -07:00
oddMLan 01d4ed0bc3 Change some error message boxes to warnings 2019-04-15 08:58:22 -07:00
Francois Berder da37c46cbc Project64-core: Fix undefined behavior in CPifRam::LogControllerPakData
Signed-off-by: Francois Berder <fberder@outlook.fr>
2019-03-27 09:40:37 +00:00
zilmar eb2b1f0a2c [Android] Add review menu 2019-02-20 11:48:28 +10:30
zilmar 9902b542c3 [Android] Turn ABL off by default in android 2019-02-13 15:12:35 +10:30
zilmar be2ee76e79 Start to add in support menu item 2019-02-13 15:11:35 +10:30
zilmar 92d22a014b [Android] Change forum menu link to discord 2019-02-13 11:55:58 +10:30
zilmar 03700db740 [Project64] Add checks around g_Debugger->FrameDrawn 2019-02-10 09:14:51 +10:30
zilmar eaab627f64 [Project64] change memcpy_s to memcpy 2019-01-31 18:41:24 +10:30
LuigiBlood 29a97e6c8b Handle m_RomName for disks that don't have any disk ID (use CRC instead) and also forge disk header differently for plugins. 2019-01-27 22:03:52 +01:00
LuigiBlood b8c47d0087 Alternate calculation of "CRC" for disks that don't have IDs 2019-01-27 21:21:25 +01:00
zilmar e286d90dab
Merge pull request #1576 from LuigiBlood/64dd_load
64DD support overhaul
2019-01-28 06:01:48 +10:30
Frank-74 cbb973a824
Move Fixed Audio setting back to Project64.rdb 2019-01-27 19:14:27 +00:00
LuigiBlood 0870ecbc0d Handle case where IPL ROM is not found (or not yet set up) to display an error message 2019-01-27 13:17:31 +01:00
LuigiBlood 0a347f59f1 DD IPL ROM check in CN64Rom instead 2019-01-27 13:06:36 +01:00
LuigiBlood 3e52ff7b48 Manage 64DD IPL loading errors 2019-01-27 12:52:22 +01:00
LuigiBlood 0233d848c2 Forge 64DD Disk Header for plugins
(For some reason, no idea how common that gets, but CMainGui::ProcessAllMessages can crash the entire emulator with some kind of access violation error...)
2019-01-26 16:58:41 +01:00
LuigiBlood f312476b8b Handle Disk "Header" for Plugins (not forged, may be unreliable) 2019-01-26 14:31:24 +01:00
LuigiBlood 48ce8fbee7 Enable Disk based on what is loaded instead (fix Combo loading) 2019-01-26 09:40:58 +01:00
LuigiBlood b1a2fcfddd Fix Memory leak when switching back and forth from 64DD to N64 2019-01-25 23:12:01 +01:00
LuigiBlood c0b3246a2e Set up EnableDisk when anything 64DD is being loaded 2019-01-25 23:11:33 +01:00
LuigiBlood f300fd9cb5 Uninitialize g_Disk and g_DDRom to prevent exception when ending emulation of a regular ROM after playing 64DD content previously. 2019-01-25 22:53:50 +01:00
LuigiBlood 40841f0d71 Handle Loading in Progress properly (fix Main Menu refresh) 2019-01-25 22:39:05 +01:00
LuigiBlood 047f611c81 Replace tabs with spaces 2019-01-25 21:32:26 +01:00
LuigiBlood 95e31542cf Refactor 64DD game loading (supports custom settings and RDB)
(Nothing done for plugins yet)
2019-01-25 20:20:59 +01:00
LuigiBlood cd80e4f0a4 Handle 64DD loading from ROM Browser, Recent Games, RomInfo
Partially handles settings (loads from RDB and CFG, but unused as emulation starts)
2019-01-25 08:11:40 +01:00
zilmar e974576c00 Merge branch 'master' of https://github.com/project64/project64
# Conflicts:
#	Source/Project64/UserInterface/UIResources.rc
#	Source/Project64/UserInterface/resource.h
2019-01-20 09:02:18 +10:30
zilmar ce03386007 [Project64] Add gamesharks to enhancements 2019-01-20 08:51:38 +10:30
shygoo 6b34e8f77c [Debugger] Add CPU exception breakpoint window 2019-01-17 03:34:24 -06:00
zilmar 52c62e5707
Merge pull request #1554 from oddMLan/misc-bugfixes
Misc bugfixes
2019-01-16 16:59:13 +10:30
oddMLan 2f868d5e4c Fix #1524: Broken speed display
Before updating the status bar ensure that the user enabled speed display in the UI
2019-01-15 22:31:44 -07:00
Frank-74 fe7dd71d53 Fix x64 compile error
I don't know why this is needed, as x86 build works fine without it.  x64 build fails with Project64-core/N64System/Recompiler/CodeSection.h(19): error C2504: 'CDebugSettings': base class undefined
2019-01-15 19:45:54 +00:00
shygoo 4d322191c2 [Debugger] Add CPU Log, break and show log/commands window on CPU errors 2019-01-14 03:18:43 -06:00
zilmar b3ed03c2b0 Merge branch 'master' of https://github.com/project64/project64 2019-01-14 14:33:24 +10:30
zilmar ee8a17b378 [Project64] check if enhancement exists 2019-01-14 14:01:36 +10:30
Frank-74 8b0a51c066 Update Settings.cpp 2019-01-14 02:36:28 +00:00
Frank-74 fb5bdf36ba [Project64] Use CPU_Interpreter if x64
Recompiler doesn't work in x64
2019-01-14 02:02:34 +00:00
zilmar ff8bb9d3fa [Project64] Fix up CSettingTypeApplication::Save for index based setting 2019-01-13 09:42:58 +11:00
zilmar f8e49ae37d Merge branch 'master' of https://github.com/project64/project64 2019-01-12 09:50:51 +11:00
zilmar ed079e4b16 [Project64] Start to add code for enhancements 2019-01-12 09:50:25 +11:00
zilmar e163ecd2f8 [Projext64] Add check around duplicate name 2019-01-10 19:14:18 +10:30
zilmar 590119f414 [Project64] Update names for lle hle settings 2019-01-09 16:39:04 +10:30
oddMLan dfc6d46e4a Add Unaligned DMA options to Defaults and Game Settings
This allows some romhacks to run
2018-12-29 00:42:44 -07:00
oddMLan 578aa012d1 [Rom Browser] Add Show File extensions option and disable it by default 2018-12-28 20:57:01 -07:00
zilmar eddd90bbeb [Project64] Try to fix sync to audio 2018-12-20 20:49:14 +10:30
zilmar 9ab7a83c26 [Project64] Remove FR_None option 2018-12-20 16:08:26 +10:30
oddMLan 28bd4ab983 [Rom Browser] Add "Name" column
Do not renumber items in the language file
2018-12-09 03:27:53 -07:00
shygoo d7ad7be6cb [Debugger] Improve address checks (fix #1515) 2018-12-08 22:26:11 -06:00
shygoo 9c2c716355 Merge https://github.com/project64/project64 into memview-autorefresh-option 2018-12-08 06:47:00 -06:00
shygoo a2808d94ce [Debugger] Make auto-refresh optional in memory viewer 2018-12-08 06:45:52 -06:00
zilmar 88386600ed [Audio] Have sync audio only if plugin enables it 2018-12-08 21:23:06 +10:30
zilmar 6a8405f7ed [Project64]Add option to not show VI/s and make it default 2018-12-02 16:00:56 +10:30
zilmar bb5f8ea4f0 [Project64] Make Project64-Video default plugin 2018-12-02 15:11:27 +10:30
zilmar b957cac73d [Project64] Remove parameter to CSettingTypeApplication::Initialize 2018-12-02 15:01:54 +10:30
Frank-74 9535641b7a
Get Fixed Audio from audio rdb 2018-11-26 22:39:56 +00:00
zilmar 5f39f3d122 [Project64] Fix bug in CSettingTypeRomDatabase::Load and some code clean up 2018-11-26 23:03:27 +10:30
zilmar bac6023a5c [Project64] Use Settings instead of default in config file 2018-11-26 11:26:08 +10:30
zilmar 6c2c0d5dd6 [Project64] Make sure closeDll is set before calling it 2018-11-26 11:23:39 +10:30
zilmar d531abc885 [Project64] Add ability to change defaults 2018-11-25 20:14:15 +10:30
zilmar a22512c9ca [Project64] Always close plugins 2018-11-24 13:22:35 +10:30
zilmar 6a65305e74 [Project64] More fixing for android 2018-11-20 14:11:32 +10:30
zilmar b93736414f [Project64] Normalize paths 2018-11-19 21:16:58 +10:30
zilmar e7f93f2def [Project64] Remove #include <objbase.h> from Common/Trace.h 2018-11-18 11:12:49 +10:30
oddMLan 8475fa9c14 Use 8MB RDRAM if ROM is not in RDB 2018-08-18 23:13:47 -07:00
zilmar c1200514c6 Make sure PC is updated on BP 2018-07-31 07:02:02 +10:00