Commit Graph

1224 Commits

Author SHA1 Message Date
25c537613e *Statically* allocate mempak page 0 buffer. 2016-02-04 14:32:43 -05:00
ab7671964b Re-express Mempaks[][] allocation as pages * bytes_per_page. 2016-02-04 14:30:23 -05:00
41ff26122a Have stdio.h to guarantee fopen() and fclose(). 2016-02-04 14:16:46 -05:00
53e07d02e2 Have <memory> included to guarantee std::auto_ptr. 2016-02-04 14:09:56 -05:00
zilmar 7fe12881df [Project64] Use Common/stdtypes.h instead of stdint.h 2016-02-04 21:28:07 +11:00
zilmar 3914220a30 Merge pull request #965 from death-droid/TransferPack
Transfer pack
2016-02-04 21:24:47 +11:00
Emmet Young 494ad71352 Change declaration, we should only need int. 2016-02-04 12:57:09 +11:00
Emmet Young e6b1fd3aec Fix up reading and writing of the RTC data to the save file.
Correct the RTC emulation behaviour, made it more like NRAGES, various emulators i was basing mine off seemed to not correctly update the RTC.
2016-02-04 00:33:03 +11:00
Emmet Young dd7cf4af10 Missed two frees, when swapping out for deletes 2016-02-03 13:42:06 +11:00
Emmet Young 26d4bea1f1 Switch to using an auto_ptr for our buffers, and switch fopen/fwrites. to make use of the CFile class. 2016-02-03 13:34:52 +11:00
Emmet Young 696d419e5b Improve behaviour of MBC3 if statements. 2016-02-02 19:44:18 +11:00
Emmet Young aab625734d Fix up spelling mistake in Tansferpak.cpp naming, 2016-02-02 15:09:47 +11:00
Emmet Young 1ddeb52f7f Allow transferpaks to be set through the RDB. Still need to implement the actual settings in the GUI 2016-02-01 23:41:46 +11:00
Emmet Young 258a5a0eb8 Transferpak: Add support for RAM saving, and RTC saving (Visual Boy Advance format)
Remove UpdateRTC() till I can get a better idea if the RTC code works properly.
2016-02-01 19:58:37 +11:00
zilmar 2b6fdc000e [Project64] Add more logging 2016-02-01 17:33:19 +11:00
zilmar d70ad198b4 Merge branch 'master' of https://github.com/project64/project64 2016-02-01 17:05:45 +11:00
zilmar a985d587bd [Project64] 7Zip just on windows 2016-02-01 17:04:05 +11:00
zilmar 4f61d7c5a3 [Project64] Get MempakNames to set path in CPath constructor 2016-02-01 17:03:19 +11:00
zilmar 649cc48598 [Project64] Add #include <stdlib.h> for strtoul 2016-02-01 17:02:14 +11:00
luigiblood 6469b523b4 [64DD] Add brackets for if g_DDRom == NULL 2016-02-01 01:38:27 +01:00
luigiblood f63b746c73 [64DD] Load 64DD IPL on g_DDRom seperately
Fixes double g_Rom delete which makes Windows not happy.
2016-02-01 01:31:14 +01:00
luigiblood d2d611c137 [64DD] Only Head 0 Track 6 is supposed to fail. 2016-01-30 22:23:27 +01:00
Emmet Young 74d3825870 Basic implementation of the RTC for the Transferpak.
Unable to properly test this due to Project64 not being able to emulate the co-processor - http://www.emutalk.net/threads/54598-Pok%C3%A9mon-Stadium-%28Pocket-Monster-Stadium%29-requires-RSP-emulation @project64 @LuigiBlood @LegendOfDragoon
2016-01-31 01:52:26 +11:00
Emmet Young ff5fcf6d33 Basic implementation of the Transferpak, is now partially working.
Have to re-implement the RTC and ensure the mbc emulation of all current carts is accurate.
Settings implementation needs to be done as well.

This code is based on work from NRAGE and Bobby Smiles work on Mupen64plus's implementation.
2016-01-29 22:17:59 +11:00
zilmar 5cad324699 Merge pull request #958 from LuigiBlood/64dd_2
64DD IPL ROM Recompiler support
2016-01-29 10:06:21 +11:00
luigiblood 03bd97c46b [Recompiler] Fix COP0_MT() Cause case
Results in 64DD IPL ROM fully working in Recompiler.
Thanks zilmar!
2016-01-28 23:59:53 +01:00
Emmet Young c6fa59ac3a Made a slight mistake when porting over from my old branch.
Mempak and Rumblepak will work fine again.
2016-01-28 22:51:48 +11:00
Emmet Young e879431606 Prepare the emulator for easier implementation of the transferpak, pass Command[5] directly into the Pak functions, and also generate the address beforehand. 2016-01-28 21:58:14 +11:00
zilmar 3a1fc904c6 [Project64] Code cleanup and added some more log messages 2016-01-28 20:40:08 +11:00
zilmar a6bfe74a28 [Project64] Be able to pass base dir to app init 2016-01-28 20:37:44 +11:00
zilmar 8df90936f8 Merge pull request #944 from LuigiBlood/64dd_2
Fix Disk.cpp time/date code & F-Zero X (J) RDB update
2016-01-28 17:51:00 +11:00
Emmet Young 643a684c77 Change up the way Mempaks are meant to work, use the standard file functions. Mempaks are now loaded in when the game launches, and file handles are only opened durring read and writes 2016-01-28 14:02:05 +11:00
luigiblood 5505db5201 Fix Disk.cpp time/date code 2016-01-27 22:41:31 +01:00
zilmar 8bf0902d33 [Projct64] Use real value for _RC_NEAR, _RC_CHOP, etc 2016-01-27 20:53:08 +11:00
zilmar 2d435936ec [Project64] Change DWORD to uint32_t in CRecompilerOps::SPECIAL_DADDU 2016-01-27 20:51:16 +11:00
zilmar 3e888b9b74 {Project64] Clean up some code in N64Class.cpp 2016-01-27 20:50:25 +11:00
zilmar 434e8807ac [Projecy64] Cleanup usage of __FUNCTION__ in FlashRam.cpp 2016-01-27 20:49:26 +11:00
zilmar 94a7f2f8b5 [Project64] Remove windows.h from Eeprom.cpp 2016-01-27 20:39:46 +11:00
zilmar a228a9d1f9 line ends ? 2016-01-27 20:11:59 +11:00
zilmar a86ba8db2d Merge pull request #937 from LuigiBlood/64dd_2
64DD support
2016-01-27 19:07:19 +11:00
luigiblood 226c29d5c7 Disk Conversion support, AppCleanup() update
There's still a problem with Open ROM but other than that it's fully functional.
2016-01-26 15:31:24 +01:00
luigiblood 39a1c9f407 Added "Play Game with Disk" option 2016-01-25 20:58:57 +01:00
luigiblood 82779033d3 Disk Write fixed, Recompiler support tentative
Unfortunately there's an opcode that Recompiler doesn't recognize.
However once it's implemented, there's no reason it shouldn't work.
For Disk Writing, so far it works, it seems to not have any trouble so far.
2016-01-25 15:47:12 +01:00
luigiblood b31d18d8c4 Working Read (Interpreter only)
Write is slightly buggy for some reason.

Conflicts:
	Source/Project64-core/N64System/Mips/Disk.cpp
	Source/Project64-core/N64System/Mips/Dma.cpp
	Source/Project64-core/N64System/Mips/MemoryVirtualMem.cpp
2016-01-23 22:58:45 +01:00
LegendOfDragoon 392d63a0de Fix regression in CRecompilerOps::SPECIAL_DADDU()
It should only add carry if GetMipsRegLo(source2) != 0
2016-01-23 02:18:08 -08:00
luigiblood 305f4cfb16 Fixed code and credited Happy_
Good timing needed to fully work. (Not figured out)
2016-01-22 03:17:25 +01:00
luigiblood 0501eb70da 64DD Sector Read working 2016-01-20 17:43:23 +01:00
luigiblood 002cb7f5ce 64DD support tentative 2016-01-20 14:31:29 +01:00
luigiblood 25f56e6887 Added CN64Disk class with basic functions 2016-01-20 01:14:18 +01:00
zilmar 6fbfc144b5 Merge pull request #911 from LuigiBlood/64dd
64DD RTC support, Enable Disk setting
2016-01-20 09:20:34 +11:00
luigiblood 530ef48eb2 64DD RTC support, Enable Disk setting 2016-01-19 19:53:18 +01:00
zilmar 530245e938 Merge pull request #901 from LuigiBlood/64dd
Retail 64DD IPL ROM support (boots)
2016-01-19 08:22:32 +11:00
LegendOfDragoon 53baf6d792 Fix issue with SPECIAL_DADDU 2016-01-18 12:22:58 -08:00
luigiblood 4fb6c2219d Retail 64DD IPL ROM support (boots) 2016-01-18 20:15:01 +01:00
zilmar 691f09159b [Project64] remove Speed limiter code from non windows 2016-01-18 22:32:50 +11:00
zilmar 1dd05282d8 [Project64] Misc code clean up 2016-01-18 22:31:36 +11:00
zilmar 5dca0c80a5 [Project64] Use memory management code for RecompilerMemory.cpp 2016-01-18 22:30:01 +11:00
zilmar b8c00dd5fe [Project64] Remove #include <Objbase.h> from RecompilerClass.cpp 2016-01-18 22:28:38 +11:00
zilmar df04d377e0 [Project64] Clean up ProfilingClass.cpp 2016-01-18 22:25:10 +11:00
zilmar b173fbb642 [Project64] Remove windows.h from CodeSection.cpp 2016-01-18 22:04:49 +11:00
zilmar 9bdea7da40 [Project64] Remove Protect Memory duplicate code 2016-01-18 22:02:50 +11:00
zilmar 9b2a398181 [Project64] get SystemTiming.cpp to use standard types 2016-01-18 22:00:16 +11:00
zilmar 0175adc49f [Project64] Get Sram to use standard types 2016-01-18 21:02:01 +11:00
zilmar ae734ed71c [Project64] Get Rumblepak.cpp to use standard types 2016-01-18 19:55:34 +11:00
zilmar 790de2eace [Project64] get PifRam.cpp to use standard types 2016-01-18 19:54:39 +11:00
zilmar b17ce831f2 [Project64] Cleaned up some warning in MemoryVirtualMem.cpp 2016-01-18 19:52:14 +11:00
zilmar e5fe71278a [Project64] Remove usage of windows.h from FramePerSecondClass on non windows 2016-01-18 19:51:12 +11:00
zilmar 957a29fac1 [Project64] Remove MemoryLabelsClass.cpp 2016-01-18 19:47:47 +11:00
zilmar e212bee0a4 [Project64] Fix rounding code to compile on VS 2008 2016-01-18 05:44:19 +11:00
zilmar 0f4ddee3eb [Poject64] Add Load32CartridgeDomain1Address1 and Load32CartridgeDomain1Address3 2016-01-17 17:38:29 +11:00
zilmar f87c2051b5 [Project64] Get the rounding code to use fesetround 2016-01-17 17:34:05 +11:00
no 1b82fd0686 [core] std::memcpy() undeclared, so use memcpy(). 2016-01-14 19:19:51 -05:00
zilmar 20f7384918 Merge pull request #878 from cxd4/undeclared-memset
[core] compile errors from not declaring standard <string.h> functions
2016-01-15 09:10:12 +11:00
zilmar 46f2afaecc [Project64] N64RomClass.cpp Unprotect memory on freeing it 2016-01-15 08:11:12 +11:00
zilmar 05b2f1e5cf [Project64] Remove windows.h from N64RomClass.cpp 2016-01-15 08:06:33 +11:00
no bc1405b6af ... and from core/N64System/Mips/../../stdafx.h 2016-01-14 01:39:16 -05:00
no 5b62fdd101 ... and from core/N64System/../stdafx.h 2016-01-14 01:34:38 -05:00
zilmar c92922259a Merge pull request #879 from cxd4/more-concat-fixes
[core] Fix more incompatible string concatenations in CPU messages.
2016-01-14 13:49:23 +11:00
no 7bf9a23e28 Try using stdstr_f instead to concatenate inside DisplayError(). 2016-01-13 20:04:31 -05:00
zilmar 266b277a1d [Project64] Remove windows.h from FunctionMapClass.cpp 2016-01-14 08:38:54 +11:00
zilmar 02b7db1007 Merge branch 'master' of https://github.com/project64/project64 2016-01-14 08:36:23 +11:00
zilmar 6b41bc3789 [Project64] Get OpcodeName.cpp to use standard types 2016-01-14 08:35:32 +11:00
zilmar ad700c5704 [Project4] Clean up OpcodeName.cpp 2016-01-14 08:32:04 +11:00
zilmar fbe8ca9719 [Project64] Clean up PifRam.h 2016-01-14 08:29:55 +11:00
no 87376ec7b1 unknown string concatenation in DisplayError 2016-01-13 15:42:01 -05:00
no 7994f21868 unknown string concatentation in CPU_Message and stdstr_f 2016-01-13 15:36:46 -05:00
no 2ebf64503a error: `memcpy' was not declared at this scope. 2016-01-13 10:21:58 -05:00
no 344299d319 error: `memset' was not declared at this scope. 2016-01-13 10:20:05 -05:00
no ebf3922c51 `sprintf' was not declared at this scope. 2016-01-13 10:18:10 -05:00
no ac7b0d9601 error: `strcpy' was not declared at this scope. 2016-01-13 10:17:03 -05:00
no be2a5dba46 error: `sprintf' was not declared in this scope. 2016-01-13 10:01:40 -05:00
zilmar aea724b81a [Project64] Add stdafx.h 2016-01-13 22:53:48 +11:00
zilmar 7c4ffd9a07 [Project64] Remove windows.h from MemoryVirtualMem.cpp 2016-01-13 22:52:21 +11:00
zilmar c58f0ca470 [Project64] Get Dma.cpp to use memory management 2016-01-13 22:20:34 +11:00
zilmar 51cc15687d [Project64] get headers to be full path 2016-01-13 22:15:30 +11:00
zilmar 58f3502bd5 [Project64] Sync InterpreterOps32.cpp 2016-01-13 20:35:08 +11:00
zilmar 6164b45b6e [Project64] Sync InterpreterCPU.cpp and InterpreterOps.cpp 2016-01-13 20:33:17 +11:00
no f83c4bda68 [core] fixed strtoul() for more compile errors 2016-01-05 19:09:10 -05:00
zilmar 96712e6042 [Project64] Clean up some of the includes 2016-01-05 16:58:31 +11:00
zilmar 50c4030c62 [Project64] remove CMipsMemory_CallBack 2016-01-05 07:46:56 +11:00
zilmar ff8623ad2c [Project64] Mempak uses standard types 2016-01-05 07:37:09 +11:00
zilmar 3ba0f072ce [Project64] Flashram to use standard types 2016-01-05 07:34:16 +11:00
zilmar 0211680a16 [Project64] Needed to update CodeSection.cpp 2015-12-24 07:38:50 +11:00
zilmar 73549ee72f {Project64] Convert internal strings to be utf8 instead of utf16 2015-12-24 07:04:36 +11:00
zilmar cf2d34fed3 [Project64] Cleanup ProfilingClass.cpp 2015-12-24 06:51:37 +11:00
zilmar 6ffd1663ca [Project64] Clean up FramePerSecondClass.cpp 2015-12-24 06:41:11 +11:00
zilmar 2e4d73defa [Project64] Disable copy constructor for CSystemTimer 2015-12-23 13:29:01 +11:00
zilmar a05c3f5c00 Merge branch 'master' of https://github.com/project64/project64 2015-12-22 19:06:11 +11:00
zilmar 379cff09ae [Project64] Add Write32PifRam 2015-12-22 19:04:55 +11:00
zilmar e57ddf6181 [Project64] Add Write32CartridgeDomain2Address2 2015-12-22 17:09:27 +11:00
zilmar a8dacad8bf [Project64] Add Write32SerialInterface 2015-12-22 17:02:08 +11:00
zilmar d30e09c73f [Project64] Add Write32RDRAMInterface 2015-12-22 16:57:18 +11:00
zilmar 07f43c3a46 [Project64] Add Write32PeripheralInterface 2015-12-22 16:51:50 +11:00
zilmar 8a62fdf896 [Project64] Add Write32AudioInterface 2015-12-22 16:46:08 +11:00
zilmar 1a02c7130c [Project64] Add Write32VideoInterface 2015-12-22 16:40:19 +11:00
zilmar adc422fca7 [Project64] Add Write32MIPSInterface 2015-12-22 16:31:13 +11:00
no f0eef4df74 [core] fixed undeclared SSE2 intrinsics on non-Win32 2015-12-21 18:21:39 -05:00
zilmar 3a6df25a2c Merge pull request #840 from cxd4/fix-undeclared-functions
[core] Explicitly ensure that the necessary includes are included.
2015-12-22 09:13:55 +11:00
zilmar 15569ddb85 Merge pull request #841 from cxd4/no-more-__int64
[core] replaced surviving occurrences of __int64
2015-12-22 09:12:27 +11:00
zilmar 31159ed039 [Project64] Add Write32DPCommandRegisters 2015-12-22 08:49:58 +11:00
zilmar 34dab07f83 [Project64] Add Write32SPRegisters 2015-12-22 08:41:49 +11:00
no caee888b23 [core] replaced surviving occurrences of __int64 2015-12-21 16:38:56 -05:00
zilmar 0a8255bd39 [Project64] Add Write32RDRAMRegisters 2015-12-22 08:35:06 +11:00
zilmar d5ceb3d367 [Project64] Add Load32Rom 2015-12-22 08:24:37 +11:00
zilmar 4fe7ce8242 [Project64] Add Load32PifRam 2015-12-22 08:15:26 +11:00
zilmar 78af6b08a2 [Project64] Add Load32CartridgeDomain2Address2 2015-12-22 08:03:14 +11:00
no 3ac1103799 undeclared int8_t and other POSIX type names 2015-12-21 15:50:25 -05:00
no 0d2f09a840 undeclared strstr(), strchr(), strtoul(), atoi() and others 2015-12-21 15:38:52 -05:00
no a225ae2cf1 undeclared sprintf() 2015-12-21 15:36:48 -05:00
no ec23fd324d undeclared sprintf() 2015-12-21 15:35:11 -05:00
no c49258420a undeclared memset() 2015-12-21 15:34:48 -05:00
no 6abb430725 undeclared memset() 2015-12-21 15:32:33 -05:00
no 83ab2996aa undeclared memset() 2015-12-21 15:28:53 -05:00
no 33bbd39b99 undeclared memset() 2015-12-21 15:26:44 -05:00
no b3a6b03fb9 undeclared sprintf() 2015-12-21 15:22:39 -05:00
no 6a18af08a3 undeclared sprintf() 2015-12-21 15:18:20 -05:00
no 9dab4b3bed undeclared memcpy() 2015-12-21 15:17:29 -05:00
zilmar f8619bb6e4 [Project64] Add Load32SerialInterface 2015-12-22 06:59:17 +11:00
zilmar e3caeb8b07 [Project64] Add Load32PeripheralInterface, Load32RDRAMInterface 2015-12-22 05:45:07 +11:00
zilmar 9778846ae8 [Project64] Add Load32AudioInterface 2015-12-21 21:06:51 +11:00
zilmar 6d4ea6d693 [Projext64] Add Load32VideoInterface 2015-12-21 21:01:56 +11:00
zilmar 0324714be7 [Project64] Add Load32MIPSInterface 2015-12-21 20:56:24 +11:00
zilmar cf3b797ebd [Projext64] Add Load32DPCommand 2015-12-21 20:52:59 +11:00
zilmar 9692ecf1b4 [Project64] Add Load32SPRegisters 2015-12-21 20:49:13 +11:00
zilmar 4a0d9b640b [Project64] Add Load32RDRAMRegisters 2015-12-21 20:45:08 +11:00
zilmar 012e247514 [Project64] Remove __interface CMipsMemory_CallBack 2015-12-21 18:35:22 +11:00
zilmar f23ba48309 [Project64] Clean up LoopAnalysis.cpp 2015-12-21 18:26:51 +11:00
zilmar 6b07620b74 [Project64] Cleanup RecompilerOps.cpp 2015-12-21 18:24:16 +11:00
zilmar 19303a0210 [Project64] Clean up CheatClass.cpp 2015-12-21 18:18:28 +11:00
zilmar fcc3a0fa8b Merge branch 'master' of https://github.com/project64/project64 2015-12-21 17:01:51 +11:00
no 865f1f74e7 s/util.h/Util.h 2015-12-19 18:57:54 -05:00
no c1d80674fe s/common/Common 2015-12-19 18:57:27 -05:00
no 9978ef6384 s/GFXplugin/GFXPlugin 2015-12-19 18:50:17 -05:00
no 5291b1f96c s/N64class.h/N64Class.h 2015-12-19 18:46:31 -05:00
7d944ac8f5 [core] removed extra, unnecessary branch for the NORMAL case 2015-12-18 21:20:10 -05:00
zilmar 5c27d6d1e8 [Project64] rename tofix to legacycode 2015-12-15 17:01:06 +11:00
32aefd4b10 s/m_Limitor/m_Limiter 2015-12-14 17:10:30 -05:00
df83c3c440 s/CSpeedLimitor/CSpeedLimiter 2015-12-14 17:09:12 -05:00
b50163938e SpeedLimitorClass.cpp --> SpeedLimiterClass.cpp 2015-12-14 17:01:10 -05:00
664f71941a SpeedLimitorClass.h --> SpeedLimiterClass.h 2015-12-14 16:56:39 -05:00
zilmar 95a3319735 [Project64] Update logging system to use module and severity 2015-12-14 21:51:33 +11:00
zilmar b4a3516654 [Project64] Clean up RecompilerMemory.cpp 2015-12-13 19:26:41 +11:00
zilmar c3a9525006 [Project64] Cleanup RecompilerClass.cpp 2015-12-13 18:52:22 +11:00
zilmar 21bce73cca [Project64] Cleanup Mempak.cpp 2015-12-13 18:29:48 +11:00
zilmar d8a4b4810b {Project64] Cleanup MemoryVirtualMem.cpp 2015-12-13 18:26:31 +11:00
zilmar abcfe60a51 [Project64] Cleanup FlashRam.cpp 2015-12-13 18:10:40 +11:00
zilmar 29d693ba1f [Project64] Clean up Sram.cpp 2015-12-13 18:07:03 +11:00
zilmar 199fa2f7f8 [Project64] Clean up SystemTiming.cpp 2015-12-13 17:58:08 +11:00
zilmar a6c0ddece4 [Project64] clean up TLBclass.cpp 2015-12-11 06:08:39 +11:00
zilmar 17b24f299f [Project64] Get Breakpoint to use char * instead of wchar_t * for filename 2015-12-09 22:37:58 +11:00
zilmar 65ebd6ff55 [Project64] Clean up X86ops.cpp 2015-12-09 22:26:58 +11:00
Samuel Yuan cf8a624a25 Fix "Saved current state" and "Load state"
Certain strings won't show up correctly.
2015-12-06 11:29:22 -05:00
zilmar 3e4dd1cc23 Merge branch 'master' of https://github.com/project64/project64 2015-12-06 21:06:36 +11:00
zilmar a429a7fd08 [Project64] Create Project64-core 2015-12-06 21:05:39 +11:00