georgemoralis
c0649b8d24
libc strcmp,mallon,strlen implementation
2023-10-15 00:23:01 +03:00
Stefanos Kornilios Mitsis Poiitidis
470881dc11
Stubs: Log nids for unknown ones
2023-10-14 19:07:38 +03:00
georgemoralis
13709121ac
Merge pull request #53 from georgemoralis/pad
...
pad implementation
2023-10-13 20:42:15 +03:00
georgemoralis
5a905b0c4f
map for dpad keys to emulator
2023-10-13 20:41:03 +03:00
georgemoralis
e1b64617a8
pad somehow working
2023-10-13 17:44:15 +03:00
georgemoralis
da9adf84c0
some work on pad emulation (WIP)
2023-10-13 09:40:59 +03:00
Stefanos Kornilios Mitsis Poiitidis
f1ce6fe669
Add auto stubs, static init
...
- Adds a python script to generate the tables, to avoid std::map init
- Generates stub "slots" to provide runtime information when a stub is called
- Provides fallback for unknown stubs
2023-10-11 11:50:02 +03:00
georgemoralis
95f1c14dcf
added pad functions parameters
2023-10-09 20:39:12 +03:00
georgemoralis
1e18efcd05
misc
2023-10-09 16:54:10 +03:00
georgemoralis
bc6b740ffe
_ZdlPv , _Znwm needed for breakout homebrew
2023-10-09 12:31:31 +03:00
georgemoralis
9337e859ac
force cpu->gpu sync after flipsubmit . this is not probably correct behaviour but neccesary for niko's homebrew
2023-10-07 17:28:50 +03:00
georgemoralis
372ac5d160
implemented sceVideoOutIsFlipPending
2023-10-07 17:25:08 +03:00
georgemoralis
b7e5714990
added rand in libc
2023-10-07 12:10:55 +03:00
georgemoralis
d96721e753
implemented some dummy pad, system_service, user_service calls
2023-10-07 12:03:03 +03:00
georgemoralis
03f19c4d13
partial fix buffer_size for tilemode 1
2023-10-06 22:03:59 +03:00
georgemoralis
67da986e19
some more HLE functions
2023-10-06 21:49:53 +03:00
georgemoralis
830542e870
Merge pull request #45 from georgemoralis/libc_HLE_implementations
...
HLE printf and refactoring to some libc functions
2023-10-06 16:11:10 +03:00
georgemoralis
5a2ee268f8
libc cleanups
2023-10-06 16:05:34 +03:00
georgemoralis
e31365aea3
small adjustments to printf
2023-10-06 14:46:12 +03:00
georgemoralis
551455e56e
printf implementation
2023-10-06 14:19:09 +03:00
georgemoralis
cefd3d95ed
adapting va_arg parameters of printf
2023-10-06 13:33:45 +03:00
georgemoralis
b9c6d9d395
printf implementation from vita3k (not yet adapted)
2023-10-06 12:46:28 +03:00
georgemoralis
825d38ef31
partial printf , hello world demo (not from OpenOrbis) works
2023-10-05 18:38:36 +03:00
Stefanos Kornilios Mitsis Poiitidis
5094d3044c
run_main_entry: Rewrite in asm for stack setup
...
- Fixes OpenOrbis loading that depends on rsp
pointing to the argument structure, in addition
to rdi
2023-10-02 17:26:33 +03:00
georgemoralis
809413a880
dummy libc printf call
2023-10-01 16:29:48 +03:00
wheremyfoodat
7791a8eeed
Use cstdint in types.h
2023-09-29 14:40:26 +03:00
georgemoralis
1395fd4939
v0.0.1 release files
2023-09-29 08:40:30 +03:00
georgemoralis
23eeec09d0
WIP tilemanager
2023-09-28 18:17:39 +03:00
georgemoralis
05fdea61fc
more work on graphics . tiles are not yet supported
2023-09-27 22:47:53 +03:00
georgemoralis
abe6d39295
more on buffer rendering, added vulkan command pool
2023-09-27 15:15:18 +03:00
georgemoralis
3b853413c7
preparing for drawing
2023-09-27 09:26:50 +03:00
georgemoralis
98ccbe7f30
update gpu memory function
2023-09-27 08:34:02 +03:00
georgemoralis
21120ac0ae
finished gpu buffer creation
2023-09-27 07:45:05 +03:00
georgemoralis
c6633a511a
small adjustments
2023-09-26 20:40:02 +03:00
georgemoralis
512309c8a0
even more work on videoOutbuffer
2023-09-26 20:08:03 +03:00
georgemoralis
b14e50904b
more work on creating videoOutBuffer object
2023-09-26 18:56:08 +03:00
georgemoralis
1a5dd6cdfe
added XXH3_64bits and calculate memory obj hashes
2023-09-26 16:00:13 +03:00
georgemoralis
7570576aa2
more abstract memoryCreateObj
2023-09-26 03:46:25 +03:00
georgemoralis
627c0d1b61
more gpu memory work
2023-09-25 15:08:36 +03:00
georgemoralis
1f0beb0ec3
gpumemory works
2023-09-25 12:04:40 +03:00
georgemoralis
59efa477ce
even more work on video buffers
2023-09-25 00:06:04 +03:00
georgemoralis
f469296b78
some video buffer work
2023-09-22 10:38:21 +03:00
georgemoralis
12382ddac4
fixed some silly issues
2023-09-22 00:05:00 +03:00
georgemoralis
0859964888
almost finished vulkan init
2023-09-21 23:48:16 +03:00
georgemoralis
3c4716ba5f
vulkanCreateQueues
2023-09-21 18:20:13 +03:00
georgemoralis
b1d812bb32
vulkan : createDevice
2023-09-21 12:59:48 +03:00
georgemoralis
90dc454440
Finished vulkanFindQueues
2023-09-21 12:41:51 +03:00
georgemoralis
3768dfabfc
more work on vulkan queues
2023-09-20 14:19:20 +03:00
georgemoralis
48ae687191
misc
2023-09-19 17:13:37 +03:00
georgemoralis
b68f018fad
Added vulkanGetSurfaceCapabilities
2023-09-19 14:02:40 +03:00
georgemoralis
faf9a03437
some vulkan queue work
2023-09-19 09:15:59 +03:00
georgemoralis
78bafe88fa
even more vulkan init
2023-09-18 14:52:16 +03:00
georgemoralis
ef6da6bddb
more vulkan init progress
2023-09-17 23:38:16 +03:00
georgemoralis
f6388c367e
added vulkan extension initialize
2023-09-17 20:01:29 +03:00
georgemoralis
be4c88a338
fixed tiling mode checking
2023-09-16 23:05:57 +03:00
georgemoralis
e2b6c70f0a
fixed vulkan compile
2023-09-16 10:51:09 +03:00
georgemoralis
243c0158c1
more to buffers
2023-09-16 00:03:11 +03:00
georgemoralis
aacbc4e675
Initial sceVideoOutRegisterBuffers function (added ErrorCodes returns)
2023-09-15 23:13:49 +03:00
georgemoralis
15089ae0b0
small fixes
2023-09-15 14:40:03 +03:00
georgemoralis
da2a942415
better event handling
2023-09-14 18:47:42 +03:00
georgemoralis
61280cb6cf
initial work on sdl events
2023-09-14 16:49:47 +03:00
georgemoralis
8954a35eec
basic sdl window init
2023-09-12 19:39:08 +03:00
georgemoralis
ab932e7503
event queue events now process nicely
2023-09-11 13:14:13 +03:00
georgemoralis
0c39b808bf
sceVideoOutSubmitFlip implementation
2023-09-10 12:59:21 +03:00
georgemoralis
f1b1eacb67
finished sceKernelWaitEqueue implementation
2023-09-10 01:06:14 +03:00
georgemoralis
98090ae42f
initial sceKernelWaitEqueue implementation (WIP)
2023-09-08 08:28:01 +03:00
georgemoralis
5b6bbfc327
sceVideoOutGetFlipStatus implementation
2023-09-06 13:45:49 +03:00
georgemoralis
fd8dc05313
fixing build
2023-09-05 15:26:03 +03:00
georgemoralis
a3bdc9e4cc
sceVideoOutSetFlipRate,sceVideoOutGetResolutionStatus implementation
2023-09-05 15:14:43 +03:00
georgemoralis
466cfe96e6
more completed (but not finished) sceVideoOutAddFlipEvent
2023-09-05 14:28:52 +03:00
wheremyfoodat
3a7563ef64
fixing @georgemoralis code
2023-09-05 14:01:47 +03:00
georgemoralis
b634d512d3
WIP sceVideoOutAddFlipEvent implementation
2023-09-05 09:13:14 +03:00
georgemoralis
bc7a13370d
cleanup VideoOut library code
2023-08-23 23:20:43 +03:00
georgemoralis
201294cf18
sceVideoOutOpen is not dummy now
2023-08-23 00:02:24 +03:00
georgemoralis
491e231770
implemented sceVideoOutOpen
2023-08-22 23:59:59 +03:00
georgemoralis
a8b020b153
initial video out context object
2023-08-22 00:54:44 +03:00
georgemoralis
0799c59e3f
SceVideoOutVblankStatus struct
2023-08-21 20:44:53 +03:00
georgemoralis
59c2deb672
some sceVideoOut work (mostly dummy work)
2023-08-21 14:25:11 +03:00
georgemoralis
5c28ff9ee2
small logging fix
2023-08-18 11:22:01 +03:00
georgemoralis
07d1387bfe
fixed logging in elf
2023-08-18 10:49:51 +03:00
georgemoralis
c80df0aab9
removed some debug code
2023-08-17 10:11:50 +03:00
georgemoralis
bba76cdf49
sceKernelCreateEqueue implemented
2023-08-17 10:10:13 +03:00
georgemoralis
c4b072e0e1
configurable loglevel in config file
2023-08-16 10:34:04 +03:00
georgemoralis
c3135341c2
reorganize function call to proper file
2023-08-15 23:10:45 +03:00
wheremyfoodat
a0ab3dbc0c
added configuration class
2023-08-14 20:17:01 +03:00
georgemoralis
6a5308d521
improvements in logging
2023-08-14 01:24:03 +03:00
georgemoralis
5a30f0711e
log class : added color output based on log levels (WIP)
2023-08-13 17:33:50 +03:00
georgemoralis
04e9366cb8
refactoring log class
2023-08-13 16:54:56 +03:00
georgemoralis
ca291b6573
remove log for renaming to lowercase
2023-08-13 16:46:59 +03:00
georgemoralis
5845257e87
using our own application id for discord
2023-08-12 18:47:37 +03:00
georgemoralis
7b380e0d5f
better place to init discordRPC
2023-08-12 01:02:42 +03:00
wheremyfoodat
f2b64e892b
Add discord RPC
2023-08-11 20:22:26 +03:00
georgemoralis
632e2e16ff
proper variable naming
2023-08-10 21:30:35 +03:00
georgemoralis
be0e7593ff
sceVideoOutSetBufferAttribute attribute->option value
2023-08-10 20:20:42 +03:00
georgemoralis
6399886fea
sceVideoOutSetBufferAttribute implementation
2023-08-10 20:14:44 +03:00
georgemoralis
e5f2f91a80
threading working ,fixed a big in sceKernelMapDirectMemory
2023-08-09 11:42:50 +03:00
georgemoralis
3e1386666b
threading part 1
2023-08-09 10:31:18 +03:00
wheremyfoodat
d774ebdaea
name conversions fixes
2023-08-08 22:44:01 +03:00
georgemoralis
25e1095c7e
implemented sceKernelMapDirectMemory
2023-08-08 22:24:17 +03:00
georgemoralis
c412a5cb0b
aligned memory allocation using VirtualAlloc2
2023-08-07 18:16:26 +03:00
georgemoralis
3cb89c4b5c
refactoring virtual_memory
2023-08-06 22:52:20 +03:00
georgemoralis
1e57ccc6ec
refactoring
2023-08-04 11:33:00 +03:00
georgemoralis
8b78cc1dec
initial work on sceKernelMapDirectMemory
2023-08-03 14:18:55 +03:00
georgemoralis
53ce038893
recommit debug.h
2023-08-03 13:43:42 +03:00
georgemoralis
abd3dd4b5a
git doesn't understand namechange
2023-08-03 13:43:25 +03:00
georgemoralis
813385caa3
improved logging in sceKernelAllocateDirectMemory
2023-08-03 13:27:07 +03:00
georgemoralis
ba8b614afc
added more proper and faster hex logging conversion
2023-08-03 13:16:49 +03:00
georgemoralis
a135981fdd
removed debug code
2023-08-03 13:06:23 +03:00
georgemoralis
b7420e7daa
memory management refactoring
2023-08-03 13:05:13 +03:00
wheremyfoodat
3e60a67785
general refactoring and coding format fixes
2023-08-03 12:25:25 +03:00
wheremyfoodat
30c1062893
proper timer class placeholders
2023-08-03 12:11:47 +03:00
georgemoralis
1cd0489dfe
placeholder for making Memory and Timer classes portable
2023-08-03 11:29:14 +03:00
georgemoralis
0f85cbe54f
print memory types enum value
2023-08-03 11:13:08 +03:00
georgemoralis
c0e1ace5fc
more refactoring
2023-08-02 15:16:00 +03:00
georgemoralis
7773e11c2d
refactoring
2023-08-02 13:51:10 +03:00
wheremyfoodat
13ff3588fd
name conversions
2023-08-02 13:11:09 +03:00
georgemoralis
a6e1cf43d7
Refactoring PhysicalMemory
2023-08-02 08:41:41 +03:00
georgemoralis
7bc4fda33e
PhysicalMemory is now singleton
2023-08-02 08:04:09 +03:00
georgemoralis
dcac8c1661
sceKernelAllocateDirectMemory should be ok for now
2023-08-01 17:59:08 +03:00
georgemoralis
770f743a49
ugly PhysicalMemory
2023-08-01 17:02:26 +03:00
georgemoralis
0e1ca354a9
Added Thread class
2023-08-01 12:49:57 +03:00
georgemoralis
692759099f
improved StringUtil algo + some PhysicalMemory work
2023-08-01 00:42:49 +03:00
georgemoralis
818e0b7404
improvements in sceKernelAllocateDirectMemory and function logging
2023-07-27 17:56:57 +03:00
wheremyfoodat
c0c6024e2c
User-defined literals
2023-07-27 15:09:52 +03:00
georgemoralis
441471370e
some memory functions (videoout_basic now reaches sceKernelAllocateDirectMemory which is WIP)
2023-07-27 13:36:47 +03:00
georgemoralis
5b0e627dc0
some dummy HLE functions and implementations in libc
2023-07-26 23:52:26 +03:00
georgemoralis
7dc1f0a47b
some constants defines
2023-07-26 15:13:40 +03:00
georgemoralis
d7247f9e8d
stubbed Assert function . should fix #26
2023-07-26 13:18:10 +03:00
georgemoralis
2b9aaff641
portable debugbreak
...
ευχαριστώ ροδάκινε
Co-Authored-By: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>
2023-07-24 13:05:57 +03:00
georgemoralis
5706e1be1b
added more PS4_SYSV_ABI codes
2023-07-21 14:53:19 +03:00
georgemoralis
28aad0a5dc
Added sysv_abi , now parameters in sceVideoOutOpen is correct
2023-07-21 08:03:36 +03:00
georgemoralis
d8140ca016
added atexit() HLE function , sceVideoOutOpen appears to get invalid parameters
2023-07-20 17:53:51 +03:00
georgemoralis
98e9d970a3
we can reach atexit() function as well
2023-07-20 12:41:41 +03:00
georgemoralis
d641f7b6c4
we can now execute code (reaches init_env() function )
2023-07-20 12:18:43 +03:00
georgemoralis
cc596083f5
more pthread progress added init for main Thread
2023-07-20 11:20:11 +03:00
wheremyfoodat
bb2de743b7
Fix compilation error maybe
2023-07-18 19:28:28 +03:00
georgemoralis
ce95520f38
some pthread work nothing exciting
2023-07-18 18:54:46 +03:00
georgemoralis
f03c1a5fb4
initial thread management files
2023-07-17 23:46:25 +03:00
georgemoralis
ecccead408
all function for video out demo should resolve now
2023-07-17 13:53:27 +03:00
georgemoralis
35e21f9a8c
more dummy GnmDriver function calls
2023-07-17 13:39:00 +03:00
georgemoralis
d9da9ade78
more dummy patching functions
2023-07-14 14:29:13 +03:00
georgemoralis
3cbbdd5b2f
patching sceVideoOut functions
2023-07-13 18:36:03 +03:00
georgemoralis
063a689812
patching more dummy functions
2023-07-13 12:56:36 +03:00
georgemoralis
0ac4032d00
some missing nid names from videoout_basic demo
2023-07-12 14:44:37 +03:00
georgemoralis
81906c271a
resolving relocate function and patching them (successfully done one :D)
2023-07-11 18:50:29 +03:00
georgemoralis
42dc535638
some more work on linker and added some more needed (but not currently used) memory functions
2023-07-10 14:52:14 +03:00
georgemoralis
8f36540386
kalitero usage minima sto main.cpp . Ola einai modules alla den tha katalaboun
2023-07-08 21:06:10 +03:00
Stefanos Kornilios Mitsis Poiitidis
0aaf516358
main: validate arguments
2023-07-07 13:54:44 +03:00
Stefanos Kornilios Mitsis Poiitidis
b211342d8a
linux: Fix build
2023-07-07 13:49:46 +03:00
georgemoralis
0edc265dc2
progress in relocations
2023-07-06 21:55:41 +03:00
georgemoralis
6717482662
initial work on relocations
2023-07-04 18:34:23 +03:00
georgemoralis
bc2facaee4
improved memory_alloc function
2023-07-04 12:29:28 +03:00
georgemoralis
9103a545a2
small fix
2023-06-29 13:31:07 +03:00
georgemoralis
f5dd2e83a9
added windows specific timer class
2023-06-29 13:20:34 +03:00
georgemoralis
20c0960cc6
dummy timer class
2023-06-29 13:17:05 +03:00
georgemoralis
79a6464c58
sample hle function loading (libc)
2023-06-28 20:15:19 +03:00
georgemoralis
e0cee2d7fd
started work on libraries linking
2023-06-26 20:45:16 +03:00
georgemoralis
b8c542805f
Symbol resolver added
2023-06-26 18:12:19 +03:00
Esdras Tarsis
1e57195ded
Add initial Linux support.
2023-06-22 22:48:55 -03:00
georgemoralis
8acfc3d557
nid names resolver
2023-06-21 18:14:52 +03:00
georgemoralis
cc34a85c54
more symbols work and refactoring
2023-06-19 07:51:56 +03:00
georgemoralis
11bf9d7928
elf symbols , bind ,type ,visibility
2023-06-19 06:58:22 +03:00
georgemoralis
f333098231
more progress on symbols decoding
2023-06-18 17:54:22 +03:00
georgemoralis
cae39ccf23
encode id64 for modules,libraries
2023-06-14 07:47:44 +03:00
georgemoralis
bcc6288e9e
supporting self segments loading
2023-06-13 19:05:06 +03:00
georgemoralis
cfa68f2f40
Initial symbol loading
2023-06-13 07:43:58 +03:00
georgemoralis
0682830e2f
DT_SCE_IMPORT_LIB,DT_SCE_ORIGINAL_FILENAME,DT_SCE_MODULE_INFO added. Dynamic loader should be ok for now
2023-06-12 08:16:20 +03:00
georgemoralis
6fcfe38e26
Added DT_OS_NEEDED_MODULE
2023-06-11 15:35:04 +03:00
georgemoralis
6e0cf378d2
Added DT_DEBUG, DT_TEXTREL,DT_FLAGS,DT_NEEDED
2023-06-09 18:10:40 +03:00
georgemoralis
94dff9b980
added DT_INIT_ARRAY, DT_FINI_ARRAY,DT_INIT_ARRAYSZ,DT_FINI_ARRAYSZ,DT_PREINIT_ARRAY,DT_PREINIT_ARRAYSZ,DT_SCE_SYMENT
2023-06-09 13:37:46 +03:00
georgemoralis
dd4dddded3
Added DT_SCE_JMPREL,DT_SCE_PLTRELSZ,DT_SCE_PLTREL,DT_SCE_RELA,DT_SCE_RELASZ,DT_SCE_RELAENT
2023-06-09 11:37:18 +03:00
georgemoralis
d995a0e286
added DT_INIT.DT_FINI,DT_OS_PLTGOT,DT_OS_SYMTAB,DT_OS_SYMTABSZ
2023-06-08 19:05:03 +03:00
georgemoralis
8932be618b
parsing DT_OS_HASHZ, DT_OS_STRTAB , DT_OS_STRSZ for dynamic loader
2023-06-08 13:25:24 +03:00
georgemoralis
672e2b2d77
initial dynamic loader , parsing DT_HASH atm
2023-06-08 12:51:11 +03:00
georgemoralis
e02c0a9398
simplify main (not loading imgui and sdl for the moment)
2023-06-08 11:58:29 +03:00
georgemoralis
66ea5329d2
some more playing with zydis
2023-05-30 16:27:11 +03:00
georgemoralis
5a72e51f4e
fixed typo in Disassembler
2023-05-30 13:39:08 +03:00
georgemoralis
dfc234f363
initial disasm class using zydis
2023-05-30 13:33:52 +03:00
georgemoralis
43033d6bf6
linker : loading PT_DYNAMIC , PT_DYNAMIC data
2023-05-26 19:22:43 +03:00
georgemoralis
cc471a8535
segments loading (only elf atm)
2023-05-25 18:08:10 +03:00
georgemoralis
1ad70366c6
changed hex->decimal in size variables output
2023-05-25 14:25:52 +03:00
georgemoralis
e87b793083
more progress on module to memory loading
2023-05-25 13:16:53 +03:00
georgemoralis
5d0a5af495
more work on linker , closer to load to memory
2023-05-23 19:39:24 +03:00
georgemoralis
b27942c46b
some more progress on linker , elf is now load from there
2023-05-23 10:47:56 +03:00
georgemoralis
a09e2eb65a
initial work on linker
2023-05-23 07:48:25 +03:00
georgemoralis
76987fb932
fix on loading elf file instead of self
2023-05-22 13:58:41 +03:00
georgemoralis
5f0b15e2fa
draft work on memory allocation
2023-05-17 19:29:05 +03:00
georgemoralis
81ca77a464
initial work on loggin class
2023-05-16 19:31:53 +03:00
georgemoralis
08f8da2fea
elfviewer : don't display section header if they don't exist (seems like commercial games doesn't have section headers)
2023-05-14 17:43:45 +03:00
georgemoralis
98068809aa
elfviewer : detailed program headers info
2023-05-13 10:00:22 +03:00
georgemoralis
f2198ef27d
elf headers and elf program headers in imgui elfviewer
2023-05-10 22:21:34 +03:00
georgemoralis
6511b280cf
elfview imgui : added segment headers
2023-05-08 12:15:28 +03:00
georgemoralis
cda7c67e36
SELF header display on imgui elf window
2023-05-06 11:35:42 +03:00
georgemoralis
24e68b58f5
more elf tree progress
2023-05-05 09:29:16 +03:00
georgemoralis
701278348d
small ElfViewer display updates
2023-05-03 19:56:18 +03:00
georgemoralis
dda7020ef4
imgui elfviewer window . first draft
2023-05-03 19:40:47 +03:00
georgemoralis
f35f7b62cd
we can now load elf and imgui.
2023-05-02 22:10:49 +03:00
georgemoralis
72bdf22035
added spdlog library
2023-05-02 22:10:49 +03:00
georgemoralis
f998469730
added fmt library
2023-05-02 22:10:49 +03:00
georgemoralis
222d0204db
first try with cmake and imgui
2023-05-02 22:10:49 +03:00