bunnei
b1712b8312
Merge pull request #14 from ogniK5377/master
...
Changed ICommonStateGetter::ReceiveMessage to allow further execution in games
8 years ago
bunnei
92801b1c34
renderer_gl: Clear screen to black before rendering framebuffer.
8 years ago
David Marcec
f3264dd78d
Games expect 15 for ICommonStateGetter::ReceiveMessage in order to continue execution
8 years ago
bunnei
ebd613c2cc
renderer: Render previous frame when no new one is available.
8 years ago
bunnei
71eeab257f
lm: Fix IPC header for Initialize.
8 years ago
bunnei
7bedea73a8
time: Implement GetStandardUserSystemClock, GetCurrentTime.
8 years ago
bunnei
d81a984d4a
audio: Add files to CMake.
8 years ago
bunnei
2e8246a02c
hid: Remove unused registered_loggers.
8 years ago
bunnei
7a50d56d0e
audio: Stub out AudOutU::ListAudioOuts.
8 years ago
bunnei
f4a3d28224
hid: Implement IAppletResource::GetSharedMemoryHandle.
8 years ago
bunnei
115d3e133f
qt: Update about dialog to show license for GPLv2 only.
...
Fixes #6 .
8 years ago
bunnei
22659afcd0
shared_memory: Minor fixes and cleanup.
8 years ago
bunnei
974362bc12
svc: Implement svcMapSharedMemory.
8 years ago
bunnei
bd58c5470c
kernel: Increase default stack size to 64K.
8 years ago
Jannik Vogel
1a93237c23
Remove Surface Viewer stub
8 years ago
bunnei
7435dc53c8
Merge pull request #4 from spycrab/aboutdialog
...
Implement "About" dialog
8 years ago
spycrab
c493bd9cc9
Implement "About" dialog
8 years ago
Thog
06e288cea0
Add missing FileType declarations in GuessFromExtension and GetFileTypeString
8 years ago
James Rowe
a24dbcac6e
yuzu qt copy windows deps renamed
8 years ago
MerryMage
80db02c497
Minor cleanup
8 years ago
MerryMage
b3c303539e
macOS: Update Info.plist
8 years ago
James Rowe
c2d28351c7
Add new icons and fix up the linux paths for install
8 years ago
MerryMage
668e5452fa
Update dynarmic to bc73004
...
bc73004 a64_merge_interpret_blocks: Remove debug output
4e656ed tests/A64: Randomize PSTATE.<NZCV>
fd9530b A64: Optimization: Merge interpret blocks
3c9eb04 testenv: Use format constants
324f3fc tests/A64: Unicorn interface fixes
98ecbe7 tests/A64: Fuzz against unicorn
b1d38e7 tests/A64: Move TestEnvironment to own header
5218ad9 A64/data_processing_pcrel: bug: ADR{,P} instructions sign extend their immediate
b1a8c39 A64/data_processing_addsub: bug: {ADD,SUB}S (extended register) instructions write to ZR when d = 31
64827fb a64_emit_x64: bug: A64CallSupervisor trampled callee-save registers
1bfa04d emit_x64: bug: OP m/r64, imm32 form instructions sign-extend their immediate on x64
edadeea A64 inferface: Use two argument static_assert
9ab1304 A64: Add ExceptionRaised IR instruction
6843eed Update readme
7438d07 A64/translate: Add TranslateSingleInstruction function
8 years ago
MerryMage
e86bdb1601
Fix build on macOS and linux
8 years ago
bunnei
17af2937fe
arm_unicorn: Log unmapped memory access address.
8 years ago
bunnei
95ce471774
config: Default log filter to trace.
8 years ago
bunnei
1247c53786
yuzu: Update license text to be consistent across project.
8 years ago
James Rowe
70e65ee63a
Remove settings issues in sdl and fix a few files that broke in mingw
8 years ago
James Rowe
18ca3ca751
Removing unused settings and yuzu rebranding
8 years ago
James Rowe
f5f28a4f67
Get yuzu sdl to start compiling
8 years ago
James Rowe
389979018c
Remove gpu debugger and get yuzu qt to compile
8 years ago
James Rowe
1d28b2e142
Remove references to PICA and rasterizers in video_core
8 years ago
James Rowe
ebf9a784a9
Massive removal of unused modules
8 years ago
bunnei
890bbc0cd3
config: Default CPU core to Unicorn.
8 years ago
bunnei
8e51c61dbc
core: Gut out cryptop, since it doesn't compile with C++17.
8 years ago
MerryMage
b628192bf2
configuration: Add cpu_core configuration option
8 years ago
MerryMage
d2fbc78320
arm_dynarmic: Implement core
8 years ago
bunnei
056f987bcd
core: Include <algorithm> where used.
8 years ago
bunnei
11adef4843
renderer_opengl: Fix LOG_TRACE in LoadFBToScreenInfo.
8 years ago
bunnei
94ad97def0
nv: Fix more broken asserts.
8 years ago
bunnei
ac2feaf5fb
nvdisp_disp0: Fix broken assert.
8 years ago
bunnei
039fc7f985
core: Fix recent GCC build breaks.
8 years ago
bunnei
97ef21e166
svc: Implement GetSystemTick.
8 years ago
bunnei
305035b503
nvdisp_disp0: Call SwapBuffers to render framebuffer.
8 years ago
bunnei
ee4691297f
renderer_opengl: Support rendering Switch framebuffer.
8 years ago
bunnei
236d463c52
render_base: Add a struct describing framebuffer metadata.
8 years ago
bunnei
866e66dc31
renderer_opengl: Add MortonCopyPixels function for Switch framebuffer.
8 years ago
bunnei
9e2ad45c98
renderer_opengl: Update DrawScreens for Switch.
8 years ago
bunnei
292135a3b7
CMakeLists: Add framebuffer_layout.cpp.
8 years ago
bunnei
482cf8a005
frontend: Update for undocked Switch screen layout.
8 years ago
Subv
1ca800ccee
NV: Move the nv device nodes to their own directory and namespace.
8 years ago
Subv
977ce4abbc
VI: Use a Pulse event instead of OneShot for the vblank events.
...
This prevents missing frames if the vblank fires between the DequeueBuffer and Wait(vsync) calls
8 years ago
bunnei
7e0ff43da0
vi: Use new CoreTiming::EventType
8 years ago
Subv
34ae2ec644
NV: Expose the nvdisp_disp0 device and a weak reference to the nvdrv:a service.
...
NVFlinger will call into the nvdisp_disp0 device to perform screen flips, bypassing the ioctl interface.
We now have the address of the framebuffer to draw, we just need to actually put it on the screen.
8 years ago
Subv
e21fbd9ae5
NV: Determine what buffer to draw for each layer of each display.
...
Don't try to draw buffers that the guest application is using, only queued buffers are eligible for drawing.
Drawing actual pixels is still not implemented.
8 years ago
Subv
404149e475
NV: Signal all display's vsync event 60 times per second.
8 years ago
Subv
d205dee0a6
NV: Give each display its own vsync event.
8 years ago
Subv
927569bed8
NV: Keep track of Displays, Layers and BufferQueues in nvflinger.
8 years ago
Subv
fb73e8b723
IPC: Allow passing arguments to the Interfaces when using PushIpcInterface
8 years ago
Subv
25f29c2f4f
NV: Implemented (with stubs) the vi:m service and some of its subservices.
...
The homebrew display test application now properly writes graphics data to the graphics buffer but we still don't have a way to compose the display layers.
8 years ago
Subv
94a5e97eb3
NV: Implemented the nvdrv:a service and the /dev/nvmap device.
8 years ago
Subv
ab86b80cac
IPC: Corrected some definitions for the buffer C descriptor flags.
8 years ago
Subv
ba02f0deef
svc: Stub ResetSignal and CreateTransferMemory
8 years ago
Subv
0a1278081e
svc: Stub SetMemoryAttribute
8 years ago
Subv
7ad20154fc
Threads: Added enum values for the Switch's 4 cpu cores and implemented svcGetInfo(AllowedCpuIdBitmask)
8 years ago
Subv
188feba457
Services: Allow lm to log single-character messages.
8 years ago
Subv
c2ee513d35
SVC: Fixed WaitSynchronization with multiple handles when none is immediately ready.
8 years ago
Subv
bc91ebacc1
SVC: Implemented CancelSynchronization.
8 years ago
Subv
a418f6e77b
ErrorCodes: Updated the InvalidHandle and Timeout kernel error codes.
8 years ago
Subv
8d9250fa70
SVC: Fixed WaitSynchronization with multiple handles when at least one of them is ready.
8 years ago
bunnei
4236799832
kernel: Rename Semaphore to ConditionVariable.
8 years ago
bunnei
9fcd2bf672
mutex: Remove unused call to VerifyGuestState.
8 years ago
Subv
db3a525166
Kernel: Actually wake up the requested number of threads in Semaphore::Release.
...
Also properly keep track of data in guest memory, this fixes managing the semaphore from userland.
It was found that Semaphores are actually Condition Variables, with Release(1) and Release(-1) being equivalent to notify_one and notify_all. We should change the name of the class to reflect this.
8 years ago
Subv
1bbe9309da
Kernel: Properly keep track of mutex lock data in the guest memory. This fixes userland locking/unlocking.
8 years ago
Subv
2a3f8e8484
Kernel: Allow chaining WaitSynchronization calls inside a wakeup callback.
8 years ago
MerryMage
f10a304ecd
fix macos build
8 years ago
bunnei
d6e4e6ea32
core_timing: Use 1.020GHz for core clock rate.
8 years ago
B3n30
82151d407d
CoreTiming: Reworked CoreTiming (cherry-picked from Citra #3119 )
...
* CoreTiming: New CoreTiming; Add Test for CoreTiming
8 years ago
Subv
c12c756539
IPC: Make DuplicateSession return the Domain instead of the Session if the request was made on a Domain interface.
8 years ago
Subv
e3b4c8e043
AppletOE: Fixed command buffer structure for ReceiveMessage.
8 years ago
Subv
ad965501d0
IPC: Corrected some command headers in the IPC Controller interface.
8 years ago
Subv
166286e976
IPC: Corrected some command header sizes in appletOE.
8 years ago
Subv
ba2ffd7b81
IPC: Take the number of domain objects as a parameter in MakeBuilder.
8 years ago
Subv
5f41477f9c
SM: Fixed connecting to services with an 8-byte name, like appletOE.
8 years ago
Subv
80f6df5414
IPC: Fixed pushing ResultCodes into the command buffer.
...
They should have 32 bits of padding after the error code now.
8 years ago
Subv
32847d8b86
IPC: Add functions to read the input move/copy objects from an IPC request.
8 years ago
Subv
7e3561b1cd
IPC: Don't attempt to read the command buffer if it holds a Close request.
8 years ago
Subv
0368324f79
IPC Cleanup: Remove 3DS-specific code and translate copy, move and domain objects in IPC requests.
...
Popping objects from the buffer is still not implemented.
8 years ago
Subv
b0ceb4df70
IPC: Skip the entire u64 of the command id when receiving an IPC request.
...
Service code now doesn't have to deal with this.
8 years ago
Subv
226786f0b0
IPC: Use the correct size when pushing raw data to the command buffer and fixed pushing domain objects.
...
Domain object ids are always stored immediately after the raw data.
8 years ago
bunnei
bc8ef64804
svc: Implement svcSignalProcessWideKey.
8 years ago
bunnei
bd377908d7
audio: Log dropping frames as trace to reduce spam.
8 years ago
bunnei
4e33b4b42f
semaphore: More changes for Switch.
8 years ago
bunnei
0f6fbdb963
wait_object: Refactor to allow waking up a single thread.
8 years ago
bunnei
bc77a7580e
nso: Always load the filepath specified by the user.
8 years ago
bunnei
79e0dd249e
core_timing: Increase clock speed for Switch docked.
8 years ago
bunnei
5017038ca7
svc: Implement svcWaitProcessWideKeyAtomic.
8 years ago
bunnei
91f10a1460
semaphore: Updates for Switch.
8 years ago
bunnei
6f6d9af408
lm: Assert on unsupported multi-message.
8 years ago
bunnei
0e978bdd50
svc: Implement WaitSynchronization for a single handle.
8 years ago
bunnei
57f42e5887
svc: Refactor LockMutex code to use WaitSynchronization1.
8 years ago
bunnei
d083c07c46
lm: Improve Log() to format a useful string.
8 years ago
bunnei
0dbc8f3577
svc: Add missing string_util include.
8 years ago
bunnei
dcfbad2129
cmake: Don't compile Dynarmic as it's unused.
8 years ago
bunnei
24f10a20e7
core: Increase tight_loop 100x for speed.
8 years ago
bunnei
5e262a4a68
citra_qt: Remove VFP registers, since this isn't used anyways and caused an assert.
8 years ago
bunnei
b38223f662
arm_unicorn: Load/release unicorn DLL.
8 years ago
bunnei
738845cc0e
externals: Use unicorn DLL instead of static lib.
8 years ago
bunnei
3f8b9181b5
unicorn: Use for arm interface on Windows.
8 years ago
bunnei
6e9d66fd3a
arm_dynarmic: More cleanup.
8 years ago
bunnei
914ebee67a
core: Remove unicorn_dynload.
8 years ago
bunnei
aa7e061e71
arm_dynarmic: Gut interface until dynarmic is ready for general use.
8 years ago
bunnei
b172f0d770
arm: Remove SkyEye/Dyncom code that is ARMv6-only.
8 years ago
bunnei
f0eab802e8
vm_manager: Use a more reasonable MAX_ADDRESS size.
8 years ago
bunnei
81a8a57ce2
svc: Remove unnecessary "svc" prefix to naming scheme.
8 years ago
bunnei
fe11b51545
pctl: Remove duplicate InstallInterfaces function.
8 years ago
bunnei
480906fe1b
hle: Move SVC code to kernel namespace.
8 years ago
bunnei
72f671fd7a
svc: Improve svcGetInfo.
8 years ago
bunnei
e9710a2cf7
vm_manager: Stub out a bunch of interfaces used by svcGetInfo.
8 years ago
bunnei
dc4fe2fbd5
svc: Fix string formatting for CreateThread.
8 years ago
bunnei
dd3a237981
cmake: Add missing object_address_table.
8 years ago
bunnei
93480b10ef
core/video_core: Fix a bunch of u64 -> u32 warnings.
8 years ago
bunnei
9e8608e8b1
svc: Stub out svcWaitSynchronization.
...
- This does not matter until we implement other kernel objects, mutexes use svcLockMutex for waiting.
8 years ago
bunnei
aa7c824ea4
svc: Implement svcExitProcess.
8 years ago
bunnei
9b8afed5f7
svc: Implement svcUnlockMutex.
8 years ago
bunnei
b9950cd4b0
svc: Implement svcLockMutex.
8 years ago
bunnei
d0046b120a
kernel: Add ObjectAddressTable class.
8 years ago
bunnei
1cb978eb82
thread: Keep track of the initially created handle.
...
This is kinda crufty, but we need it for now to update guest state variables.
8 years ago
bunnei
45debfe4fd
svc: Implement svcExitThread.
8 years ago
bunnei
9d0c3bda7f
svc: Implement svcCreateThread.
8 years ago
bunnei
001091fa72
svc: Cleanup svcGetThreadPriority.
8 years ago
bunnei
283c63645d
svc: Stub out svcGetCurrentProcessorNumber.
8 years ago
bunnei
c7983e970c
errors: Define missing kernel error codes.
8 years ago
bunnei
8a7f8f3e2c
svc: Implement svcSetThreadPriority.
8 years ago
bunnei
960e8dc5e5
svc: Change SignalProcessWideKey to a stub.
8 years ago
bunnei
f24531b1a2
function_wrappers: Cleanup, fix warnings, remove unused code.
8 years ago
bunnei
3a91a62b8f
svc: Implement svcUnmapMemory.
8 years ago
bunnei
a3228d9b77
svc: Minor cleanups.
8 years ago
bunnei
8ab33616ac
svc: Implement svcStartThread.
8 years ago
bunnei
b6087e35b5
thread: Main thread should set thread handle to reg 1.
8 years ago
bunnei
7ccd8de863
thread: Remove THUMB mode flag.
8 years ago
bunnei
eed4f2e229
thread: Main thread should be ready by default, all others dormant.
8 years ago
bunnei
ebd4b1422d
kernel: Various 64-bit fixes in memory/process/thread
8 years ago
bunnei
1d01ffccb8
applet_oe: Stub out a bunch of interfaces necessary for boot.
8 years ago
bunnei
30e98fae3f
controller: Implement DuplicateSession.
8 years ago
bunnei
dcdaac8a0b
kernel: Fix implementation of ConvertSessionToDomain.
8 years ago
bunnei
b67cbb8d92
ap, aoc_u: Minor cleanup.
8 years ago
bunnei
fcd4c1a0dc
service: Add empty interface for pctl:a.
8 years ago
bunnei
e17c0019c5
kernel: Add basic support for Domain object.
8 years ago
bunnei
834fa5db65
kernel: Add SyncObject primitive, use it for ClientSession.
8 years ago
bunnei
6e021f22b8
svc: Implement MapMemory.
8 years ago
bunnei
3421e1617e
process: Add method to mirror a memory region.
8 years ago
bunnei
7618b5237d
svc: Implement SetHeapSize.
8 years ago
bunnei
ad073846bc
service: Clean up apm/lm/applet_oe/controller/sm ctor/dtor.
8 years ago
bunnei
16fb1c8fe7
service: Halt on ReportUnimplementedFunction and improve output log.
8 years ago
bunnei
d5995fd30f
service: Add empty interface for aoc:u.
8 years ago
bunnei
3597650f22
service: Return proper result code for IPC::CommandType::Close.
8 years ago
bunnei
34571f4d2e
hle: Use Switch formatted result codes.
8 years ago
bunnei
266c1c8020
svc: Implement GetThreadId and GetProcessId.
8 years ago
bunnei
45db4bb3ea
logging: Rename category "Core_ARM11" to "Core_ARM".
8 years ago
bunnei
3f0caefdf5
nso: Load more common submodules.
8 years ago
bunnei
9ceb0d9381
memory: Support 32-bit paging, move heap address space up.
8 years ago
bunnei
dcd6bb82f7
hle: Fix QueryMemory response for MemoryInfo.
8 years ago
bunnei
716e5cf070
lm: Implement lm::Initialize and Logger::log.
8 years ago
bunnei
654fae29c1
hle_ipc: Only copy necessary fields for outgoing command buffer.
8 years ago
bunnei
b283cf7348
hle_ipc: Parse out buffer X/A/B/B descriptors from incoming command buffer.
8 years ago
bunnei
03bf0739a4
service: Add CreatePort function (that does not register/install).
8 years ago
bunnei
97d52b9f89
memory: Print addresses as 64-bit.
8 years ago
bunnei
3f2a738d34
ipc_helpers: Fix alignment (was wrong as a result of a dynarmic bug).
8 years ago
bunnei
d3cc369618
service: Print correct command ID on unimplemented function.
8 years ago
bunnei
4fb1b24d68
hle: Implement ConvertSessionToDomain, various cleanups.
8 years ago
bunnei
746c2a3ae7
core: Refactor MakeMagic usage and remove dead code.
8 years ago
bunnei
72eeca1f03
hle: Add service stubs for apm and appletOE.
8 years ago
bunnei
960a1416de
hle: Initial implementation of NX service framework and IPC.
8 years ago
bunnei
12c7469d81
nso: Add a log for loading submodules.
8 years ago
bunnei
78bc2b70bb
svc: Some logging cleanup.
8 years ago
bunnei
e98a3ca171
svc: Update MemoryInfo flags for 64-bit.
8 years ago
bunnei
cb889f9220
svc: Initial nx impl. for QueryMemory, ConnectToPort, SendSyncRequest, etc.
8 years ago
bunnei
d62750c46d
Remove more 3DS-specific code.
8 years ago
bunnei
15983dcfdc
Remove more 3DS-specific code.
8 years ago
bunnei
dbd15b0d10
Remove more 3DS-specific code.
8 years ago
bunnei
72b03025ac
Remove lots more 3DS-specific code.
8 years ago
bunnei
0906de9a14
hle: Remove a large amount of 3ds-specific service code.
8 years ago
bunnei
b1d5db1cf6
Merge remote-tracking branch 'upstream/master' into nx
...
# Conflicts:
# src/core/CMakeLists.txt
# src/core/arm/dynarmic/arm_dynarmic.cpp
# src/core/arm/dyncom/arm_dyncom.cpp
# src/core/hle/kernel/process.cpp
# src/core/hle/kernel/thread.cpp
# src/core/hle/kernel/thread.h
# src/core/hle/kernel/vm_manager.cpp
# src/core/loader/3dsx.cpp
# src/core/loader/elf.cpp
# src/core/loader/ncch.cpp
# src/core/memory.cpp
# src/core/memory.h
# src/core/memory_setup.h
8 years ago
bunnei
23ce4f5afc
loader: Various improvements for NSO/NRO loaders.
8 years ago
Dragios
83e5f639e6
Change command header in nwm::UDS Initialize function
8 years ago
Sebastian Valle
20e19a340c
Merge pull request #2991 from Subv/getpointer
...
Remove more usages of GetPointer.
8 years ago
Sebastian Valle
74d4050924
Merge pull request #2975 from shinyquagsire23/archive-ncch-container-and-override
...
file_sys/archive_ncch: use NCCHs/.apps instead of .romfs files, NCCH section override
8 years ago
bunnei
33ea53094c
loader: Add support for NRO, as well as various fixes and shared linker.
8 years ago
Sebastian Valle
84c344b9b1
Merge pull request #2953 from Subv/applet_launch
...
HLE/APT: Always set up the APT parameter when starting a library applet.
8 years ago
Subv
97f262c1f5
SVC: Removed GetPointer usage in the GetResourceLimit functions.
8 years ago
Subv
46fc7595b4
SVC: Remove GetPointer usage in CreatePort.
8 years ago
Subv
7b09b30ef1
SVC: Replace GetPointer usage with ReadCString in ConnectToPort.
8 years ago
Subv
3c0113632d
SVC: Replace GetPointer usage with ReadBlock in OutputDebugString.
8 years ago
Subv
0cfb231e00
SVC: Replace GetPointer usage with Read32 in ReplyAndReceive.
8 years ago
Subv
b863d6c860
SVC: Replace GetPointer usage with Read32 in WaitSynchronizationN.
8 years ago
Subv
7772fc0731
Memory: Remove all GetPointer usages from the GDB stub.
8 years ago
Huw Pascoe
b3b34a1e76
Extracted the attribute setup and draw commands into their own functions
8 years ago
bunnei
d454364bca
nso: Fixes to support homebrew NSOs without a MOD header.
8 years ago
bunnei
15c7641bef
Merge pull request #2977 from Subv/shmem_create
...
SharedMemory: Don't take over and unmap the source memory block when creating a shared memory, just reference it
8 years ago
Subv
b18589ecf7
Kernel/SharedMemory: Don't take over and unmap the source memory block when creating a shared memory, just reference it.
...
Also reference the right offset into the backing block for the requested address.
8 years ago
Sebastian Valle
30fabc41c6
Merge pull request #2971 from Subv/per_process_memops
...
Memory: Add overloads for ReadBlock and WriteBlock that operate on a specific process.
8 years ago
Subv
1f2de7501b
Memory: Make WriteBlock take a Process parameter on which to operate
8 years ago
Subv
811c01e5fe
Memory: Make ReadBlock take a Process parameter on which to operate
8 years ago
Subv
8217ed7acb
Kernel/Thread: Added a helper function to get a thread's command buffer VAddr.
8 years ago
Sebastian Valle
9c123c29a6
Merge pull request #2974 from Subv/nim_event
...
Services/NIM: Implement CheckForSysUpdateEvent.
8 years ago
shinyquagsire23
4887d18591
file_sys, loader: add support for reading TMDs to determine app paths
8 years ago
shinyquagsire23
8e10c9bb2e
file_sys: add class for Title Metadata (TMD)
8 years ago
shinyquagsire23
e21f2348e7
file_sys/ncch_container: add RomFS, ExeFS override to allow for backward compatibility with existing .romfs system archive dumps
8 years ago
shinyquagsire23
c93e5ecfe6
file_sys/archive_ncch: use NCCHContainer instead of loading .romfs files
8 years ago
bunnei
6377585edb
arm_interface: Set TLS address for dynarmic core.
8 years ago
bunnei
8c92435ded
nso: Refactor and allocate .bss section.
8 years ago
bunnei
fa1c7c7ee1
process: Support loading multiple codesets.
8 years ago
bunnei
6bafd3f4f7
loader: Add support for loading an NSO.
8 years ago
bunnei
9eb4888df7
externals: Add lz4.
8 years ago
bunnei
46297c9653
memory: Log with 64-bit values.
8 years ago
bunnei
c5ce5c06e4
kernel: Various threading fixes to support 64-bit addressing.
8 years ago
bunnei
f01472a5ff
core: Various changes to support 64-bit addressing.
8 years ago
bunnei
3411883fe3
arm: Use 64-bit addressing in a bunch of places.
8 years ago
bunnei
1c4f9e822c
elf: Check if machine is ARM.
8 years ago
Subv
5bae5a48b9
Services/NIM: Implement CheckForSysUpdateEvent.
...
Implementation verified by reverse engineering.
This lets the Home Menu boot without crashing on startup.
8 years ago
Huw Pascoe
529f4a0131
Moved down_count to CoreTiming
8 years ago
B3n30
afb1012bcd
Services/UDS: Handle the rest of the connection sequence. ( #2963 )
...
Services/UDS: Handle the rest of the connection sequence.
8 years ago
Sebastian Valle
7056b9c46a
Merge pull request #2946 from Subv/home_menu_apt
...
Implement PrepareToStartNewestHomeMenu and fixed an APT regression.
8 years ago
Sebastian Valle
db752b52e8
Merge pull request #2967 from Subv/thread_wakeup_callbacks
...
Kernel/Threads: When putting a thread to wait, specify a function to execute when it is awoken
8 years ago
Huw Pascoe
a13ab958cb
Fixed type conversion ambiguity
8 years ago
bunnei
b07af7dda8
Merge pull request #2961 from Subv/load_titles
...
Loaders: Don't automatically set the current process every time we load an application.
8 years ago
Subv
8432749db7
Kernel/Threads: When putting a thread to wait, specify a function to execute when it is awoken.
...
This change makes for a clearer (less confusing) path of execution in the scheduler, now the code to execute when a thread awakes is closer to the code that puts the thread to sleep (WaitSynch1, WaitSynchN). It also allows us to implement the special wake up behavior of ReplyAndReceive without hacking up WaitObject::WakeupAllWaitingThreads.
If savestates are desired in the future, we can change this implementation to one similar to the CoreTiming event system, where we first register the callback functions at startup and assign their identifiers to the Thread callback variable instead of directly assigning a lambda to the wake up callback variable.
8 years ago
Sebastian Valle
0d42706a7b
Merge pull request #2907 from Subv/warnings3
...
Disable unary operator- on Math::Vec2/Vec3/Vec4 for unsigned types.
8 years ago
Subv
a321bce378
Disable unary operator- on Math::Vec2/Vec3/Vec4 for unsigned types.
...
It is unlikely we will ever use this without first doing a Cast to a signed type.
Fixes 9 "unary minus operator applied to unsigned type, result still unsigned" warnings on MSVC2017.3
8 years ago
Subv
7f48aa8d25
Loaders: Don't automatically set the current process every time we load an application.
...
The loaders will now just create a Kernel::Process, construct it and return it to the caller, which is responsible for setting it as the current process and configuring the global page table.
8 years ago
James Rowe
5620327e03
Merge pull request #2954 from Subv/cache_unmapped_mem
...
Memory/RasterizerCache: Ignore unmapped memory regions when caching physical regions
8 years ago
Subv
3165466b66
Kernel/Thread: Allow specifying which process a thread belongs to when creating it.
...
Don't automatically assume that Thread::Create will only be called when the parent process is currently scheduled. This assumption will be broken when applets or system modules are loaded.
8 years ago
Subv
a8d2f5787f
Tests: Added Memory::IsValidVirtualAddress tests.
8 years ago
Subv
c102e3ae28
Tests: Fixed ARM VFP tests
8 years ago
Subv
35da7f57ef
Memory: Allow IsValidVirtualAddress to be called with a specific process parameter.
...
There is still an overload of IsValidVirtualAddress that only takes the VAddr and will default to the current process.
8 years ago
Merry
0c20da7fde
Merge pull request #2958 from Subv/audio_buffer_datatype
...
Audio: Use std::deque instead of std::vector for the audio buffer type (StereoBuffer16)
8 years ago
Subv
e27ae04696
HLE/APT: Always set up the APT parameter when starting a library applet.
...
Only use the HLE interface if an HLE applet with the desired id was started.
This commit reorganizes the APT code surrounding parameter creation and delivery to make it easier to support LLE applets in the future.
As future work, the HLE applet interface can be reworked to utilize the same facilities as the LLE interface.
8 years ago
Subv
41f6c9f87f
Memory/RasterizerCache: Ignore unmapped memory regions when caching physical regions.
...
Not all physical regions need to be mapped into the address space of every process, for example, system modules do not have a VRAM mapping.
This fixes a crash when loading applets and system modules.
8 years ago
Subv
d7459354f5
Audio: Use std::deque instead of std::vector for the audio buffer type (StereoBuffer16).
...
The current code inserts and deletes elements from the beginning of the audio buffer, which is very inefficient in an std::vector.
Profiling was done using VisualStudio2017's Performance Analyzer in Super Mario 3D Land.
Before this change: AudioInterp::Linear had 14.14% of the runtime (inclusive) and most of that time was spent in std::vector's insert implementation.
After this change: AudioInterp::Linear has 0.36% of the runtime (inclusive)
8 years ago
Subv
774e7deae8
HLE/Archives: Allow multiple loaded applications to access their SelfNCCH archive independently.
...
The loaders now register each loaded ROM with the SelfNCCH factory, which keeps the data around for the duration of the emulation session.
When opening the SelfNCCH archive, the factory queries the current program's programid and uses that as a key to the map that contains the NCCHData structure (RomFS, Icon, Banner, etc).
3dsx files do not have a programid and will use a default of 0 for this value, thus, only 1 3dsx file with RomFS is loadable at the same time.
8 years ago
B3n30
d881dee818
Merge pull request #2952 from MerryMage/page-tables
...
Switchable Page Tables
8 years ago
B3n30
dc6a365337
Merge pull request #2951 from huwpascoe/perf-4
...
Optimized Morton
8 years ago
B3n30
78022b5a79
Merge pull request #2949 from wwylele/fix-tr
...
citra-qt: fix some untranslated strings
8 years ago
B3n30
a21b9deb98
Merge pull request #2948 from Subv/register_service
...
HLE/SRV: Implemented RegisterService.
8 years ago
Max Thomas
c91ccbd0ba
Loader/NCCH: Add support for loading application updates ( #2927 )
...
* loader/ncch: split NCCH parsing into its own file
* loader/ncch: add support for loading update NCCHs from the SD card
* loader/ncch: fix formatting
* file_sys/ncch_container: Return a value for OpenFile
* loader/ncch: cleanup, always instantiate overlay_ncch to base_ncch
* file_sys/ncch_container: better encryption checks, allow non-app NCCHs to load properly and for the existence of NCCH structures to be checked
* file_sys/ncch_container: pass filepath as a const reference
8 years ago
B3n30
d673d508dd
Services/UDS: Added a function to send EAPoL-Start packets ( #2920 )
...
* Services/UDS: Added a function to generate the EAPoL-Start packet body.
* Services/UDS: Added filter for beacons.
* Services/UDS: Lock a mutex when accessing connection_status from both the emulation and network thread.
* Services/UDS: Handle the Association Response frame and respond with the EAPoL-Start frame.
* fixup: make use of current_node, changed received_beacons into a list, mutex and assert corrections
* fixup: fix damn clang-format
8 years ago
Huw Pascoe
903906da3b
Optimized Float<M,E> multiplication
...
Before:
ucomiss xmm1, xmm1
jp .L9
pxor xmm2, xmm2
mov edx, 1
ucomiss xmm0, xmm2
setp al
cmovne eax, edx
test al, al
jne .L9
.L3:
movaps xmm0, xmm2
ret
.L9:
ucomiss xmm0, xmm0
jp .L10
pxor xmm2, xmm2
mov edx, 1
ucomiss xmm1, xmm2
setp al
cmovne eax, edx
test al, al
je .L3
After:
movaps xmm2, xmm1
mulss xmm2, xmm0
ucomiss xmm2, xmm2
jnp .L3
ucomiss xmm1, xmm0
jnp .L11
.L3:
movaps xmm0, xmm2
ret
.L11:
pxor xmm2, xmm2
jmp .L3
8 years ago
MerryMage
67a70bd9e1
ARM_Interface: Implement PageTableChanged
8 years ago
MerryMage
4e5eb2044a
memory: Remove GetCurrentPageTablePointers
8 years ago