Commit Graph

1252 Commits (0bb4b77b784dfb1e405c71033bfa9988ac024a2d)

Author SHA1 Message Date
bunnei 731154f79e WaitSynchronization: Added a result code for invalid result, fixed bug. 11 years ago
bunnei 68ddaaa2f5 Thread: Fix WaitSynchronization1 to not set register 1 on thread wakeup. 11 years ago
bunnei 4255f25647 Thread: Use std::find in CheckWait_WaitObject. 11 years ago
bunnei 2f3020a102 Mutex: Cleanup and remove redundant code. 11 years ago
bunnei f09806aed2 Kernel: Renamed some functions for clarity.
- ReleaseNextThread->WakeupNextThread
- ReleaseAllWaitingThreads->WakeupAllWaitingThreads.
11 years ago
bunnei 15b6a4d9ad Kernel: Changed "ShouldWait" to return bool and "Acquire" to return void. 11 years ago
bunnei c68eb15695 WaitObject: Renamed "Wait" to "ShouldWait", made "ShouldWait" and "Acquire" pure virtual. 11 years ago
bunnei 69c5830ef2 Event: Fix implementation of "non-sticky" events. 11 years ago
bunnei 9e6ec3b6cd Session: Change to a WaitObject. 11 years ago
bunnei d2759c578e Kernel: Reschedule on SignalEvent and SendSyncRequest, fix some bugs. 11 years ago
bunnei dde02f79af Mutex: Fix a bug where the thread should not wait if it already has the mutex. 11 years ago
bunnei 9412996c8f Kernel: Moved Wait and Acquire to WaitObject, added way to retrieve a WaitObject safely. 11 years ago
bunnei c06d64528a SVC: Removed a Sleep that made no sense
- Would deadlock the calling thread
- Code would never get hit anyways
11 years ago
bunnei 254e4ebd58 AddressArbiter: Changed to Kernel::Object, big cleanup, removed code that made no sense. 11 years ago
bunnei e5a9f1c644 Kernel: Get rid of WaitTypes and simplify lots of code, removing hacks. 11 years ago
bunnei 6deb1a0119 WaitSynchronizationN: Improved comments 11 years ago
bunnei 6643673f28 WaitSynchronizationN: Refactor to fix several bugs
- Separate wait checking from waiting the current thread
- Resume thread when wait_all=true only if all objects are available at once
- Set output to correct wait object index when there are duplicate handles
11 years ago
bunnei aa01c57ae9 Kernel: Separate WaitSynchronization into Wait and Acquire methods. 11 years ago
bunnei 627e96fc15 WaitSynchronizationN: Handle case where handles=nullptr. 11 years ago
bunnei f5c6d367c9 WaitSynchronizationN: Handle case where handle_count is invalid. 11 years ago
bunnei 064be2b86f WaitSynchronizationN: Handle case where handle_count=0. 11 years ago
bunnei 7faf2d8e06 WaitSynchronizationN: Implement return values 11 years ago
bunnei e4a5d8ad4f Event: Fixed some bugs and cleanup (Subv) 11 years ago
bunnei 1f7a04f05a Thread: Keep track of multiple wait objects. 11 years ago
bunnei 14cbbf4d9b Event: Get rid of permanent_lock hack. 11 years ago
bunnei 5e77e2e1de WaitObject: Added RemoveWaitingThread, fixed a bug, and cleanup. 11 years ago
bunnei c22bac6398 Kernel: Added WaitObject and changed "waitable" objects inherit from it. 11 years ago
archshift 1f109c6b49 Added HID_SPVR service and split HID_U implementation into service/hid/hid.xxx 11 years ago
archshift a68dda6328 Stubbed cam:u service 11 years ago
archshift 7516ceaf93 Stubbed ptm:play service 11 years ago
bunnei 8571befc64 Merge pull request #498 from lioncash/statics
core_timing: Mark several variables as static
11 years ago
Lioncash a3f5e5605c core: Fix a few docstrings 11 years ago
Lioncash bfef0aa07e core_timing: Mark several variables as static
These are only used in this translation unit.
11 years ago
bunnei cbbe9e1500 Merge pull request #492 from archshift/apt
Expose GetSharedFont and NotifyToWait to APT:A and APT:S respectively
11 years ago
bunnei 205170fa62 Merge pull request #241 from linkmauve/better-loader
Improve the loader a bit
11 years ago
Lioncash 8c6edc680c dyncom: Clarify precedence for ternary statements 11 years ago
bunnei 004b23153b Merge pull request #494 from lioncash/shift
dyncom: Implement missing shifts in ScaledRegisterPostIndexed, etc
11 years ago
Chin fa8e6272c8 Cleanup: Logging in Core 11 years ago
Lioncash a873f157d0 dyncom: Implement missing shifts in ScaledRegisterPostIndexed, etc 11 years ago
bunnei be8f665142 Merge pull request #383 from zhuowei/shared_page
Add some support for the shared page
11 years ago
archshift 4d316cbd8e Expose GetSharedFont and NotifyToWait to APT:A and APT:S respectively 11 years ago
Lioncash 8575010a68 dyncom: Handle the ARM A2 encoding of STRT/LDRT
These were also missing the shifted register case.
11 years ago
Lioncash 0a5d450e94 dyncom: Handle the ARM A2 encoding of LDRBT/STRBT. 11 years ago
Zhuowei Zhang edb8450420 Add some support for the shared page (currently 3d slider is implemented) 11 years ago
bunnei 2572a62480 APT: Fix typo in setting return code for NotifyToWait 11 years ago
bunnei 350c5a7e32 DSP: Removed useless spam log for SignalInterrupt 11 years ago
bunnei 4b47ed6194 Merge pull request #482 from yuriks/fix-vblank
Correctness fixes for GPU flipping and interrupts
11 years ago
Emmanuel Gil Peyrot df0d66c7cf Loader: Clean up the ELF AppLoader. 11 years ago
Emmanuel Gil Peyrot 84e52a944d Loader: Clean up the 3DSX AppLoader. 11 years ago
Emmanuel Gil Peyrot 08aaa33500 Loader: Clean up the NCCH AppLoader. 11 years ago
Emmanuel Gil Peyrot 2c24e539a2 Loader: Display the type of the file being loaded. 11 years ago
Emmanuel Gil Peyrot 82ec17db7d Loader: Guess filetype from the magic, or fallback to the extension. 11 years ago
Emmanuel Gil Peyrot 04622a859c Loader: Don’t assume the file hasn’t been read before. 11 years ago
Emmanuel Gil Peyrot b5237e885d Loader: Keep a reference to the file and pass it to the correct AppLoader, instead of loading it multiple times. 11 years ago
Emmanuel Gil Peyrot 2d63df90a9 Loader: Initialize the default NCCH values in the class declaration, not in the constructor. 11 years ago
Emmanuel Gil Peyrot 9d3bb8b7c0 Loader: Remove the useless THREEDSXReader class. 11 years ago
Emmanuel Gil Peyrot 85030c6e6b Loader: Never forget to change is_loaded. 11 years ago
Emmanuel Gil Peyrot 43e699d849 Loader: Don’t duplicate the docstring into the cpp file. 11 years ago
Emmanuel Gil Peyrot bc2212106f Loader: Fix indentation, whitespace, and a few other such cosmetic stuff. 11 years ago
bunnei 3ff5a80d46 Merge pull request #481 from Subv/hm_b
APTU: Stubbed NotifyToWait, taken from 3dmoo.
11 years ago
Sebastian Valle fd1b600e05 APT: Fixed the comment style in some variables 11 years ago
bunnei 394d44cf74 Merge pull request #480 from Subv/arb_2
AddrArbiter: Implement arbitration types 3 and 4.
11 years ago
Yuri Kunde Schlesner a09f71521e GPU: Fix buffer overrun in Display Transfers
Display transfers with the horizontal downscaling flag were calculating
the wrong output size, causing them to write double the amount of data
intended. It is likely that this was perceived as correct due to a
separate bug in calculating source indices which caused the image to be
padded unless the previous bug was present.

This fixes both issues, correcting flickering issues in 3dscraft,
blargSnes and more (caused by the transfer overwriting the back buffer
which followed) as well as potentially fixing other crashes.
11 years ago
Yuri Kunde Schlesner 7630b31672 GSP: Fix appending of interrupts to the shared memory buffer
The code was previously appending the interrupt to after the end of the
buffer, instead of at the end.
11 years ago
Yuri Kunde Schlesner 9e084826b8 GPU: Do periodic VBlank updates using CoreTiming 11 years ago
Yuri Kunde Schlesner e29dd76e12 GPU: Correct wrong default framebuffer address for sub-screen.
It appears this is a mistake, since the sub-screen has no right
framebuffer.
11 years ago
Yuri Kunde Schlesner 5961a2852d GSP: Update framebuffer info on all interrupts
Hardware testing determined that the GSP processes shared memory
framebuffer update info even when no memory transfer or filling GX
commands are used. They are now updated on every interrupt, which isn't
confirmed correct but matches hardware behaviour more closely.

This also reverts the hack introduced in #404. It made a few games
behave better, but I believe it's incorrect and also breaks other games.
11 years ago
Yuri Kunde Schlesner 98e3274935 GPU: Fire GPU interrupts at the correct places.
PDC0 and PDC1 are both VBlank interrupts. PDC0 was being treated as a
HBlank interrupt and fired many more times than it should. They now both
fire together at 60 Hz. This puzzlingly *improves* apparent framerate on
many applications.

A few other interrupts were being fired inside the GSP command
processing instead of on the actual GPU register writes, so they were
moved there, which should cover direct writes tho those registers not
going through the GX command queue.
11 years ago
Subv 728c932dba APTU: Stubbed NotifyToWait, taken from 3dmoo.
Also renamed some handles in the APT:U service to be more descriptive.
Fixed a typo in InquireNotification
11 years ago
Subv 9e2ae289b8 AddrArbiter: Implement arbitration types 3 and 4. 11 years ago
Subv cf071cd897 Services: Added some missing services.
cfg:s, ptm:sysm, apt:s.
apt:s is almost exactly the same as apt:u as per 3dbrew
11 years ago
Lioncash 9288893d29 vfp: Remove dead code 11 years ago
Lioncash f7770b83d4 dyncom: Fix 32-bit ASR shifts for immediates 11 years ago
Lioncash e16b35eb53 dyncom: Remove unused flag macros 11 years ago
bunnei f3a7b66267 Merge pull request #472 from lioncash/overflow
dyncom: Fix some more V-flag setting ops. Plus some cleanup.
11 years ago
Lioncash 2843d1b98b dyncom: Get rid of unnecessary outer-scope variables in InterpreterMainLoop 11 years ago
Lioncash 3ace75a49f dyncom: Fix overflow flag setting for ADD/RSB/RSC/SUB/SBC
Also cleans up CMN, and CMP.
11 years ago
Lioncash 9c2c89b7e1 dyncom: Add a helper function for addition with a carry 11 years ago
darkf 67c644e317 Fix building on MinGW 11 years ago
Lioncash d2a05bbbc6 dyncom: Fix ADC overflow flag setting 11 years ago
bunnei b33380ca59 Merge pull request #456 from Subv/waitsync1
SVC: Wake up the thread after the delay in WaitSync1
11 years ago
Lioncash eabfa5cf43 dyncom: Fix conditional execution of MSR 11 years ago
bunnei 542b0b0057 Merge pull request #466 from Subv/wake
Thread: Prevent waking a thread multiple times.
11 years ago
Subv b68d51ed30 Thread: Prevent waking a thread multiple times.
If a thread was woken up by something, cancel the wakeup timeout.
11 years ago
Subv 38da198aa1 SVC: Wake up the thread after the delay in WaitSync1 11 years ago
archshift 3b555e2512 Stubbed y2r:u IsBusyConversion
There is no documentation available on this function, but we set the result to false as a stub.
This allows Super Little Acorns to move all the way in game with pp3c.
11 years ago
archshift 95be6ad7ae Added Archive ID to fs:USER debug logs involving opening the archive. 11 years ago
archshift 228843c43e Logging: Log all called service functions (under trace). Compile out all trace logs under release for performance. 11 years ago
Yuri Kunde Schlesner 8ad41775cc Kernel: Start using boost::intrusive_ptr for lifetime management 11 years ago
Yuri Kunde Schlesner d751de7341 Kernel: Don't re-assign object's handle when duplicating one 11 years ago
bunnei 6ae12424df Merge pull request #444 from yuriks/handle-reform2
Kernel Lifetime Reform Pt. 2
11 years ago
bunnei 86e07124ad Merge pull request #436 from kevinhartman/system-core
Warn if a new thread is intended to be run on the system CPU core
11 years ago
Yuri Kunde Schlesner 78ea76e12f Thread: Fix nullptr access in a logging function 11 years ago
Yuri Kunde Schlesner 7f1557fbbd Thread: Rename thread_queue => thread_list 11 years ago
Yuri Kunde Schlesner 9bf8462b96 Thread: Reduce use of Handles and move some funcs to inside the class. 11 years ago
Yuri Kunde Schlesner ba72208cd4 Kernel: Move Thread's definition to the header file 11 years ago
Yuri Kunde Schlesner 7b3452c730 Move ThreadContext to core/core.h and deal with the fallout 11 years ago
bunnei d46f650036 Merge pull request #255 from Subv/cbranch_3
Implemented timers
11 years ago
Subv 40c1439c34 Core: Fixed a crash and removed some unused variables.
ARM_Disasm only has static methods, so there's no need to have an instance of it.
11 years ago
Subv 07044651ef SVC: Implemented the Timer service calls. 11 years ago
Subv fc842963c8 DynCom: Add a comment to GetTicks. 11 years ago
Subv 620d77b7e3 Timing: Use CoreTiming::GetTicks to keep track of ticks.
This will keep track of idle ticks for us, and fixes some tickcount-related issues
11 years ago
bunnei cf1bbe8705 Merge pull request #443 from Subv/sleep_thread
SVC: Fixed SleepThread
11 years ago
Subv dfc440785a SVC: Fixed SleepThread.
It will now properly wait the specified number of nanoseconds and then wake up the thread.
11 years ago
bunnei 2432f317e4 Merge pull request #446 from lioncash/umaal
dyncom: Fix UMAAL
11 years ago
Lioncash 1cef6e92d5 dyncom: Fix UMAAL
These need to be done as a 64-bit operation.
11 years ago
Subv 60a373a786 Threads: Use a dummy idle thread when no other are ready.
This thread will not actually execute instructions, it will only advance the timing/events and try to yield immediately to the next ready thread, if there aren't any ready threads then it will be rescheduled and start its job again.
11 years ago
bunnei b659cac2dc Merge pull request #404 from bunnei/more-frame-synch-fixes
GPU: Toggle active framebuffer each frame
11 years ago
bunnei f7a3f45f1e GSP: Toggle active framebuffer each frame 11 years ago
bunnei e6864a1f41 Merge pull request #431 from yuriks/thread-queue-cleanup
Common: Clean up ThreadQueueList
11 years ago
Kevin Hartman 63be6aaadd Warn if a new thread is intended to be run on the system CPU core until we implement correct scheduling for such a thread. 11 years ago
bunnei 4c583732f2 Merge pull request #442 from lioncash/smul
dyncom: Fix SMULWB/SMULWT
11 years ago
Lioncash df5e0f9f28 dyncom: Fix SMULWB/SMULWT
Wasn't doing proper sign-extension
11 years ago
Yuri Kunde Schlesner 122c2bb324 Common: Clean up ThreadQueueList
Replace all the C-style complicated buffer management with a std::deque.
In addition to making the code easier to understand it also adds support
for non-POD IdTypes.

Also clean the rest of the code to follow our code style.
11 years ago
bunnei 3eca33c6a4 Merge pull request #425 from Subv/coretiming
Ported the CoreTiming namespace from PPSSPP
11 years ago
Subv 9bf82beb4c CoreTiming: Ported the CoreTiming namespace from PPSSPP
Implemented the required calls to make it work.

CoreTiming: Added a new logging class Core_Timing.
11 years ago
Yuri Kunde Schlesner a6ad68190f Fix double-free in Service manager during shutdown
Fixes #423.
11 years ago
bunnei 317fe1e528 Merge pull request #438 from lioncash/swp
dyncom: Fix SWPB
11 years ago
bunnei 5ae3a9657d Merge pull request #434 from lioncash/sm
dyncom: Move over SMLALXY
11 years ago
Lioncash 75c211c10f dyncom: Fix SWPB 11 years ago
Lioncash 511e13f3e3 dyncom: Move over SMLALXY 11 years ago
bunnei 088863c921 Merge pull request #376 from Subv/arc_reorder
Archives: Change the folder layout of some archives.
11 years ago
Subv 8fbe5d2dca Archives/Exdata: Don't set concrete_mount_point in the ctor 11 years ago
Subv 32dbb76e00 Archives: Changed the unimplemented archives comment.
It now refers to me as the PoC
11 years ago
Subv 5244ac0e9c Archives: Addressed some comments 11 years ago
bunnei 89bb0ecbd5 Merge pull request #417 from kevinhartman/exclusive-tag-fix
Added exclusive reservation granule from ARMv7 spec to dyncom...
11 years ago
bunnei 9eaef4e04a Merge pull request #413 from purpasmart96/serv_clean
Services: Clean up a few things and add a few function names
11 years ago
Kevin Hartman 8132c01830 Added exclusive reservation granule from ARMv7 spec to dyncom to protect LDR/STREX. 11 years ago
bunnei 9b83f0e158 Merge pull request #272 from rohit-n/sign-compare
Silence some -Wsign-compare warnings.
11 years ago
purpasmart96 379b39e583 Services: Clean up a few things and add a few function names 11 years ago
Subv 123a76c9c8 SaveDataCheck: Fixed a typo 11 years ago
bunnei 6fad32ea98 Merge pull request #422 from lioncash/bxj
dyncom: Partially emulate BXJ
11 years ago
Lioncash f75def619c dyncom: Partially emulate BXJ
Just in case some game studio let the intern write inline assembly or something.
11 years ago
bunnei 4828d0b7af Merge pull request #416 from bunnei/fake-dsp-interrupt
DSP: Signal (faked) interrupt on every frame.
11 years ago
Lioncash e08a39a2f4 dyncom: Actually set the Q flag for SMLABB/SMLABT/SMLATB/SMLATT
Easy skyeye todo fix.
11 years ago
bunnei 8b1ec1a82a Merge pull request #418 from lioncash/qd
dyncom: Implement QADD/QSUB/QDADD/QDSUB
11 years ago
Lioncash d00c22c706 dyncom: Implement QADD/QSUB/QDADD/QDSUB 11 years ago
bunnei e9650f1c61 DSP: Signal (faked) interrupt on every frame.
- Hack to work around games checking that the DSP event has been signaled by a real DSP interrupt.
11 years ago
bunnei cc23269ff4 Merge pull request #407 from Subv/arbiter
AddressArbiter: Ported arbitration type 2 from 3dmoo.
11 years ago
bunnei 81e255a411 Merge pull request #415 from Dante38490/master
Loader: Add support for loading NCCH ROMs with the .3DS extension
11 years ago
bunnei 96e6b2aa50 Merge pull request #408 from Subv/mutex
Mutex: Add the calling thread to the waiting list when needed
11 years ago
Dante38490 e674aa31af Fix correct espace 11 years ago
Dante38490 35a085d567 Add support load 3DS room 11 years ago
bunnei 26f31a2dfb Merge pull request #386 from archshift/y2ru
Stub the y2r:u service
11 years ago
Subv ea80363cc2 Mutex: Add the calling thread to the waiting list when needed
This will happen when the mutex is already owned by another thread. Should fix some issues with games being stuck due to waiting threads not being awoken.
11 years ago
Lioncash 41e1cb12e5 skyeye: Remove duplicate typedefs
citra already has its own typedefs like this.
11 years ago
Subv 90dffe3fc1 Archives: Make SYSTEM_ID and SDCARD_ID strings 11 years ago
Subv 71a063f45c Archives: Changed the way paths are built for the archives.
Each archive now takes a mount point of either NAND or SDMC, and builds its own directory structure there, trying to simulate an HLE-friendly hardware layout
11 years ago
Subv cfd7b219f6 SaveDataCheck: Move the files to nand/title
under /nand/title/high/low/content/00000000.app.romfs
11 years ago
Yuri Kunde Schlesner 930e13cb2c FileSys: Fix crash bug in DiskFile exposed by #400 11 years ago
archshift 48130b1eaa Stub the y2r:u service 11 years ago
Yuri Kunde Schlesner 19b2e739c5 FileSys: Fix a few memory leaks 11 years ago
Subv 0276a75f24 AddressArbiter: Ported arbitration type 2 from 3dmoo.
(Thanks 3dmoo!)
11 years ago
bunnei edbb47d967 Merge pull request #396 from bunnei/default-dyncom
Core: Change default CPU to dyncom.
11 years ago
bunnei caa6d431ee Merge pull request #398 from lioncash/sm
dyncom: Implement SMLAW
11 years ago
Lioncash 6adc0a4622 dyncom: Implement SMLAW 11 years ago
bunnei b11518c272 VFP: Minor cleanup, functionally the same. 11 years ago
bunnei dd21f986b8 Merge pull request #395 from lioncash/rev
dyncom: Implement REVSH
11 years ago
Lioncash 2f19acf064 dyncom: Implement REVSH
Also joins the REV ops into one common place.
11 years ago
bunnei 853b46c681 Core: Change default CPU to dyncom. 11 years ago
Lioncash e0e54f55d7 dyncom: Implement SMLALD/SMLSLD 11 years ago
Subv 3bc9f5509b Archives: Change the folder layout of some archives.
This is to better represent the hardware layout, they are still aren't quite accurate, but this better and will help a bit when implementing the other archives like NAND-RO and NAND-RW
11 years ago
bunnei 031237e52c Merge pull request #381 from Subv/savedatacheck
Implemented the SaveDataCheck archive
11 years ago
bunnei 3e230d6c9e Merge pull request #392 from lioncash/sm
dyncom: Implement SMMLA/SMMUL/SMMLS
11 years ago
Lioncash 64161bcb41 dyncom: Implement SMMLA/SMMUL/SMMLS 11 years ago
Subv 22cfa55302 IVFCArchive: Use a critical log to notify of invalid operations. 11 years ago
Subv 0d03fdec71 SaveDataCheck: Remove unneeded constructor from a class 11 years ago
Subv 2f9a2d410d Archives: Added some documentation to IVFCArchive 11 years ago
Subv aade417b14 Archives: Reduced duplicate code in RomFS and SaveCheck.
Fixed a few warnings and cleaned up the code
11 years ago
Subv 13efbdc201 SaveDataCheck: Preliminary work in this archive.
This allows Steel Diver to boot further, some files are needed.

This is still not ready and needs a big cleanup, this will possibly be delayed until the way we handle archives is fixed (with factory classes instead of ahead-of-time creation of archives)
11 years ago
bunnei 3d9bf13439 Merge pull request #391 from lioncash/pedantic
archive/elf: Minor misc changes.
11 years ago
bunnei dd8a57cb80 dyncom: Implemented LDREXD/STREXD/LDREXH/STREXH 11 years ago
bunnei 3b2da87080 Merge pull request #390 from lioncash/wut
dyncom: Remove dead function InterpreterInitInstLength
11 years ago
bunnei 6ae381ac9e Merge pull request #388 from lioncash/sm
dyncom: Implement SMLAD/SMUAD/SMLSD/SMUSD
11 years ago
Lioncash bf23f94571 elf: Make DidRelocate const 11 years ago
Lioncash 0d81b1e75b archive: Fix initializer list order 11 years ago
Lioncash 67187c15a0 dyncom: Remove dead function InterpreterInitInstLength
Technically eliminates two memory leaks as well.
11 years ago
Lioncash bdbd111c7e soc_u: Fix a missing formatting argument 11 years ago
Lioncash bee4ff8454 armemu: Fix missing Q flag check for SMLSD. 11 years ago
Lioncash 3337b84620 dyncom: Implement SMLAD/SMUAD/SMLSD/SMUSD 11 years ago
Lioncash 48bf0f9996 dyncom: Implement SXTAB16 and SXTB16 11 years ago
bunnei 7c8f6ca051 Merge pull request #358 from neobrain/pica_progress2
pica_progress followups
11 years ago
bunnei fa4cc502e7 Merge pull request #379 from lioncash/sh
dyncom: Implement SHADD8/SHADD16/SHSUB8/SHSUB16/SHASX/SHSAX
11 years ago
Rohit Nirmal c589d82052 Silence some -Wsign-compare warnings. 11 years ago
Lioncash 524da47698 dyncom: Implement SHADD8/SHADD16/SHSUB8/SHSUB16/SHASX/SHSAX 11 years ago
Lioncash 481a6c9652 Fix SADD8/SSUB8 in the armemu 11 years ago
Lioncash 4e2cb06b81 dyncom: Implement SADD8/SSUB8 11 years ago
Subv 97a7381d29 SOC_U: Preliminary implementation of sockets.
Stubbed CreateMemoryBlock

Using Berkeley sockets, and Winsock2.2 on Windows.
So far ftpony creates the socket and accepts incoming connections

SOC_U: Renamed functions to maintain consistency

Also prevents possible scope errors / conflicts with the actual Berkeley socket functions

SOCU: Close all the opened sockets when cleaning up SOCU
11 years ago
Tony Wasserka 18a5e888bb GPU: Pseudo-implement horizontal scaling.
It's not really known how this actually works. Some testing has shown that this probably performs no filtering, and common usage in games suggests it's not actually resizing the image at all.
However, this patch does seem to fix some homebrew showing quasi-duplicated images while still keeping other applications in a working state.
11 years ago
bunnei 59bba04628 Merge pull request #375 from lioncash/uops
dyncom: Implement UADD8/UADD16/USUB8/USUB16/UASX/USAX
11 years ago
Lioncash 3cc4af99d1 dyncom: Implement UADD8/UADD16/USUB8/USUB16/UASX/USAX 11 years ago
bunnei 631f13e462 dyncom: Massive refactor 11 years ago
bunnei 29da5da951 Merge pull request #369 from darkf/mingw_
Fix MinGW build (2)
11 years ago
Lioncash 5894c407c2 vfp: Get rid of a few warnings 11 years ago
Lioncash 6ce4b7b666 vfp: Implement VMOVBRRSS 11 years ago
Lioncash cc9f458ad3 dyncom: Implement USAT16/SSAT16 11 years ago
bunnei b3240f6455 Merge pull request #368 from purpasmart96/dsp_mem
MemMap: Add support for DSP Read & Writes in the memory map
11 years ago
Subv 545ded954d APT:A: Some style changes 11 years ago
darkf 8ba9ac0f74 Fix merge conflicts 11 years ago
purpasmart96 d5049cbba5 MemMap: Add support for DSP Read & Writes in the memory map 11 years ago
Subv 2c89d4d5cd Archives: Implemented ExtSaveData and SharedExtSaveData
They will be stored in /extsavedata/SDMC and /extsavedata/NAND respectively.
Also redirect some APT_A functions to their APT_U equivalents.
Implemented the gamecoin.dat file in SharedExtSaveData in the PTM module.
Implemented formatting the savegame.
Retake a previous savegame if it exists instead of reporting them as not formatted every time a game is loaded.
11 years ago
bunnei 021fb42075 dyncom: Implement USAT/SSAT 11 years ago
bunnei 78bb86293f Merge pull request #253 from purpasmart96/mem_map
MemMap: Removed I/O address's and added more stuff
11 years ago
bunnei aa49019afb dyncom: Various cleanups to match coding style, no functional changes. 11 years ago
bunnei 2d2aa2c0be Merge pull request #361 from lioncash/moreqops
dyncom/armemu: Implement QADD8/QSUB8.
11 years ago
Lioncash d08d9f8747 dyncom: Fix SMLALXY's instruction labels
They were erroneously labeled as SMLAL.
11 years ago
Tony Wasserka 13699f05e7 Merge pull request #303 from linkmauve/fs-cleanup
FileSys cleanup
11 years ago
Lioncash e412c0fc46 dyncom: Implement QADD8/QSUB8 11 years ago
Lioncash 7ad400d5a7 armemu: Implement QADD8/QSUB8 11 years ago
bunnei 472ec0d0cf Merge pull request #360 from lioncash/dynuxt
dyncom: Implement UXTB16/UXTAB16
11 years ago
Lioncash 5c198686ce dyncom: Implement UXTB16/UXTAB16 11 years ago
bunnei 487a80f9f7 Merge pull request #347 from bunnei/frameskip
Frameskip
11 years ago
bunnei df728cb4c2 Merge pull request #355 from lioncash/simp
armemu: Simplify some instructions.
11 years ago
bunnei 3b9d181b8e GPU: Implement frameskip and remove forced framebuffer swap hack. 11 years ago
bunnei 9a403d7dfb Merge pull request #359 from lioncash/vfp
vfp: Actually make the code somewhat readable
11 years ago
bunnei 77363d9590 Merge pull request #331 from yuriks/handle-reform
New Handle manager
11 years ago
Lioncash 9c7f2570f7 vfp: Actually make the code somewhat readable 11 years ago
bunnei bf9b33aa9f dyncom: Implement PKHBT and PKHTB. 11 years ago
bunnei 58cb62fe7b armemu: Fix PKHTB to do an arithmetic shift and correctly decode immediate field. 11 years ago
Lioncash 7d322b5c6f dyncom: Implement USAD8/USADA8 11 years ago
Lioncash 6ce2a38ec4 armemu: Simplify SSAT/SSAT16/SXTB/SXTAB 11 years ago
Lioncash 9f5b53f9ff armemu: Simplify REV/REV16/SXTH/SXTAH 11 years ago
bunnei 762f16c4ad Merge pull request #354 from lioncash/usaduflow
armemu: Fix underflows in USAD8/USADA8
11 years ago
Lioncash 914ecfe04f armemu: Simplify USAT16/UXTB/UXTAB 11 years ago
Lioncash 5e16216afb armemu: Simplify REVSH/UXTH/UXTAH 11 years ago
Yuri Kunde Schlesner 7e2903cb74 Kernel: New handle manager
This handle manager more closely mirrors the behaviour of the CTR-OS
one. In addition object ref-counts and support for DuplicateHandle have
been added.

Note that support for DuplicateHandle is still experimental, since parts
of the kernel still use Handles internally, which will likely cause
troubles if two different handles to the same object are used to e.g.
wait on a synchronization primitive.
11 years ago
Yuri Kunde Schlesner 23f2142009 Kernel: Replace GetStaticHandleType by HANDLE_TYPE constants 11 years ago
Yuri Kunde Schlesner 73fba22c01 Rename ObjectPool to HandleTable 11 years ago
Lioncash 059c65a27a armemu: Fix underflows in USAD8/USADA8
Initially reported by xdec.
11 years ago
Lioncash af69b0840b dyncom: Implement UQADD8, UQADD16, UQSUB8, UQSUB16, UQASX, and UQSAX. 11 years ago
Lioncash 60523113a9 armemu: Implement UQADD8, UQADD16, UQSUB16, UQASX, and UQSAX 11 years ago
Lioncash 52d889d85d dyncom: Implement UHADD8, UHADD16, UHSUB8, UHSUB16, UHASX, and UHSAX 11 years ago
Lioncash 84a0438cf5 armemu: Implement UHADD8, UHADD16, UHSUB8, UHSUB16, UHASX, and UHSAX 11 years ago
bunnei e5ddbfee02 Merge pull request #339 from bunnei/fixup-gsp-synch
Fixup gsp synch
11 years ago
bunnei 5d2ee78d8f Merge pull request #330 from purpasmart96/new_srv
More services & small clean ups
11 years ago
bunnei 5799025ac4 GPU: Further improve synchronization. 11 years ago
bunnei 4783133bbd ARM: Add a mechanism for faking CPU time elapsed during HLE.
- Also a few cleanups.
11 years ago
purpasmart96 9796bc1fa2 More services & small clean ups 11 years ago
bunnei 9c8ec675d9 Merge pull request #343 from lioncash/smmla
armemu: Implement SMMUL, SMMLA, and SMMLS.
11 years ago
bunnei 254567056f Merge pull request #341 from lioncash/moresmops
armemu: Implement SMLALD/SMLSLD
11 years ago
Lioncash 35dbfc7ab0 armemu: Implement SMMUL, SMMLA, and SMMLS. 11 years ago
Lioncash 82c3962b95 armemu: Implement SMLALD/SMLSLD 11 years ago
Lioncash 6b7808e412 armemu: Fix GE/Q flag setting semantics 11 years ago
Emmanuel Gil Peyrot bbe0bf1332 FileSys: Clean up according to the coding style, and remove redundant namespaced names. 11 years ago
bunnei 2bbbe68399 Merge pull request #328 from archshift/writeable
Stubbed IsSdmcWriteable to always return writeable.
11 years ago
archshift 81a538ccc2 Stubbed IsSdmcWriteable to always return writeable. 11 years ago
Lioncash 20fc5f2a35 armemu: Set the Q flag correctly for much of the other ops
They were setting the old S flag.
11 years ago
Lioncash 79a7a432c5 armemu: Set the Q flag properly for SMLAD/SMUAD 11 years ago
bunnei d31a94f06b Merge pull request #334 from lioncash/cpsr
armemu: Fix retrieval of the CPSR in MRS instructions.
11 years ago
bunnei 53447da142 Merge pull request #335 from lioncash/cpsrcreate
armemu: Emulate the GE and Q flags.
11 years ago