PS3 ps2_netemu now with full hvcall support & lv1 dumper by 3141card

I knew it that @3141card latest work on ps2net_emu (ps2 emulator) on the PS3 will give use some form of profit. But this is just amazing progress already with full hvcall support + lv1 dumper, now one step closer to USB support and for sure one step closer to finally completely understanding ps2_netemu withing the PS3 firmware.​

upload_2017-5-31_18-39-28.png

  • @3141card has asked me to share this. it is ps2_netemu from 4.81 with full hvcall support, and option to dump lv1 from inside netemu. @mysis this is also for you :) https://mega.nz/#!FlMQ3SyB!-wtUdxvPEuGBZoB1awY9I5f3zBd_f3qLG7NOZugLE28 instructions on how to dump lv1 are inside. have fun :D

  • To dump lv1 from netemu:
    • replace Others.dxt from one included
    • go to main menu to quit game submenu
    • wait 5 minutes
    • double beep will indicate finished dump
    • dump inside others.dxt (last 256MB)

Download: via mega

Source:
playstationhax.xyz
 
Last edited by a moderator:
At this stage, the ps2_netemu in OP is for research & development purposes only...
However, like kozarovv already said, it's another step towards understanding ps2_netemu, finding fixes for some ps2 games having issues with the emu, finding a way to add external hdd support etc....
 
@kozarovv
Others.dxt is accident. It was the file i use to make some years ago my first proc space dump. It can be each other file in game folder. The small UFS2 driver stuff in net_emu do not allow the creation of new files or resize existing files. No stuff for create new inodes or alloc/free datablocks.

@kadorna2
Maybe later for gx_emu. I look on the other two emus last week. The ps2_emu is completely different from the other both. The net_emu looks like a child of gx_emu, many similarities. Net_emu is simpler(e.g. no network), but have more security stuff(check code for forbidden instructions, hvcall permissions, and so on).
 
@bguerville
I have no idea.

Question, is in gx emu menu a entry called "Config Parameter" ?

EDIT:
seems to show this infos from a config file, belonging to the game:
-----------------------------------------------------------
TITLE_MASK
SIO2_MASK
DEV9_MASK
USB_MASK
SIF_DMA_SYNC
SIF_DMA_LOAD
DMAC_CH10_INT_DELAY
MECHA_RECOGTIME
CPU_DELAY
DEV5_INT_SPEED
CDVD_READ_DELAY
SPU2_BEHAVIOR
-----------------------------------------------------------
Hidden debug info? If yes, then there must be a button-combo.
 
Last edited:
Bootparams and sm shutdown data that needs to be modified
Lpar can be loaded
Its actually not even that hard to do that since netemu and softemu have similar commands
That sounds like good news... Something to consider for the next 4.8x cfw release..? [emoji6]
 
seems to show this infos from a config file, belonging to the game:
-----------------------------------------------------------
TITLE_MASK
SIO2_MASK
DEV9_MASK
USB_MASK
SIF_DMA_SYNC
SIF_DMA_LOAD
DMAC_CH10_INT_DELAY
MECHA_RECOGTIME
CPU_DELAY
DEV5_INT_SPEED
CDVD_READ_DELAY
SPU2_BEHAVIOR
-----------------------------------------------------------
Hidden debug info? If yes, then there must be a button-combo.
Maybe are the names of the CONFIG commands itself
http://www.psdevwiki.com/ps3/Emulation#commands
One of the problems right now is by looking at a CONFIG file is not posible to know the name of every commands (to have an initial understanding of what does)
But i guess some of them are the info that appears on the debug menu screen that appears with the secret button combo you published, like the "L2H improvement", "force flip field", "vsync delay", xor csr", etc... all that seems to be the names of the commands, and the option to "save to file" should create a CONFIG file somewhere
Actually, the version of the emulator (displayed as "release build") that appears in one of the screenshots you published is the same "release build" used by command 0x3D in the CONFIG file

I didn't mentioned it before because i guessed you thought about all this too (and @Zar too for his editor and managunz support)
 
@sandungas
Find out the names/meaning for each value in config is the goal. E.g. to give @Zar the possibilitty to use names against offsets in his editor.
For the net_emu, "L2H improvement", "force flip field" and xor csr", are bools, stored direct in emu-core. No idea what they do. "vsync delay" is simple a delay, value * 10000, like the stepps under custom with R1/R2.

The constants sony define are:
Conservative = 0x4E20(20000)
Normal = 0x186A0(100000)
Aggressive = 0x3D090(250000)

The "save to file" methode is comment out by sony, but can be reactivated I think.

For gx_emu, if there is a button-combo to show (useless)debug info, then there is maybe too a settings menu, I just overlook now. Like the button-combo, I have not yet found.
 
any chance for auto fan temp control. My PS3 overheats without it
As is, syscon is already automatic fan control but arguably with values that are too low & thresholds too high.
S#ny must have favoured a lower noise factor to the detriment of better chip cooling while using a fairly poor cooling system in the first place.

To add better dynamic fan control like the one in webman from deank or the implementation in Iris Manager from Estwald, it requires a specific payload to be loaded into memory.
Currently, because the emulator basically becomes lv2 memory once loaded, it makes it difficult to implement fan control in a traditional way. Difficult but not impossible so you may still get your wish in the future...

Anyway in the meantime, you should do what everyone else does in this case, use wMM dynamic fan control & in wMM setup page, tweak the ps2 fan percentage to a sufficient value (above at least 40/42% if your console heats up).
That value will be used when you start the emulator & when wMM is unloaded, for example when you use PSN. It's a manual fan mode setting but it's better than syscon if you have heating issues.
 
Last edited:
Communication with system manager proxy in lv1 works fine. It is posible but complicated to implement. For example, get the temps of cell and rsx works fine:
HthOk3K.jpg


Implement a simple sm_get_temperature() was not hard. Btw, the problem here, I ask continously in each frame of the mainmenu, this block other request. Have to implement a simple timer.
 
Communication with system manager proxy in lv1 works fine. It is posible but complicated to implement. For example, get the temps of cell and rsx works fine:
HthOk3K.jpg


Implement a simple sm_get_temperature() was not hard. Btw, the problem here, I ask continously in each frame of the mainmenu, this block other request. Have to implement a simple timer.
Assuming that your research are focused on net emu. You don't have any FULL BC PS3, right?

I'm asking because it's look like on those models there is a additional temperature monitoring IC used specially for EE/GS. I could be fun to show also those temperatures if possible. But I'm not sure how hard/easy will be implementing something like that.

http://www.psdevwiki.com/ps3/Thermal#PS2_EE.2FGS_.28CECHAxx_.2F_CECHBxx.29
 
Back
Top