Commit graph

512 commits

Author SHA1 Message Date
Nekotekina c0a0cb98c5 Fix argv for DG category 2018-03-11 19:33:01 +03:00
Nekotekina eea2c20420 Improve vfs::mount
Mount /dev_bdvd/PS3_GAME if necessary
2018-03-11 19:33:01 +03:00
Nekotekina f4d2fccdfe Improve boot dir access
Add Emu.GetDir() method
2018-03-11 19:33:01 +03:00
Nekotekina c8a6bc6e24 Relax /dev_bdvd mounting requirements
Allow some PSN games with DG category to boot
2018-03-11 19:33:01 +03:00
Nekotekina f056b2f4ab Improve TTY output
Use atomic variable to sync TTY size
Implement console_putc (liblv2)
Write plaintext instead of HTML
Slightly improve performance
Fix random line breaks in TTY
2018-03-01 16:28:08 +03:00
Megamouse 6141bc5598 Fix firmware installation for vfs 2018-02-28 17:27:06 +04:00
Nekotekina cce0ad0c35 Clean vm::ps3 namespace use 2018-02-09 17:49:37 +03:00
Nekotekina 76be7d40ac Remove PSP2 2018-02-09 15:24:46 +03:00
Unknown 51a2b43d81 Qt/Input: Introduce profiles 2018-01-10 03:17:02 +04:00
Nekotekina af3e1fc580 Improve Restart function
Don't erase boot args
Should now work correctly with game launchers
2018-01-03 01:04:04 +03:00
Nekotekina 78f7020ce6 Warn about corrupted PARAM.SFO 2017-12-29 20:05:06 +03:00
Nekotekina e768bdc80f Remove /app_home/ dependency
Should also fix exitspawn
2017-12-27 02:51:58 +03:00
Peter Mcteague 6702c14b88 Added installation for additional packages to game boot 2017-11-28 22:22:37 +03:00
Nekotekina f7803927d9 Fix exitspawn (autoexit option)
Fix other situations affected by this options
2017-11-26 09:02:37 +03:00
Unknown de465cb941 Fix "Exit RPCS3 when process finishes" command line crash
Added force_boot to force boot on cmdline boot.
Load() caused a Stop() that exited the application with "Exit RPCS3 when process finishes" enabled. Now Stop is only called if the emu is not stopped
2017-11-21 03:02:47 +04:00
Nekotekina af107df0b4 Fix NPDRM exitspawn 2017-11-01 05:07:12 +03:00
Nekotekina 0e7e40f2cb Fix /dev_bdvd/ for exitspawn 2017-11-01 05:07:11 +03:00
Nekotekina 00a0d37455 Add cmdline support 2017-10-28 23:24:08 +03:00
Nekotekina df2fc13b7a Add PPU instruction stat dumper
Needs PPU Debug option to activate and PPU Interpreter
Dumps after Resume (after Pause)
Fix utils::memory_decommit, clean vm.cpp
2017-10-11 20:06:33 +03:00
Nekotekina e5f756205c sys_net full rewrite
Implement sys_net syscalls
Clean libnet functions
Use libnet.sprx
Use libhttp.sprx
Use libssl.sprx
Use librudp.sprx
Implement sys_ss_random_number_generator
2017-10-05 19:51:37 +03:00
Nekotekina 3e3160d7ac Minor VFS fix 2017-09-21 14:34:09 +03:00
Nekotekina 5c93acefd9 Try to fix some fs errors 2017-09-19 15:07:07 +03:00
Nekotekina 519f21db18 Exitspawn support renewal
Implemented _sys_process_exit2 syscall
Rewritten sys_game_process_exitspawn
Rewritten sys_game_process_exitspawn2
Implemented _sys_process_atexitspawn
Implemented _sys_process_at_Exitspawn
And some other changes
2017-09-19 15:07:07 +03:00
Nekotekina 837c5dddee Add <typeinfo> 2017-09-19 15:07:07 +03:00
Nekotekina 010b75251f fs::rename fixed
Added overwriting policy
sys_fs_rename improved
2017-08-30 17:14:30 +03:00
Andrew O'Neil daf3760cd4 Add PulseAudio audio backend 2017-08-24 17:43:34 +03:00
Nekotekina c1450ad616 Reenable thread_local for all platforms 2017-08-24 16:27:07 +03:00
Nekotekina 1716db14ed Fix moving disc games with arbitrary dir name 2017-08-23 21:26:18 +03:00
RipleyTom 81da93a302 Fix rare occurence where there is a /PS3_GAME+something directory which leads to weird behavior 2017-08-15 21:14:09 +03:00
Nekotekina 613214cdca Improve error formatting 2017-08-08 22:17:51 +03:00
Megamouse f3ad922a8f drag and dropperinno (#3037) 2017-08-06 22:29:28 +03:00
Jan Beich 40d305b35d Make ALSA optional 2017-08-06 02:02:57 +01:00
Nekotekina c14eb4e54a Implement error report stacking 2017-08-04 14:33:53 +03:00
Nekotekina 93db420f80 sys_lwmutex, sys_lwcond refactoring 2017-07-30 01:09:42 +03:00
Ryan Gonzalez dbd69536ed Linux evdev joystick support (#2885)
* Linux evdev joystick support (#2678)

* Cleanup libevdev configure code

* evdev fixes

* Evdev joystick additions/fixes

* Error message tweak

* Fix evdev multiple joysticks (thanks @hcorion!)

* Change by-id to by-path in evdev
2017-07-26 21:03:06 +03:00
Nekotekina 25fcde9507 Rearrange /dev_bdvd mounting logic
Prevent booting patches without /dev_bdvd
Prevent booting with foreign /dev_bdvd
2017-07-14 03:39:22 +03:00
Nekotekina d8abe75526 Improved sprx boot (for devs only) 2017-07-14 01:47:00 +03:00
Nekotekina 113b937263 Fix moving game dir 2017-07-12 19:35:46 +03:00
Nekotekina 3cd4256b9e Fill game list from all locations 2017-07-12 18:16:09 +03:00
Nekotekina 08e9400870 Improve booting disc games
Store disc locations for disc games
Create /dev_hdd0/disc/ directory
Move disc games from /dev_hdd0/game/ to /disc/ automatically
Load disc game patches automatically
2017-07-12 16:38:19 +03:00
Nekotekina 420bfef214 Cleaning after PoorRequest 2017-07-12 14:07:38 +03:00
Nekotekina 6561ddae41 PPU LLVM: multithread compilation 2017-06-24 19:12:19 +03:00
Nekotekina 155f13ed54 Workaround booting NP games 2017-06-23 20:09:33 +03:00
RipleyTom 0dd10d1457 Command line elf path fix (#2844) 2017-06-10 22:50:10 +03:00
kd-11 860b76452f vulkan bringup on linux
cleanup: drop unused stuff
2017-06-08 19:08:44 +03:00
Robbie 6cfb184b1e RPCS3 QT (#2645)
* Fix windows build.  I made sure to do everything with a win32 prefix to not effect linux build.

* Make the window resizable instead of fixed in the corner.

* Ignore moc files and things in the debug/release folder.  I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file.  But, this helps clean out clutter for now.

* Add cmake.  This doesn't interact with the rest of rpcs3 nor the main cmake file.  That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt.

* The build works. I'd like to thank my friends, Google and Stackoverflow.

Setted up by importing rpcs3Qt project using Qt's visual studio plugin.

* Cleanup.  Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files.

* Update readme to reflect getting Qt.

* Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild.

* Add rpcs3_version, few GUI tweaks

* Set defaultSize to 70% of screen size

* Add the view menu (#3)

* Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets.

* Make log visible by default

* Improve UI by making it into a checkbox that's easier to use.

* fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users)

* updated readme for qt

* update appveyor for qt
- cleaned formatting for the post build command

* fix build (#6)

* fix build legit this time i promise

* [Ready] Gamepadsettings (#4)

* WIP Gamepadsettings
pushbutton Eventhandling missing

* GamepadSettings should work except for cfg Init
Some KeyInputs are missing

* Update padsettingsdialog.h

* Update padsettingsdialog.cpp (#5)

* Update padsettingsdialog.cpp

removed silly tabs

* Update padsettingsdialog.cpp

* GetKeyCode simplified

* rename pad settings to keyboard settings o.O

* rename keyboard setting to input settings

* Remvoed the QT_UI defines.

* Readded new line at end of file. Replaced define in padsettings with constant.

* GUI fixes (Settings)

* Stub the logger UI. Nothing special besides a simple stub.

* Unstub the log. I haven't tested TTY but it should work.

Only thing to do, but this is in general, is add persistent settings.

* Minor refactoring to simplify code.

* Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images.

* Made game lists much more functional than it was.

* mainwindow

* gamelist

* Please forgive me for I have lambdaed.

Added the ability to toggle showing columns via a context menu.

* Fix GameList further

* sort by name on init fixed

* Created the baseline refactoring. I'm going to start working on the callbacks now.  May need to implement other classes in the process. Fun stuff, I know.

* adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation
adds RefreshGameList
obliterates 10sec Refresh

* messages

* Rpcs3 gs frame (#16)

* Messing with project settings try to get trails of cold steel to boot.bluh

Definitely one change is needed in linker settings for RPCS3 to not crash immediately.

Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf.

* remove random ! not that it matters much right now

* minor additions

* "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it.  However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call)

Crashes due to needing pad callback to be done.

* With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol)

* Fix release mode.  Fix the Qt debug assert by using ancient occault rituals.  I want to be able to remove the blocking connects but it won't work right now without it.  It isn't perfect but it's good enough for now IMO.

* Add enters to the end of files.

* Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event.  Works, though, it's admittedly probably not optimal by ANY means.

* Fix comment.

* Fix libpng wit zlib.

* Move Qt GUI into RPCS3Qt. (#17)

Restore wx GUI.

* fix install-progressdialogs randomly not showing

* install-progressdialog cosmetics

* add stylesheet file loading

* apply request

* Add stylesheet to git ignore.

* XInput..

* Joystick...

* Rpcs3 qt small fixes (#20)

* Small fixes.  Have emulator stop when x button is pressed on game window.  Have emulator/application stop when the main window is closed.

* If I forget another new line ending for a file.............................................

* Add CgDisasm (#21)

* fix install-progressdialogs randomly not showing

* install-progressdialog cosmetics

* add stylesheet file loading

* apply request

* add CgDisasm
add code to disable contextmenu options
fix gamelist issue

* missing proj changes

* Add ability to open stylesheets from menu.

* Mega searcher (#23)

* add MemoryStringSearcher
set minimum Sizes for mainwindow and CgDisasm

* minor fixes

* Since the system.cpp callbacks for emulator state were unused, I removed them.  Then, I replaced them with callbacks for the Gui.

* added stylesheet options
setfocus on settings fixed
newline added

* added signals and slots for EmuRun and EmuStop

* update ui

update ui now works
added callback onReady
added EnableMenues
added ps3 commands

* added restart logic to menu

* newline

* event header removed

* Added graphic settings class. (#26)

* Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful.  Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets.  But, that'll come in time as I update this class.

* Add view debugger, logger, gamelist to settings and synchronize them.

* Separate initializing actions from connects

* Add invisible fullscreen cursor and double click event.

* Add the UI log settings.

* Add MemoryViewer (#30)

* Add Memoryviewer
Image Button crashes/not fully implemented
focus on some button annoying

minor changes for question dialogs

* GuiSettings Refactoring (#31)

* Add settings for columns shown and which one is saved

* I accidentally refactored the settings class.  Added ability to reset to default GUI.  Added statefulness to column widths.

* add gui tab

* Fix logging at startup.

* Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase.

* Removed dock widget controls.

* Added style sheets. Removed the option from the menu.

* Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right?

* It's remarkable how tricky this is.

* Added convenience button to open up the settings folder in explorer

* Add newlines at end of file

* simplified logic. Fixed a bug.. hopefully not more bugs

* Fix the undocumented feature

* Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol

* Make warning messagebox instead of changing the title of the dialog.

* marking...

* Hcorion suggested changes.

* [WIP] autopause (#32)

* autopause added
needs fixing
headers do not show text

* fix compile stuff

* Add MsgDialog + edge widgets (#33)

* Add MsgDialog
needs magic

* add "Debugger" Buttons to menubar

* Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller.  But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation.

* [Ready] Add KernelExplorer (#36)

* KernelExplorer added

* Fix build.  Connect mainwindow to show explorer.

* qstr formatting added
hid header, fixed button size

* Taskbar Progress for install PUP/PKG (#37)

* Add Taskbar Progress for both PKG and PUP installer

* fix missing ifdefs for windows

* add mainwindow icon + thumbnail toolbar

* add game specific icons to the GSFrame

* fix icon crash

* fix appIcon's aspect ratio in SetAppIconFromPath

* Fix black borders in RGB32 icons

* rename thumbar related buttons

* EmuSettings (#35)

* Core tab done minus doing the library list.

* Graphics tab.

* Audio tab

* Input tab

* Added the other tabs

* LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega)

* add search and add other libraries that aren't checked.

* Finish adding lle selecting things.

* marking my territory (#38)

fixed settingsdialog glitch and width
added groupbox to gui buttons
removed parents from layouts

* add debuggerframe + RSXDebugger (#34)

* Add Debuggerframe

* add RSXDebugger

* add RSXDebugger fo real

* RSXDebugger improved
minor adjustments

* add utf8 conversions like neko told me to
hopefully i did not utf8-ise too many things xD

* fix some variables

* maybe fix image buffers in RSXDebugger

* fixed image view (pretty sure)

* fixed image buffer (hopefully)

*  QT Opengl frame (#41)

* fix RSX Debugger headers (#40)

* fix some debugger layout issues
fix RSX Debugger headers + some comments

* add kd-11's SPU options
fix D3D12 showing on non-compatible systems
tidy up coretab

* improve D3D12 behaviour in graphicstab:
adapter selection and D3D12 render won't show on non-compatible systems
add monospace font to cgDisasm

* enable update only on visibility

* Rpcs3 qt llvm build (#42)

* LLVM pushed so mega can test

* probably is what is needed with Release LLVM

* should probably have RPCS3-Qt be using release-llvm

* include zlib the same way.

* don't talk to me about how I made this happen.

* I applied the magical treatment to debug mode too.  Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant

* hack

* progress bar for LLVM spawns but doesn't close yet.

* fix msgDialog (#43)

fix oskDialog

* Minor bug fixzz

* fix osk and msgdialog for real (#44)

* fix msgDialog
fix oskDialog

* fix OskDialog part 2
fix MsgDialog part 2

* This bug is evil, and it should be ashamed of itself.

* Refactor YAML.  Commented out gui options that aren't added to config yet (add em back later when we merge that in)

* Fix pad stuff.

* add SaveDataUtility (#45)

* add SaveDataUtility

* fix slots

* fix slots again
fix lists not showing stuff
fix dialogs not showing
add colClicked
refactor stuff and polish some layouts

* add SaveDataDialog.h and SaveDataDialog.cpp

* tidy up mainwindow

* add callback

* fix RegisterEditor (#47)

* fix RegisterEditor

* fix other dialogs' immortality (gasp...vampires)

* remove debug leftovers

* fix InstructionEditor (#46)

* fix InstructionEditor

* fix typo

* Fix MouseClickEvents in RSXDebugger (#50)

* Fix MouseClickEvents in RSXDebugger
Fix focus on MemoryViewer and RSXDebugger
Adjust PadButtonWidth

* fix another comment

* fix debuggerframe events (#49)

* Fix pad settings bro (#48)

* Fix pad settings bro

* fix comment

* Icons and Menu-Additions (#39)

* Add Icons and iconlogic to cornerWidget and actions

* add cornerWidget toggle
fix dockwidget action state on start
remove DoSettings

* fix game removal bug
remove tableitem focus rectangle
therefore add TableItemDelegate.h

* remove grid and focus rectangle from autopausedialog

* add fullscreen checkbox to misctab
minor padsettings layout improvements

* Add show category submenu to view menu
Add gamelist filter accordingly
fix minor bug where play icon was displayed despite pause label
add boolean b_fullscreen to mainwindow for later use in GSFrame

* fix headers in autopausesettings
fix remove bug in autopausesettings
add delete keypressevent in autopausesettings
fix missing tr() and minor refactoring in gamelist

* add default Icons for play/pause/stop/restart

* Fix fullscreen start.  Some stuff was wrong with settings, just trust me.

* remove fullscreen leftovers and fix merge

* SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build)

* please neko's lambda fetishes (#53)

* please neko's lambda fetish in mainwindow

* please neko's lambda fetish in gamelistframe

* please neko's lambda fetish in logframe

* fix neko's lambda fetish in debuggerframe

* pleasefixdofetishsomething in Autopausesettingsdialog

* fix sth sth lambda in cg disasm

* lambda stuff in instructioneditor

* lambda kernelexplorer

* lambda-ise memoryviewer

* lambda rsxdebugger

* lambda savedatautil
this could be done even more, but the functions are not implemented

* Rpcs3 qt fixes -- shadow taskbar bug (#52)

* SShadow's bug of taskbar progress staying fixed on cancelling pkg install.

* other taskbar

* i'm still a baka

* Fix a warning

* qtQt refactoring (#54)

* fix neko's snake fetish

* File names should match headers. Are these the names I want?  Not necessarily.  But, this is much less confusing.

* i thought I committed everything with stage all.........................

* remove unused utilities

* The most important commit of them all.

* Disable legacy opengl buffers when not using opengl.

* fix code review comment

* Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab

* Merge lovely things from master (#55)

* Configuration simplified

* untrivial parts of the merge

* no need for these options anymore

* Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever)

* here ya go

* FIx hitting okay in settings causing graphics to messup (#57)

* fixes + msgdialog taskbarprogress (#56)

* fix ok button in taskbar
add taskicon progressbar for msgdialog
add tablewidgetitem to rsxdebugger
fix comments in save_data_utility.cpp

* fix d3d adapter default

* fix taskicon progressbar not being destroyed properly

* add last_path to filedialogs

* fix msgdialog crash on ok (#58)

* fix thread stopping in debbugerFrame (#59)

* Move Emu.init to be first.  This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60)

* Fix full screen opening on double RIGHT click.

* fix other instances of double click ...

* Fix locaiton of gui config. (#61)

* fix d3d bug (#62)

* fix d3d bug

* small utf8 addition

* Fix cmake for qt (#64)

* Initial CMake fix

* Fix compilation with GCC

* Get rid of awful hack

* Update cotire with qt support

* Maybe fix travis

* Emergency Hack Relief Program Activated

* Fix travis build (#65)

* make about dialog great again (#67)

and add previous additions

* Fix library sort / smart gamelist context menu (#63)

* fix library sort

* add Title to custom game config dialog

* disable options on gamelist context menu

* use namespace for category Strings

* introduce sstr

* fix some tr nonsense

* Rpcs3qt Appveyor (#68)

Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

* possible fix for gamelist icons (#69)

add warning for appicon

* Fix clang build (#66)

Hcorion, the build savior.

* Rpcs3 qt resources (#70)

* Resource files attempt 1

* Autorcc should probably be on?

* forgot the most important file lol

* Forgot an instance of the icon in the code...

* Patch fix for clang build.

* vulkan/d3d12 combobox merge (#71)

* add vulkan adapterbox and merge with d3d12 box

* fix adapter text on other renderer

* gather render strings

* attempt fix on gamelist row height

* adjust adapter behaviour to new guideline

* Compiler of Peace.

* High critical hit rate.

* Mugi eating strawberries is savage.

* Apply KD-11 Hotfix (#73)

* Most of Ani Adjusts (#72)

* Most of the adjustments are made here.

* fix gamelist rowheight

* fix msg dialog layout and disable_cancel

* cleanup

* fix disable cancle again

* fix debuggerframe buttons and doubleclick

* Add a fun little bonus feature :) (#74)

* category filters simplyfied (#75)

* Cleaning up cmake a bit.

* fixezzzzzz (#76)

* upgrade Info Boxes

* upgrade file explorer

* refactor GetSettings and SetSettings

* second refactoring

* cleanup

* travis is a grammar nazi

* second travis shenanigans

* third travis weirdo thingy

* travis 4 mega fun

* travis 5 default to def

* finish refactoring for settings
fix gamelist headers

* hotfix msgdialog and infobox (#77)

* msgdialog fix 1

* fix zombie infobox

* Rpcs3 Qt Welcome Page (#78)

* Add a welcome dialog.

* Add enter to end of file

* i'm an idiot

* last mistake i hope

* sponsored via --> funded by

* RPCS3 does not condone piracy.

* Mega Adjusts

* Ani Adjustments and a few refactorings

* Yay

* Add Gamelist Icon Sizes (#79)

* Reverting Mega's suggestion.  If people can use alt-f4 to get around this dialog, they can probably use an emulator too.

* Fix firmware file choice dialog in QT GUI (#80)

* ani adjusts 2 + minor icon size simplifications (#81)

FPS Additions

* Update Travis to Qt 5.9 (#82)
2017-06-04 17:48:33 +03:00
Nekotekina f010b5b235 Configuration simplified 2017-05-20 16:01:48 +03:00
Nekotekina 08c955d177 Remove AutoPause.cpp 2017-05-11 19:05:41 +03:00
Nekotekina d4146e4e68 Disable /host_root/ by default 2017-05-11 19:05:41 +03:00
Nekotekina f0f8f50e12 Error filtering updated 2017-04-16 17:44:20 +03:00
Nekotekina 7428bb3025 HLE linkage rewritten 2017-04-16 17:44:19 +03:00
Andrey 215a9f9e11 Gdb debug server (#2542) 2017-04-02 21:10:06 +03:00
Cornee Traas 901f503a3a Fix mounting bdvd when elf in subdirectory
Causes MGS4 to boot further
2017-04-01 19:29:49 +03:00
Nekotekina 78b9c64f67 Simple patch engine 2017-03-30 12:04:59 +03:00
Nekotekina 37a97a71e3 vm::g_exec_addr added
s_ppu_compiled renamed
Exception handling enabled
2017-03-27 01:15:41 +03:00
Nekotekina 4bbe1b6bf3 fs::write_file aux 2017-03-27 01:15:41 +03:00
Nekotekina 3bfe17a14f PPU: HACK instruction removed
Breakpoints fixed
2017-03-22 23:23:47 +03:00
Nekotekina 5e3bacbd9b New reservations
Memory system cleanup
sys_memory_get_page_attribute
2017-03-10 15:51:40 +03:00
Nekotekina 3751d5d5c1 Fixed VFS initialization order
Fixed RAP location for SELF
Fixed custom config loading
2017-02-28 16:18:49 +03:00
Nekotekina 0eb6bf6a67 LLVM: splitting and caching 2017-02-26 20:14:18 +03:00
Nekotekina c0589cab05 Minor fix (linux) 2017-02-24 19:56:59 +03:00
georgemoralis 3e0c356b0b per game config.yml (#2418) 2017-02-23 18:08:52 +03:00
Nekotekina dac72ff371 Automatic dev_* dir creation 2017-02-22 17:29:10 +03:00
Nekotekina baf22527b0 Ditch fs::get_executable_dir 2017-02-22 17:17:26 +03:00
Nekotekina 4cba60b27f Cache decrypted EBOOT.BIN 2017-02-22 15:21:30 +03:00
Nekotekina 5e539f71e6 Prefer EBOOT.BIN 2017-02-22 13:23:21 +03:00
Nekotekina 9000407a77 cpu_thread::test_state added
lv2_obj::sleep adjustment
synchronization fixes
2017-02-22 13:23:21 +03:00
Nekotekina 598c90f376 PPU thread scheduler 2017-02-13 22:26:11 +03:00
Nekotekina e8bfce4ebd decrypt_self() function
Fixed SPU self decryption
Fixed PSV debug self load
2017-02-11 21:36:48 +03:00
Nekotekina bb111d325f memory fix 2017-02-10 23:27:58 +03:00
Nekotekina 257b9a2015 Debugger fix
Crash fixes
GUI fixes
Debug enhancements
2017-02-10 16:33:22 +03:00
Nekotekina bf6854d121 LV2_LOCK removed 2017-02-05 16:35:10 +03:00
Nekotekina cb1f30e9d2 Report fixup 2017-02-05 03:06:05 +03:00
Nekotekina 3d85a89cc9 sys_lwcond, sys_lwmutex 2017-02-04 20:39:03 +03:00
Nekotekina 16944b0c4c sys_cond, sys_mutex 2017-02-04 20:39:03 +03:00
Nekotekina b21fce4d6f IdManager improved
lv2_obj for kernel objects
Simple lookup (vector)
Another idm API refactoring
2017-01-29 21:37:04 +03:00
Nekotekina a5a2d43d7c Thread.cpp refinement
Hide thread mutex
Safe notify() method
Other refactoring
2017-01-29 19:52:19 +03:00
Nekotekina 591a6c8671 IdManager improved 2017-01-25 23:29:36 +03:00
Nekotekina ad174eb12c error_code implemented
Reports based on formatting system
ppu_error_code removed
arm_error_code removed
2016-08-16 18:57:44 +03:00
Nekotekina 0f87c4485d Silly macro removed-2 2016-08-14 18:19:42 +03:00
Nekotekina bdeccd889f cpu_type removed, system_type added
cpu_state -> cpu_flag
vm::stack_allocator template improved
ppu_cmd type changed to enum, cmd64 type added
2016-08-09 17:14:41 +03:00
Nekotekina f8719c1230 PPUThread refactoring
`CallbackManager` removed, added _gcm_intr_thread for cellGcmSys
`PPUThread` renamed to `ppu_thread`, inheritance allowed
Added lightweight command queue for `ppu_thread`
Implemented call stack dump for PPU
`get_current_thread_mutex` removed
`thread_ctrl::spawn`: minor initialization fix
`thread_ctrl::wait_for` added
`named_thread`: some methods added
`cpu_thread::run` added
Some bugs fixes, including SPU channels
2016-07-30 16:35:02 +03:00
Nekotekina fc9fdca3f6 Make TLS great again
And clean System.h a bit
2016-07-19 14:06:39 +03:00
Nekotekina 438e057dc8 Partial commit: sys_fs 2016-07-17 02:27:52 +03:00
Nekotekina ba8fd825ec fs::get_data_dir implemented 2016-07-11 22:12:39 +03:00
Nekotekina 06c6c8212d Minor fixes
elf_object
Loader fix
Analyser fix
2016-07-11 16:30:11 +03:00
Nekotekina a8bebcba55 LLVM AOT 2016-06-19 21:29:48 +03:00
Raul Tambre 92446de9d9
Change "start after boot" default value to true 2016-06-03 08:56:37 +03:00
Nekotekina 266db1336d The rest 2016-05-23 16:22:25 +03:00
Ivan aafcf44581 Header optimizations (#1684)
Shouldn't break anything. I hope.
2016-04-27 01:27:24 +03:00
Ivan da7472fe81 Optimizations (#1680)
* Optimizations

1) Some headers simplified for better compilation time
2) Some templates simplified for smaller executable size
3) Eliminate std::future to fix compilation for mingw64
4) PKG installation can be cancelled now
5) cellGame fixes
6) XAudio2 fix for mingw64
7) PPUInterpreter bug fixed (Clang)

* any_pod<> implemented

Aliases: any16, any32, any64
rsx::make_command fixed
2016-04-25 13:49:12 +03:00
Nekotekina f8f067ca7c Partial commit: Emu (the rest) 2016-04-15 19:22:49 +03:00
Nekotekina 128ee67bba PSF Loader simplified 2016-01-27 19:17:01 +03:00
DHrpcs3 220aab1fd0 Reimplemented psf loader 2016-01-27 18:14:35 +03:00
Nekotekina 8464ab6a23 Fixes (#1432)
/dev_bdvd/, rap file loading fix
2016-01-14 19:07:24 +03:00
Nekotekina 38531459df Logging system rewritten
GUI doesn't freeze anymore
Some things simplified
2016-01-13 18:54:57 +03:00
Nekotekina b3e3c68f15 File utility improved
+ minor fixes
2016-01-13 14:12:04 +03:00
Nekotekina 3ed603074c Changes done by [DH] rewritten
Added rsx_program_decompiler submodule
Added fs::dir iterator
Added fmt::match
2015-12-22 23:11:20 +03:00
Nekotekina 321e6d3a86 fs::get_config_dir, fs::get_executable_dir 2015-12-20 15:41:06 +03:00
Raul Tambre 9c2f48cd1d More defect fixes, added some error codes 2015-11-09 07:39:50 +02:00
O1L f842c206f3 Removed unneeded config saves and misprints 2015-10-27 01:41:12 +04:00
O1L c0255208cc Old ini-manager only partially used in VFS. Global configuration used as defualt. 2015-10-27 01:09:31 +04:00
O1L 89f14ec5ac Ported more options in new ini-manager. Use later. 2015-10-25 18:44:49 +04:00
O1L 1673ba217c Do not try to change default config, use state configs. 2015-10-24 22:48:07 +04:00
O1L bc8b71cbc1 Compilation fix 2015-10-24 15:46:31 +04:00
O1L 9d6df238d5 Use custom configurations 2015-10-24 14:38:24 +04:00
Nekotekina d4e0da3f80 DX12 fix + rpcs3-tests project 2015-10-21 13:31:29 +03:00
DH e4f6eb04e8 Added new config system
Added emulator state class
Added emulator events
Minor improvements
2015-10-13 20:32:08 +03:00
DH 1e7ded2163 rsx::thread moved from rsx2 branch
TODO: cellResc module & RsxDebugger disabled, DX12 renderer not compilable
2015-10-05 12:56:05 +03:00
Nekotekina 8ae3401ffa Some things improved
shared_mutex_t implemented
GUI Emu Callbacks rewritten
fxm::import, fxm::import_always implemented
cellMsgDialog rewritten
Emu.CallAfter improved (returns std::future)
2015-09-22 16:48:21 +03:00
Nekotekina 4e62ec7458 PKG Installer fixed, u128 improved 2015-09-22 13:28:32 +03:00
Nekotekina 12f36cf31f Experimental class template Module<T>
Allocates ps3 memory for specific instance T
2015-09-22 13:28:31 +03:00
Nekotekina cbe83ad8dd Various fixes 2015-09-08 13:47:00 +03:00
Raul Tambre de97c8e20f Add RPCS3 version to logging
Also fixed the link pointing to the RPCS3 forum.
2015-09-07 20:13:42 +03:00
Raul Tambre 09673c928c cellVideoOut accuracy improved, logging additions
Now basic settings are logged in the start of every log, to help devs in
determining  possible problems, when users test or try to run certain
games.
2015-09-07 20:00:58 +03:00
Nekotekina be9a599beb PPU Decoder Cache improved 2015-08-24 21:22:35 +03:00
Nekotekina c6bdedf3b0 sleep_queue_t moved to SleepQueue.cpp, cleanup
Used ARMv7Thread instead of ARMv7Context in PSV HLE functions and
callbacks. However, interpreter still uses ARMv7Context.
Various PSV functions partially implemented:
sceKernelCreateEventFlag
sceKernelDeleteEventFlag
sceKernelOpenEventFlag
sceKernelCloseEventFlag
sceKernelWaitEventFlag
sceKernelWaitEventFlagCB
sceKernelPollEventFlag
sceKernelSetEventFlag
sceKernelClearEventFlag
sceKernelCancelEventFlag
sceKernelGetEventFlagInfo
sceKernelCreateSema
sceKernelDeleteSema
sceKernelCreateMutex
sceKernelDeleteMutex
sceKernelCreateCond
sceKernelDeleteCond
2015-08-24 21:22:30 +03:00
Nekotekina f8afee3325 Fixed Object Manager (detached) 2015-08-24 21:22:22 +03:00
Nekotekina dd665e7363 ID manager simplified
ID manager refactoring, redundant "type" information removed
2015-08-24 21:22:19 +03:00
Nekotekina 2f7fe35f5c Minor style change 2015-07-21 23:14:31 +03:00
Nekotekina a8fcf71f9c Minor bugfix, cleanup 2015-07-21 23:14:04 +03:00
Nekotekina b8a27d8a4c Silly bugs fixed 2015-07-18 03:12:08 +03:00
Nekotekina 48c75105e2 "Memory" eliminated 2015-07-18 03:12:06 +03:00
Nekotekina c0f13f7084 sleep_queue_t rewritten, used in sys_cond/sys_mutex
Some synchronization fixes
2015-07-10 04:31:34 +03:00
Nekotekina eafddd9e33 CPUThread fixes, thread_t cleanup 2015-07-10 04:31:32 +03:00
Nekotekina 83321c5be7 sys_time_get_current_time fixed, CALL_FUNC draft 2015-07-10 04:31:30 +03:00
Nekotekina 22e1da5e76 Minor cleanup 2015-07-10 04:31:29 +03:00
Nekotekina 8f9e1100c8 SPU fixes, various fixes 2015-07-10 04:31:25 +03:00
Nekotekina 3aefa2b4e1 ThreadBase rewritten (wip) 2015-07-10 04:31:16 +03:00
Nekotekina edb9595721 Using vm::ps3 namespace moved in proper places
Various fixes
2015-07-10 04:30:41 +03:00
Igor null 5ae2349f36 changed broken breakpoints database format to a consistent format 2015-06-15 18:09:21 +03:00
Nekotekina 2823953489 Compilation fix 2015-05-27 12:51:25 +03:00
Nekotekina 22b78fec71 IdManager improved, atomic_t improved
Various changes
2015-05-27 06:11:59 +03:00
Peter Tissen 0b0c8723eb Change GetDeviceLocal device selection
For `GetDeviceLocal` only consider a device if the full path to the device
matches the first part of the path to match.

The issue was that putting in a file that was not in a sub-path of an existing
mounted device failed. So if the rpcs3 devices are in
D:\DEV\rpcs3\bin and you open D:\DEV\ps3autotests\tests\rsx\primitives\primitives.ppu.elf
it would return
/dev_usb000/ps3autotests\tests\rsx\primitives\primitives.ppu.elf
which resolves to
D:/DEV/rpcs3/bin/dev_usb000/ps3autotests/tests/rsx/primitives/primitives.ppu.elf
and is wrong.

Correct are either /dev_usb000/../../../ps3autotests\tests\rsx\primitives\primitives.ppu.elf
or /hostfs/D:\DEV\ps3autotests\tests\rsx\primitives\primitives.ppu.elf

I chose to resolve without the ".." beyond root, since that just seems wrong
(so it will now return the hostfs version).

Fixes #1090
2015-05-21 10:45:40 +02:00
Nekotekina 74b3580b69 rfile_t renamed 2015-04-25 00:38:11 +03:00
Nekotekina 2f4d6fc2a1 Adaptive /dev_bdvd/ mounting 2015-04-24 03:35:42 +03:00
Nekotekina fbc268e993 rFileName removed 2015-04-23 19:58:37 +03:00
Nekotekina 56c64c8045 VFS::CreatePath fixed, bugfixes 2015-04-20 18:53:31 +03:00
Nekotekina 8c1aa3ee15 Bugfix 2015-04-20 04:54:19 +03:00
Nekotekina 3b26031692 Bugfix 2015-04-20 01:26:28 +03:00
Nekotekina 339021ac15 cellFsGetDirectoryEntries improved 2015-04-19 22:25:04 +03:00
Nekotekina 93ebce4162 Bugfixes 2015-04-19 19:02:35 +03:00
Nekotekina ab405901ee wxFile removed (rFile -> rfile_t) 2015-04-19 16:19:24 +03:00
Nekotekina d9b53b476f Compilation fix 2 2015-04-17 17:05:28 +03:00
Nekotekina 37b22ec99d PSFLoader improved 2015-04-16 02:17:42 +03:00
Nekotekina d032bc5691 vfsLocalDir, rFile routines improved 2015-04-15 17:27:37 +03:00
Nekotekina d2ad84453d KernelExplorer fixed 2015-04-14 05:00:31 +03:00
Nekotekina a71cb5f521 Basic concept 2015-03-17 00:38:21 +03:00
Nekotekina ad38e9f0fe event_queue_t, event_port_t rewritten 2015-03-04 07:42:04 +03:00
Nekotekina 942d984dc5 sys_process_get_paramsfo implemented 2015-02-28 17:41:15 +03:00
Nekotekina 6cbdeb9411 Unused code removed 2015-02-28 15:37:06 +03:00
Nekotekina 55b348f4fc Small fix 2015-02-21 17:35:23 +03:00
Nekotekina 9ee9523680 StaticFuncManager removed 2015-02-21 17:07:22 +03:00
Nekotekina faaef03604 Fix 2015-02-21 14:30:26 +03:00
Nekotekina af986d8f4c Loader improved, ModuleManager refactored 2015-02-18 19:22:06 +03:00
Nekotekina 819c955cca ARMv7: partial disasm functionality, bugfix 2015-02-05 02:52:47 +03:00
Nekotekina a7d85480a8 Fixes 2015-01-26 15:55:26 +03:00
Nekotekina 509e09c2c5 ARMv7Callback.h, psv modules initialization fixed
sceLibc: __cxa_atexit, __aeabi_atexit
2015-01-21 17:34:05 +03:00
Nekotekina d557ba2d97 Audio format changed to 8ch 2015-01-18 02:01:08 +03:00
Nekotekina b897a5d20a cellAudio, thread_t improvements, pause/resume callback 2015-01-17 19:14:58 +03:00
Nekotekina da09477be8 Callback syntax changed
call() became overloaded () operator
2015-01-11 13:43:40 +03:00
raven02 85d23e2c32 format fix 2014-12-29 06:53:31 +08:00
Nekotekina 6cd2665e12 Conflicts fixed 2014-12-28 16:29:01 +03:00
Raul Tambre 0cd3cd3e05 cellFsStat fix and other fixes 2014-12-26 18:16:57 +02:00
Nekotekina be2d606193 Conflicts fixed 2014-12-26 17:06:36 +03:00
Raul Tambre 052692ac8c Improvements to saving and cellFsStat 2014-12-26 10:06:12 +02:00
Nekotekina cbdc32e95e Kernel Explorer partially restored 2014-12-24 19:09:32 +03:00
Nekotekina d8239a39c9 std::shared_ptr in IdManager 2014-12-24 02:38:13 +03:00
Nekotekina b2de24db73 SMutex eliminated 2014-12-23 02:31:11 +03:00
Oil b3be4d11e3 Show more information in GSFrame, some changes in cellAudio 2014-12-21 20:29:51 +04:00
Raul Tambre b8d2343765 Implement sys_game_process_exitspawn and fixes 2014-12-14 19:14:26 +02:00
Nekotekina 697b699873 Some bugs fixed
ARMv7 partially restored
2014-12-01 01:04:47 +03:00
Nekotekina d648957864 Merge branch 'master' of https://github.com/DHrpcs3/rpcs3 2014-11-30 15:08:54 +03:00
DHrpcs3 a59cf50f03 Improved LLE Manager
Improved VFS
2014-11-29 15:16:53 +02:00
Nekotekina 8df2c3d707 Merge branch 'master' of https://github.com/DHrpcs3/rpcs3 2014-11-22 19:49:54 +03:00
DHrpcs3 598d929aba Implemented LLE Modules Manager (draft)
Improved loader core.
Implemented *_thread wrappers.
Minor fixes.
Temporary disabled ELF Compiler & DisAsm frame.
2014-11-19 16:16:30 +02:00
Nekotekina c8d4193f08 PSV: sceKernelCreateThread and sceKernelStartThread
Some fixes in callback manager
2014-11-10 03:21:50 +03:00
Nekotekina 43382a0ac6 Something is wrong with entry points... 2014-11-03 14:35:50 +03:00
Nekotekina 6df5ddb973 Few warnings fixed 2014-10-24 17:24:09 +04:00
Raul Tambre 9e5403aeb3 Remove unneeded be_t 2014-10-11 20:20:01 +03:00
Raul Tambre fcfdd1551b Added a camera option
Also a couple minor optimizations
2014-09-18 21:19:10 +03:00
Nekotekina 0044141631 sys_process_is_spu_lock_line_reservation_address
Formatting changed a bit
2014-09-17 17:15:17 +04:00
Nekotekina 597d07bf24 Small refactoring 2014-09-15 02:17:24 +04:00
O1L dc7e143de5 More information in KernelExplorer. 2014-09-14 00:40:12 +04:00
Nekotekina cd39256361 CallbackManager rewritten 2014-09-11 23:18:19 +04:00
Nekotekina 43a61d0ab9 Memory.Write*/Read* replaced 2014-09-06 17:33:01 +04:00
Nekotekina 06486b6537 Bug fixed 2014-08-31 21:13:21 +04:00
Nekotekina a8cfefac07 vm::ptr for u8/char types, mem_list_ptr_t removed 2014-08-31 19:01:48 +04:00
Nekotekina 571bd63644 Test 2014-08-31 13:54:12 +04:00
Nekotekina 9e2bb9e9d2 Some warnings fixed 2014-08-31 00:41:01 +04:00
Nekotekina 851ae920b9 Compilation fix 3 2014-08-29 16:27:25 +04:00
Nekotekina 028ce2dd9f stdafx_gui.h created, wx removed from stdafx.h 2014-08-29 02:49:26 +04:00
Nekotekina 78cbb90ef6 Some leaks fixed 2014-08-26 03:55:37 +04:00
Nekotekina 61c4a88ab4 rFile.h, Thread.h, IdManager.h includes moved 2014-08-25 18:56:13 +04:00
Nekotekina 50b5d72bb2 Include cleaning 2014-08-24 21:42:19 +04:00
Nekotekina 4ffd03fe3e Include clearing 2014-08-24 00:40:04 +04:00
Nekotekina cb58a773c9 Some hack 2014-08-15 16:50:59 +04:00
Nekotekina b09412a79a sys_process_get_sdk_version rough implementation 2014-08-09 20:27:11 +04:00
raven02 b9ae34cc3b Show game title and ID in log 2014-08-09 23:16:21 +08:00
Nekotekina 8f04ab07ed IsGood() check elimination
Reasons: 1) It's unsafe - we cannot guarantee that address is still good
while it is used. 2) It's wrong in many modules which are usually just
compare pointer with zero.
2014-08-05 14:18:22 +04:00
Sacha e8525a6f14 More rFile cleanups and fixes.
Was using fileExists/dirExists before when really should have just been exists. File or Dir doesn't matter and would only create false negatives.
Current working directory shouldn't really be used at all. This is just the folder the application is run from (not even where the .exe resides).
Some of the infos required by vfsLocalDir such as executable may not be portable. Not sure of their intended function as they are never used.
2014-08-01 04:20:00 +10:00
B1ackDaemon f240690ff5 Merge pull request #558 from Bigpet/modunload
unload modules upon stopping
2014-07-13 01:08:25 +03:00
Peter Tissen f75a3c8f60 unload modules upon stopping I guess we won't find out what's wrong if we don't let it fail 2014-07-12 13:52:37 +02:00
Sacha 9816ec3aa0 Fix conflicts. 2014-07-12 17:02:39 +10:00
Nekotekina 123c4ba1a8 Some bugs fixed 2014-07-09 03:04:36 +04:00
Alexandro Sánchez Bach 0002cc0af3 Removed old / unnecessary code
* Removed Plugins.h file as I assume setting up a plugin hell is a bad
idea (does anyone disagree?).
* Removed FnIdGenerator, and moved FnIdGenerator::GenerateFnId to
getFunctionId in Modules.cpp
* Disabled RSX Debugger and Memory Viewer when the emulator is stopped.
* ELF64Loader::LoadPhdrData refactored.
2014-07-06 16:44:56 +02:00
Nekotekina b11e086589 Small changes 2014-06-28 05:19:44 +04:00
Peter Tissen 95f1a0e645 use only one set of logging macros instead of two and don't use free() as a function name 2014-06-27 15:28:17 +02:00
Peter Tissen 21da317453 Logging system rework
* use one central unified log with channels/priorities ad-hoc listener registration and de-registration
* disable buffering by default
* add multi-threaded ringbuffer implementation
* use buffered listener for the gui (using the ringbuffer)
2014-06-26 17:34:28 +02:00
Nekotekina ccfaabd1d7 Defined thread_local for MSVC
Updated asmjit project
Tried to fix crash on exit
Fixed hypothetical issue when pausing already stopped emulator
2014-06-19 17:50:18 +04:00
Peter Tissen c37905e465 initial start to eliminate static func init, not compilable atm
move module initialization into a module manager, still has some issues like stopping not working and debug crashing

add #idef 0 to modules that aren't in the windows project

don't double initialize and don't de-initialize for now, since many modules don't expect it and it leads to many errors

remove duplicate module lists for empty modules and implemented ones, make Module non-copyable but movable

add secondary project, no real use for it now

add some memleak config to the emucore and add asmjit path to rpcs3

small rebase error fixed to get it to compile again

add filters for emucore

re-add the module manager and static file

WIP commit, linker errors abound

some more abstraction layer stuff

fix the remaining linker errors, re-enable platform specific mouse, pad and keyboard handlers

rebasing

fix memset undefined and re() usage of se_t before declaration

Add wxGUI define by default for cmake builds

fix copy constructors of Datetime header

fix copy constructors of other wx interface classes

remove static declarations of global variables

make wxGLCanvas constructor non-ambiguous even with wx2.8. compat mode, fix wrong std::exception constructor calls

remove duplicate definition for FromUTF8 and ToUTF8

temp changes
2014-06-08 23:16:06 +02:00
Peter Tissen 40add8f9a2 Seperate ConLog.h and ConLogFrame.h (for now only seperate headers)
make precompiled header slimmer under Linux to increase CI and dev-machine build-times

make sure unused modules don't compile
add unused modules to the VS project to easier keep track of them
2014-06-06 02:50:22 +02:00
Peter Tissen 8ef9414406 try to reign in the vector<ptr> madness 2014-04-14 10:55:43 +02:00
Bigpet 25c3aa8e19 fixes to get llvm to compile (excepti for utils.cpp, that'll get fixed
later)

Eradicate the Array almost everywhere, some usages like Stack still
remains
2014-04-12 12:06:52 +02:00
Peter Tissen 8ac226ae69 replace all instances of wxString with std::string in all cases not
directly involved in either the GUI or other wxWidget classes like wxFile
2014-04-01 16:23:03 +02:00
Alexandro Sánchez Bach 01dbb8eb9a Merge pull request #145 from Nekotekina/master
Fixed conflicts.
2014-03-31 12:04:34 +02:00
Nekotekina 39d1e21802 Fix slashes for Windows :p 2014-03-21 13:45:26 +04:00
Sacha 6968137bbc Fix slashes for Linux 2014-03-17 23:41:15 +10:00
Sacha 5f3f7e197a Linux build fix. 2014-03-12 02:36:58 +10:00
Nekotekina 384536ba4f prx_mem memory leak fixed
CPUThread::ExecAsCallback (experimental)
2014-03-04 23:18:17 +04:00
Hykem a1adc6cdaa First installment of RPCS3's custom crypto engine:
- Removed all scetool dependencies;
- Implemented a key vault to manage PS3 keys internally;
- Implemented SELF decryption;
- Improved PKG handling.

Notes:
- NPDRM SELF files (EBOOT.BIN) can also be decrypted. A valid matching RAP file must be placed under the dev_usb000 folder.
- The source code is considerably commented and several debugging functions were also added in order to aid anyone who wishes to contribute to the engine.
2014-03-03 04:48:07 +00:00
Alexandro Sánchez Bach 2827db0e2a Using be_t in some cellGcm structs & minor fixes
* Using be_t in CellGcmControl, CellGcmConfig, CellGcmContextData and
CellGcmTileInfo.
* Fixed wrong names in Emu/SysCalls/Modules/sceNp.cpp
* Fixed ConLog's mount info strings in System.cpp
2014-02-24 17:03:47 +01:00
Peter Tissen 1908286e7c make things compile under windows again, there's still some ugly ifdefs
I'd like to get rid of
2014-02-24 01:51:55 +01:00
Bigpet 9a30ce5f18 Make buildable with GCC in Linux
* replace GetThreadID with std::this_thread.getId()
* name all anonymous structs and unions that contain non-trivially constructable objects
* made default constructor for big endian type noexcept to make it work with std::atomic
* move instantiated specialized template function members ouside of the class definition to comply with the standard
* added default instantiation for template parameter "=nullptr"
* used the C++11 standardized thread_local instead of the __declspec(thread)
* added transitional definitions to bridge the microsoft specific calls (compare and exchange and aligned alloc)
* removed cyclic dependency between Emulator->CPUThreadManager->CPUThread->SMutex->Emulator->...
* fixed some instances of indentation by space instead of tabs
* surrounded some unused code with an #if 0 block to make sure it doesn't compile
2014-02-23 17:52:52 +01:00
Alexandro Sánchez Bach e7a721a1fb Merge pull request #46 from krofna 2014-02-21 17:13:57 +01:00
DH 321d323beb Improved VFS
- Implemended vfsDir.
- Improved vfsDevice.
- Improved vfsFile.
2014-02-16 17:19:06 +02:00
Alexandro Sánchez Bach 373d189edb Merge pull request #70 from Nekotekina/rpcs3
and conflicts fixed.
2014-02-13 12:13:05 +01:00
Peter Tissen b05e466e8f clean up more output conversions, everything that wants to get printed needs to be explicitly convertex to the wxCharType otherwise the VFormat prints nothing 2014-02-10 19:51:03 +01:00
Peter Tissen b9c3dc352d use .wx_str() instead of .mb_str(), Dbg console is still broken 2014-02-10 13:53:09 +01:00
Peter Tissen 3f52a6aa50 prevent overflow becaus wxStrings aren't \0 terminated anymore 2014-02-10 02:43:24 +01:00
Peter Tissen 59dcbd3ba3 make it compilable, don't merge this, string logs are broken and paths absolute to my machine 2014-02-10 02:13:13 +01:00
Nekotekina 7fce5589f8 Memory alignment fix
Some mutexes added, _sys_heap_memalign implemented
2014-02-02 23:49:10 +04:00
DH 4b8d6b6919 Improved ThreadBase.
Improved Vertex Shader Decompiler.
2014-01-31 20:40:18 +02:00
Hykem e807ae1a58 Merge pull request #37 from O1L/master
cellSysutil audio functions, configurable controls and other minor changes
2013-12-27 13:51:14 -08:00
Nekotekina ca13d4f2ef SPU
LQX Hack removed, Critical Section for m_status removed.
2013-12-27 15:35:08 +04:00
O1L 286254a10a Implemented some cellSysutil audio functions, added configurable controls (draft/ugly implementation), and minor changes in cellAudio and ConLog 2013-12-27 14:55:11 +04:00
DH b500fcbaed Fixed ELF64 loader.
Fixed cellPadGetInfo.
Fixed cellFsOpen path encoding.
Draft implementation of cellAudioGetPortConfig.
Implemented STBUX, STHUX, STWUX.
Improved Boot (S)ELF / Install PKG UI.
2013-12-24 05:58:32 +02:00
DH 23539f13b5 Improved Boot UI.
Added dev_usb000.
Fixed Game Viewer.
Minor fixes.
2013-12-08 18:54:45 +02:00
Hykem a9a246a866 General improvements:
- Added drafts for event flag emulation;
- Implemented memory locking/unlocking;
- Refactored common SC_Memory objects;
- Implemented VM (virtual memory) syscalls;
- Improved cellGameBootCheck;
- Added more dummy values to cellVideoOutGetDeviceInfo;
- Mapped functions sys_mmapper_allocate_memory and sys_mmapper_map_memory to sysPrxForUser;
- Mapped syscalls 341 and 342 (duplicates of 324 and 325) to sys_memory_container_create and sys_memory_container_destroy;

Improved PKG installation routine:
- Allow immediate game booting;
- Fixed and improved game folder path handling.
2013-12-07 20:56:42 +00:00
Sacha 6bcaf469e8 First stage of WX dependency removal. 2013-11-28 05:16:19 +10:00
Mislav Blažević d8bd34b57e Start porting to GNU compiler 2013-11-23 23:27:58 +01:00
DH b263c3ebaf - Renamed ARM9 to ARMv7.
- Improved ELF32 loader.
2013-11-05 21:22:58 +02:00
DH 6b22e7d90a - Implemented ARM9Interpreter & ARM9DisAsm.
- Implemented MemoryBlockLE & DynamicMemoryBlockLE.
- Implemented CPUDecoder.
2013-11-05 20:12:18 +02:00
DH 0b35be32a4 - Implemented ARM9Thread.
- Improved OpenGL Renderer.
- Improved RAW SPU mfc.
2013-11-03 21:23:16 +02:00
Alexandro Sánchez Bach f1b420eb3b SELF decrypter improves & About... dialog added
SELF decrypter improved:
The files 'scetool.exe' and 'zlib1.dll' are no longer needed. Everything
needed is now included in the rpsc3 project. So the only thing you need
in order to load SELF files are the keys. More information about this
matter in my last commit: c1565e55

Warning for devs! There is a lot of spaghetti code in /scetool/. I
fucked up things a bit while trying to include scetool in rpcs3. There
is a lot of unused code there and I need to make sure that everything is
working properly. In any case, the code seems to work stable so
end-users shouldn't be worried about this warning. ;-)

'About...' dialog added:
Well, I have nothing more to say here. I wish you all a nice day!
2013-10-21 23:02:43 +02:00
Alexandro Sánchez Bach c1565e55e5 Experimental SELF decryption support
This SELF decryption feature is not portable and its code looks really
ugly. It is experimental and is meant to save time to developers when
doing tests with SELF files. Besides that, it works (under Windows). :-)

How to use it:
1. Place "scetool.exe" (and "zlib1.dll") into the main rpcs3 folder.

2. Obtain a LEGAL copy of the SELF decryption keys and place them in a
folder named "data" next to the main executable in a format that is
readable for "scetool.exe". That is, following files should be present:
data/keys
data/ldr_curves
data/vsh_curves

(See screenshot in the comments)

NOTE: These are the steps to enable SELF decryption and it applies to
future commits regarding this matter. We do NOT take any responsibility
about the way you obtain the keys or (until we include SELF decryption
into our code) the actions "scetool.exe" (or "zlib1.dll") perform.
2013-10-14 21:40:44 +02:00
DH dd48f827c3 - Implemented be_t, mem_struct_ptr_t, vfsFile.
- Improved sys_fs, cellPngDec, cellJpgDec, cellGifDec modules.
2013-10-06 15:07:42 +03:00
DH eebe859f83 Improved mem_t.
- Implemented mem_ptr_t.
- Fixed issue 3.
2013-09-25 00:11:29 +03:00
Alexandro Sánchez Bach 1024a7c7c4 Mouse support added
*Implemented 'cellMouse*' functions from 'sys_io' module, which are part
of the libmouse library.

* Added corresponding entries in the 'Config > Settings' menu to change
the handler of the mouse. Supported handlers: Windows, Null.

* cellGifDec: Fixed some errors and added support for RGBA color.

(Remember: The mouse support is very experimental)
2013-09-14 20:20:57 +02:00
Alexandro Sánchez Bach 4835ae35af Keybord support Added
* Implemented 'cellKb*' functions from 'sys_io' module, which are part
of the libkb library.

* Added corresponding entries in the 'Config > Settings' menu to change
the handler of the keyboard. Supported handlers: Windows, Null.

INFO: This keyboard library is *very* experimental and I am aware of
some bugs. There will be improvements soon.
2013-09-11 22:49:49 +02:00
Cornee Traas eefd175900 Fix more spelling mistakes 2013-09-05 10:06:59 +02:00
Cornee Traas f4b98074b0 Merge remote-tracking branch 'upstream/master'
Conflicts:
	rpcs3/Emu/GS/GL/GLGSRender.cpp
	rpcs3/Gui/InterpreterDisAsm.cpp
	rpcs3/Gui/MainFrame.cpp
2013-09-03 19:26:31 +02:00
DH f83aa9d5ae OpenGL renderer:
- Improved Vertex & Fragment Shader Decompilers.
- Implemented fp uniform loader.
- Implemented DXT1 & DXT2 textures decompression.
- Implemented draft cellResc module.
- Updated glext.

PPU Interpreter:
- Fixed VSPLTW, VNMSUBFP, VMRGLW, VMRGLH, VMRGLB, VMRGHW, VMRGHH, VMRGHB instructions.

cellFs:
- Fixed cellFsStat syscall.
2013-08-26 17:18:59 +03:00
DH 234e174b7d - Implemented send open system menu cmd.
- Added cellSysutil module.
- Improved OpenGL renderer.
- Added cube & hello world homebrews.
- Implemented more GCM syscalls.
2013-08-19 02:06:11 +03:00
Cornee Traas 96c692aefc Fix spelling of IsRunned to IsRunning 2013-08-12 11:56:56 +02:00
DH 81e874c9e2 - Implemented HDD manager.
- Implemented VFS manager.
- Implemented MFC.
- Fixed ELF Compiler.
- Improved HLE Func binder.
2013-08-03 12:40:03 +03:00
DH 559852a8fc - Implemented RAW SPU.
- Implemented memory mapping.
2013-07-12 15:42:17 +03:00
DH fb57bb9c4e - Implemented MTCRF instruction.
- Implemented sys_spu_thread_set_argument syscall.
- Improved Debugger.
2013-07-08 16:24:46 +03:00
DH 6d7d3acb43 - Fixed loading modules in debug mode.
- Improved Lwmutex.
- Implemented events syscalls.
- Fixed SPU local storage.
2013-07-06 02:49:38 +03:00
DH b35dfdf29b - Improved PPCDecoder.
- Improved PPUDecoder.
- Improved Debugger GUI.

CompilerELF:
 - Added all PPU instructions.
 - Fixed analyzer crash.
2013-07-03 19:17:16 +03:00
DH 5753edf6ef - Improved sc function binder.
- Improved GLGSRender.
2013-06-30 11:46:29 +03:00
DH a90b5cf37a http://code.google.com/p/rpcs3/source/detail?r=44 2012-11-15 01:39:56 +02:00