#Modding the MGS1 emulator

1 messages · Page 13 of 1

quartz aspen
#

It is enabled. Not working.

#

I'm using a Radeon RX 5600 XT by the way, in case that helps.

zinc ferry
#

I'm seeing a theme forming. @red cradle what's your GPU?

hollow ridge
#

I have the same glitch with a 5700XT

pure radish
#

AyyyyyMD

#

well that's going to be a bugger to sort

#

i havent had an AMD GPU in 10 years

red cradle
#

NVIDIA GeForce GTX 1060 laptop

#

quite old model

pure radish
#

maybe 99999999 too big lol

#

but apparently needs to be bigger than the window size (???)

#

one sec

#

it seems to be the layer size that is causing issues, not the render res

#

i'll add some ini options to override it

#

won't put this on github straight away

#

ill just put it here so ppl can test

red cradle
#

nice idea, so it won't have too many hotfixs on github lol

pure radish
#

So under [Internal Resolution]

#

you can specify LayerHeight = num and LayerWidth = num

#

see if changing that helps on AMD

red cradle
#

lol test it with Nvidia gpu, now it have the screen cut off situation again

pure radish
#

yeah if its too small it will do that

#

setting it to 999999999 works (^:

red cradle
#

hmmm if this works for amd users, maybe you have to release two versions for AMD/Nvidia

quartz aspen
# pure radish

Do I drop that file and replace old one and add those lines to the .ini?

pure radish
#

yup

#

you'll have to play with the values you set them to

#

try and see if you can find numbers that work without the image being cut off

soft falcon
#

I believe it uses amd

pure radish
#

thats true

#

fwiw, this is one of the settings I didn't really understand - it seemed to control what the emu reports as the layer position / size to the M2 rendering library (which handles everything, like the squirrel menus)

#

some of the values control a relative offset

#

but sorta.. not really

quartz aspen
#

OK, setting those values to my native res kinda works but the right side of the image gets cut off.

pure radish
#

basically its confusing and they have strange side effects

#

yeah, that's the bit I definitely don't get

#

because I had that issue too until I set it to my native res

#

but seems some people have the issue with it set to native res, so I changed it to 99999999

#

and then AMD had issues

#

try slightly bigger than native res, like 2x

#

this option doesn't really change anything in the emu internally, it doesn't affect what the PSX side is going to do

#

its purely for their compositing stuff

#

"layer" is their terminology - everything that has graphics is a layer

quartz aspen
#

Got it working! Set it to 1440p and looks okay.

pure radish
#

what's your native res?

#

maybe we should just set it at 1440p for everyone :S

#

seems very arbitrary though

#

what happens if your native res is 4K

#

I did notice some suspicious hardcoded values in their code here

#

I saw a 2560 and thought it was something I patched in ages ago

#

but nope, it really does have 2560 in it

quartz aspen
#

My native res is 1080, so I just put in the values 2560x1440

#

But, widescreen still doesn't work.

pure radish
#

even with the ingame setting set to 16:9 or fullscreen?

quartz aspen
#

Oh, and only issue I have is that the save load screen doesn't show some text. Look:

pure radish
#

ah god damn it not that again

#

i thought i fixed that

quartz aspen
#

Rest seems to work fine.

hollow ridge
#

widescreen seems to work on my end, outside of the underwater camera issue

quartz aspen
#

Is the widescreen setting tied to the in-game widescreen option?

quartz aspen
#

So I have to enable it in-game?

pure radish
#

yup

quartz aspen
#

Ah, time to test some more. Will report back.

pure radish
#

widescreen in the ini just turns on the "widescreen hack" to correct aspect ratio

#

but it will only do that if you switched to widescreen ingame

red cradle
#

maybe add some descriptions in the next hotfix

#

oh and the patches descriptions too

pure radish
#

yeah can do that if 1440p works for everyone (???)

#

can't spend huge amounts of time here for another week or so

#

but I can do a quick fix

quartz aspen
#

Good news and bad news.

#

Widescreen works if I enable it in-game as well.

#

But, cutscenes seem off in both 16:9 and 4:3. It's like they are offset or something. The intro with the submarine I can't see it.

red cradle
#

damn

quartz aspen
#

Codec calls look fine.

pure radish
#

is this set to fullscreen or 16:9?

quartz aspen
#

Tried both. Widescreen works fine but cutscenes have that issue (in 4:3 as well).

#

I suppose they are rendering at 1440p and not being downscaled properly.

#

It's like the image is zommed-in.

#

Okay, so played around some more with the res settings. No need to put it at 1440p to solve the black right side issue.

#

Set it to this and looks fine!

#

LayerWidth = 0
LayerHeight = 1080

pure radish
#

wtf..

quartz aspen
#

Figured the issue of right side cutting of must have been the width, and bingo.

#

Cause vertically the screen looked okay.

#

However, cutscenes still messed up so it wasn't a scaling issue.

#

Can only see top part of submarine.

#

Played a bit and found no issues with intro graphics, menus or codec calls. Only thing messed up seem to be cutscenes and the text on loading screen.

#

Those issues aside, game looks really good at native res. It only needs geometry correction and this will be the best way to play MGS1. Hopefully you can iron out the remaining issues. I will test any potential fix you provide.

#

With the internal res scaling disabled, the cutscenes work fine.

pure radish
#

lmao

#

so it's not caused by the GTE, definitely a side effect of the res bump

#

and it's only some scenes in the cutscene

#

because inside the submarine is fine

#

its just outside

#

lemme try something

quartz aspen
pure radish
#

lmao that shaky blue line

#

for dramatic effect

#

yeah that's probably gonna need some separate fix

#

it's not really something bugged on my side it just needs separate fixing

kindred chasm
#

I don't know where the logs at mgnSweat

woeful flare
#

oop sorry i missed this, getting it now

#

i'll try this hotfix tho

woeful flare
#

okay i get that same corner issue, will try the file

#

ah! well

pure radish
#

what happens if you set the layer to 2560 1440?

woeful flare
#

i set it to 1440p like anidais

#

sooo,

pure radish
#

for fuck sake

#

try other values?

woeful flare
#

1080p cuts off more of the screen so

#

maybe 4K will do it idk

pure radish
#

and bigger?

#

i wish i hadn't released this yet haha

woeful flare
#

still cut off, but not by too much now

pure radish
#

the pressure is not good

#

what the fuuuuck

#

its completely unpredictable lol

woeful flare
#

i could try 8K? 😭

pure radish
#

do it

woeful flare
#

seems like overkill tho

#

alright

pure radish
#

roll a 4294967296 sided dice

#

we have no idea what it's actually doing with this number atm

woeful flare
#

you won't believe this

pure radish
woeful flare
#

still doing the memory card text thing tho

red cradle
woeful flare
#

OH maybe i should do that then

pure radish
#

also what GPU / display resolution?

woeful flare
#

AMD Radeon RX 6750 XT at 1920x1080

pure radish
#

it has shitloads of info

pure radish
#

horror game

red cradle
#

LayerWidth = 0 LayerHeight = 1080 won't do huh...

pure radish
#

this suddenly became 10x more interesting lol

#

i should figure out what these actually do

#

will be next week tho

kindred chasm
woeful flare
#

i can send a log if that'll help at all

zinc ferry
woeful flare
#

would you like one of this result or of the 8k scaling

pure radish
#

I don't have black bars

#

and I'm on a 3080

kindred chasm
#

Getting up to send both old log and attempt to see fix on deck

woeful flare
#

there's one at the bottom?

#

but not the top

zinc ferry
# pure radish and I'm on a 3080

Hm, same. Will try something when I get home, maybe it's trying to scale the viewport to my native resolution (4k) instead of my actual resolution (1440)

pure radish
#

for me fullscreen and 16:9 completely fills the entire screen no bars

#

and the 4:3 options just have the background at the sides and nothing at the top

woeful flare
#

there's still a black bar at the bottom in widescreen tho, but it seems to work just fine regardless

pure radish
#

lmao

#

complete shower

quartz aspen
woeful flare
#

i did

quartz aspen
#

That works fine for me. The remaining issues probably need separate fixing.

woeful flare
#

setting that to 8K values fixed it enough for me

quartz aspen
#

Is your native res 1080?

woeful flare
#

yes

#

has this issue with codec numbers been reported too

kindred chasm
#

Here's log before the layer fix. Going attempt to use new version and grab log it something comes up

quartz aspen
#

I have no issues with codec at all.

pure radish
#

does 8K values work for everyone...

quartz aspen
# woeful flare yes

Are you using the fix nuggs provided earlier and replaced the one in the game directory?

quartz aspen
#

Well, everything works for me except the cutscene issue and some text not showing in the load screen.

red cradle
#

write correctly under [Internal Resolution] for LayerHeight = num and LayerWidth = num?

#

also make sure not confused the value for Height and Width, since the order is not Width and Height like [External Resolution] in ini lol

kindred chasm
#

Default values work, all i did was change true to borderless and enable internal res

pure radish
#

try this

kindred chasm
#

Theres black bars top and bottom but works otherwise

pure radish
#

doesn't have the ini options

#

just uses 8K values

kindred chasm
#

Will do hang on

red cradle
#

holy 8k

pure radish
#

what a crock of shit

kindred chasm
#

Shit shouldve grabbed log first

#

Applying the .asi changed nothing for me. Codec missing numbers and save files missing names

pure radish
#

that is not going to be fixed any time soon

#

all i care about is display cutoff

quartz aspen
pure radish
#

that is also not going to be fixed any time soon

#

I need to know if 8K works so I can release a hotfix

#

I cannot work on this much for another week

kindred chasm
#

Log here if you need outside of the other visual stuff it works for me.

The black bar on bottom of the screen looks like the game is too high up? Copyright text looks higher than usual

pure radish
#

ffs lmao

hearty dirge
#

Maybe people can send their logs to GitHub and open an issue on your repo, you could get to it whenever you are free? Would be much more organized but idk

pure radish
#

i just want to get it to a serviceable state

#

"you can see most of the game" is serviceable imo

#

text and shite is noise rn

hearty dirge
#

All these error reports kinda overwhelming I can only imagine

pure radish
#

im regretting releasing it

#

lol

kindred chasm
#

It was bound to happen since everyone's setup is wildly different mgnSweat

hearty dirge
#

A Rule of thumb would be to test your code on multiple pc’s if you are able wheeze

pure radish
#

i don't have access to any

hearty dirge
#

Damn

soft falcon
pure radish
#

the whole project is experimental

hearty dirge
#

Lol

soft falcon
#

Experimentallier than usualGuilty

kindred chasm
#

Experment of an expermental project Guilty

quartz aspen
# pure radish the whole project is experimental

You are working miracles with what you have. We should be grateful this is even possible. If only Konami did it themselves. I mean if you figured out a way the developers with all the code knowledge should have an easier time.

pure radish
#

it's the stress that fucks me up lol

kindred chasm
#

And with less experience working with the stuff no less. Literally carrying the game

#

The black bars is present whether I use internal res or not. Lemme hook this up to a TV

pure radish
#

black bars seems like their problem not mine

#

it happens even without M2Fix

#

but only for some people

#

seems like the very different results on different machines is caused by them but made even worse by me

kindred chasm
#

Think this is how game companies feel when they release alpha testing?

quartz aspen
#

I get small black bars on top and bottom even without the mod enabled so it's a game issue.

pure radish
#

this stuff is hard, okay?

red cradle
#

makes me wonder is the game's native res a true 4:3? or it's much more less wide

hearty dirge
#

I bet.. learning the ins and outs of an obscure emu without the source code seems like a real pain in the ass.

kindred chasm
#

Same results when monitor is changed to TV. I don't think the problem's with that?

pure radish
kindred chasm
#

Got another rig to test this out

pure radish
#

though they are the same if you enable the res hack atm

kindred chasm
#

It's already pixel perfect made with love mgnLove

verbal comet
#

I see why game dev/modding is a nightmare now, i don't think i have the needed patience. You're a saint nuggs.

kindred chasm
#

Konami still hasn't fixed DLC going to steam store ;;

#

Any chance this will work on US version?

#

nevermind found it

pure radish
#

any software development is a total shitshow tbf

#

even my day job rn is a nightmare LMAO

kindred chasm
#

The 8k without ini asi the internal res works out of the box

#

This is for a Cyberpower PC which uses AMD

#

Same issues reported but otherwise internal res works

pure radish
#

ugh, what a deflating day

#

problems here are just irritating because i released too early and can't really work on it much for a bit

#

problems at work I'm going to blame on my predecessors for dreadful design

#

yeah fuck it I haven't even worked on this thing before and it sucks

#

I might be responsible for MGS1 being fucked but I'm not responsible for the shambles at my day job

kindred chasm
#

you aren't responsible for mgs1 being fucked you're responsible for making it the best it can be despite not having the resources mgnLove

hollow rock
#

Yeah I mean it's pretty damn commendable what you've done nuggs. You may as well be a full-fledged emulator dev at this point

pure radish
#

the defaults for that layer stuff is the "8K" values 7680/4320 but you can add LayerWidth/LayerHeight if that doesn't work for you

#

nobody has complained about the 8K values yet sooo

#

must be better than 99999999

#

anything else will have to wait now

zinc ferry
#

will open a report for it on the git

pure radish
#

might be one of the worst github issues ive ever seen

#

no offense if the person who posted it is in here

#

it might as well just say ¯_(ツ)_/¯

hearty dirge
#

Just close it

#

Why is it open lol

north estuary
pure radish
hearty dirge
#

💀

pure radish
#

has anyone else actually ever seen that

#

(i have not)

zinc ferry
#

I haven't, no, that was a few days after patch 1.4.0 released though so perhaps they were just on an old mgsm2fix version and it was acting up for them?

#

hard to gauge what the issue is without logs

woeful flare
#

i can also confirm the issue with underwater stuff and cutscenes is happening with me too, so i guess it's just a wider issue with others

pure radish
#

yeah even i have that one

#

borked

woeful flare
#

woofed, even

zinc ferry
pure radish
#

its quite funny tho

pure radish
woeful flare
#

steam year in review 2024 is gonna be wild

pure radish
#

im gonna actually play some of this game

#

rn

#

srs

zinc ferry
#

that's a mood lmao.

pure radish
#

ohhhh, it's integral with the black bar at the bottom

#

UK version doesn't have it

#

interedasting

verbal comet
#

it's probably because pal tv's were taller back in the day

soft falcon
verbal comet
#

576 vertical compared to 480

#

and the collection doesn't take this into account

#

so it squeezes us into the pal aspect ratio

#

for some reason

pure radish
#

its definitely supposed to handle it properly

#

code is there to do it

#

bro the soldiers throw grenades into vents

#

i only just discovered this

#

goty.

#

hmm

#

it's quite playable like this really

#

issues arent tooooooo bad

#

reflection / water effects prob the worst issue

#

water ur just blind

pure radish
#

revolver ocelot cutscene is a bit screwy too

#

not every part of it

#

just certain bits

kindred chasm
#

Just replace everything with revolvers when he appears

red cradle
red cradle
#

oh no journalist noticed you lol

cerulean coral
#

raided the emulator and improved it

red cradle
#

talking about MGS1 widescreen, I just saw this proof of concept, wtf
https://vxtwitter.com/timsoret/status/1755008546855383152

I built a proof of concept with The Last Night's rendering tech, which would be perfect to faithfully bring PSX classics to new audiences with their crisp original art, except in 16/9 4K HDR 60fps.

【QRT of G…

💖 89 🔁 19

▶ Play video
#

hmm.. maybe they used the og assets for their engine to test it

cerulean coral
#

those who make shaders can achieve good things

hoary pier
#

Like it looks great but I dunno how he considers this somehow more preservationist than a straight emulation

tribal acorn
#

It’s made in Unity

#

It’s just the assets

zinc ferry
#

look at this beautiful ass bug report

meager yacht
hoary pier
#

Yeah you can

#

And it's being done by Aspyr who do fantastic remasters of games from that era

#

I think he fell for some ragebait or something

meager yacht
#

Yeah maybe

hoary pier
#

It looks good too. Like how I remember it vs how it actually was

red cradle
#

lol I thought something is wrong while testing the CN ppf with this update, I just noticed that you change the Advanced options from "GlobalRAM = / GlobalCDROM = " to "DisableRAM = / DisableCDROM = ", I'm so used to set these options all false, but this time around you have to set them all true.

finite peak
#

Sorry for the really long delay on responding but I'm finally over the rona. Yeah so the thing is, you can upscale it to 4k, but the GUI just completely breaks.

#

I feel personally attacked by this lol

finite peak
#

And guys I'm going to say this one more time, if you want a higher framerate for MGS1, black frame insertion with the windowcast core does wonders for the game

pure radish
#

time to answer this M2 question once and for all!

hollow rock
#

Imagine how this fella would look at 4k. You'd be doing god's work nuggs

jovial schooner
sick osprey
pure radish
#

tbf i can set fire to lots of this now

red cradle
pure radish
#

lmao

#

I only need the v1.2.2 one really

#

the 3.4gb one has an entire RAM dump in it

#

including all DLLs

#

v1.2.2 is my reference for everything

#

lots of them had resolution patches that arent needed anymore

glad frost
#

true

#

good to cleanup these things lol

pure radish
#

"Reset the game."

#

ok

dusty radish
#

yes

kindred chasm
#

Colonel's speaking to you nuggs?

red cradle
#

W indeed

cerulean coral
#

I tink press shortcut save and load screenshoot or savestate?

glad frost
#

Nuggs do you reckon you'll have much luck ironing out the issues with your recent resolution discoveries?

pure radish
#

depends if you include the enhancements or just bugs

#

at this point I've only really investigated one enhancement (PGXP and similar) and it's looking like a solution will be quite bespoke, but perhaps Psy-X & REDRIVER2 can be used for inspiration

#

"generalised" PGXP in the form that you find in duckstation extensively relies on the CPU telling on itself, but that model doesn't work in M2 because the critical paths are accelerated with native code

#

the Psy-X implementation demonstrates a different model where the game cooperates rather than the CPU, and that might be more applicable if the accelerators are better understood

#

as for the bugs, I haven't really investigated them, haven't had much time the last few days

#

so it's not really in anyone's interest for me to come to a verdict on the bugs given I have about as much information as everyone else atm

#

it's known that the game uses Psy-Q so I have high hopes for Psy-X being further useful (at the moment I just use Psy-X for its GTE so I can implement the widescreen hack)

#

m2engage and Psy-X share a lot of ideas, m2engage acts a lot like a compatibility layer rather than a general emulator

#

I don't have any evidence indicating that these things are intractable and impossible, so hopefully all a matter of time, but that's just absence of evidence not evidence of absence

#

I mean really, most of the code is not running on the virtual CPU, vast majority is running natively and just making sure the CPU sees the "results" of most expensive operations for the small amount of simulated MIPS code left

#

calling these things emulators is a bit of a lazy criticism in the way that people describe them... the effort here is staggering for someone to cast it aside with cheap derogatory remarks

pure radish
cerulean coral
cerulean coral
pure radish
#

nominative determinism

chrome path
#

Aptronymous Stoner PS1 emulator man

cerulean coral
#

nuggs is not real, it is an emulation of human hardware

pure radish
#

I'm not a stoner EVs_02catrageuwu

#

my drug history is very regrettable but doesn't include much grass

dusty radish
#

mines a bit... fungal

#

cos im a fun guy high

pure radish
#

fungals where its at, shame it didn't stay there for me

hoary pier
#

I haven't had the time to be a fungal fella in a hot minute but it's always a fun time

pure radish
#

alright, completed all primary objectives so can return to my favourite side quest soon

zinc ferry
#

okay this face is fucking hilarious to me

dusty radish
#

he chewed a bee

red cradle
#

Snake when eating a lemon

glad frost
#

lol

#

based on the work Nuggs has done I think he is probably able to identify the cause of those

soft falcon
pure radish
#

how it feels to chew 5 gum

#

his senses certainly seem stimulated

#

yeah, this is probably just tangled up in the PGXP stuff, it's geometry that needs correcting I would guess

#

it's a precision error

#

that's "enhancement" not "bug fix"

#

cutscenes & underwater / text on some machines / screen alignment are the "true bugs"

#

helps a ton that we have the GTE replaced, makes it much easier to work with that side of things for PGXP

#

probably going to approach each of these in my usual random fashion so don't expect linear progress, i'll jump around to different things a lot

#

but they'll all get looked at

red cradle
humble ravine
timid hemlock
#

Also the obligatory daily "which snake is your favorite?", and "who would win in a fight between these snakes?"

glad frost
#

Interesting about the geometry misalignments.

pure radish
#

aight its been 4 months, promoting MGSM2Fix to a faster hard disk Pepenga

hollow rock
#

hard disk? 💀

copper goblet
#

nah it's soft

pure radish
#

nah it did go from a spinning platter to solid state

#

the old disk is so slow it takes seconds to spin up

soft falcon
pure radish
#

i have a looot of storage

#

this one SSD is 8tb alone lol

#

and it is m.2

cerulean coral
#

8tb lol

pure radish
#

mostly just assign things to drives based on the bandwidth requirements and the likelihood of thrashing write cycles

cerulean coral
#

you must have all the nuget libraries downloaded

pure radish
#

but if I totalled up the delays due to the slowest disk in the universe, idk

#

maybe starts to be non-negligible by this point

#

also tbf when I created the project I had no idea it would have legs

chrome path
meager ice
pure radish
#

started exploring replacement of the GPU with Psy-X since it has PGXP bits & presumably dithering, a little bit more hairy than the GTE but looking broadly feasible

chrome path
copper goblet
pure radish
#

Less of a halfway house

#

like a 0.0001x-way house

#

integrating duckstation would be like 1000x the work involved in what I'm trying

#

the GPU is not the M2 rendering stack

#

it's specifically the PSX-GPU component

#

I doubt I will use PsyX_render

#

that will become very complicated

#

I'd guess if we touch the renderer it's some small patches, not replacing it

#

PsyX is nice because it quacks like M2, similar conceptually

#

and it has very few dependencies so it's easy for me to chop bits in

#

with M2 you've got a basic instruction set simulator for the game logic, attached to a compatibility layer which is comprised of 100% native code... if we just glance over the small amount of instruction set simulation it's doing, it's just a compatibility layer

pure radish
#

also, it's not necessarily the case that these things will stick around longer-term, they're useful as low-ish effort learning experiments to figure out wider M2 stuff overall

#

could end up doing it and then ultimately go a different way

#

but if it "works at all" then it'll at least be kept in some form for posterity

#

learn a hell of a lot more by poking the bear than just staring at it

chrome path
#

Roger. My mistake.

cerulean coral
#

Plugins system is nice

pure radish
#

byotiful

dusty radish
#

what is that little fella? doesn't look like my gbc

pure radish
#

analogue pocket

dusty radish
pure radish
#

alright I'm done collecting metal gear shit

red cradle
#

Metal Gear Shit, also MGS lol

pure radish
#

it's come in one of those bloody plastic containers you see around "graded" stuff

#

...and it's staying there

#

the only other thing I have with one of those is a copy of skullmonkeys

#

that one feels slightly redundant

#

plastic case to ensure the plastic case doesn't get scratched

#

at least this is defending a box made of card

cerulean coral
#

Metal Boy Solid

pure radish
#

Metal GameGear Solid

#

they released it on the wrong handheld

cerulean coral
#

Umm good point.

#

Speaking of puns. Maybe they were wrong calling the third installment Metal Gear Solid, since Solid does not exist yet. And you need Metal Gear Liquid and Metal Gear Eva, and Metal Gear Otakon

#

I guess the new Metal Gear Delta is a good change

dusty radish
#

metal gear evangelion? smirkin

glad frost
#

It can't be!

pure radish
#

im basically decomping the GPU here

#

well, at least to begin with

#

i need to get it to the point where it's broken out such that I can even use the PsyX primitives

#

in essence, obv PsyX doesn't implement the hardware interface since you're just expected to call the GPU funcs directly

#

it should "just" be reg read / write and a couple other bits

glad frost
#

It sounds like a smart approach tbh

#

Can't build a house (that lasts, that doesn't have issues) unless you dig the foundations first 👍

#

I also wonder if you might stumble upon anything else while doing that, it might expose something

#

Or give you new insight into how certain things work

timid hemlock
#

I'm wondering what could be achieved, that other emu's haven't achieved before, besides modding. If game logic could be severed from framerate, 60+ fps could probably be achieved, but I'm sure we won't see that until the decomp is finished. As it is now, it seem that PGXP, dithering and CPU overclock are the only key elements separating this version from Duckstation.

#

Speaking of mods, have anybody made any mods for this version yet? I haven't seen any so far.

hearty dirge
#

Mods are possible from what I read, the tools are also available to mod mgs1, so… idk maybe no ideas ?

meager ice
#

I was always hoping to see MGS1 have a romhacking scene a la SM64

#

Kaizo MGS1

timid hemlock
#

Wonder what the limits of injecting mods are... Probably mainly textures i would guess

#

..no Thomas the Tank Engine helicopter fight 😦

pure radish
#

i hope vol2 has some M2 stuff

meager ice
#

$3,000 bounty to whoever replaces Volgin with Shrek

hearty dirge
#

lol model importing is something all games are missing..

meager ice
#

One day…

timid hemlock
#

Liquid: "Snaake! I'm afraid I can't let you get past here!" toot toot

pure radish
#

oh hey

#

now it "works" well enough for the game to actually run

pure radish
#

should be able to just dump tomorrow onto this stuff

#

been a while since I got a whole day at it

#

gawd, IDA can make pretty ugly pseudocode when it wants to

#
    {
      if ( gpu->State == 2 )
      {
#

and it just goes on

cerulean coral
#

no goto, no foreach, no switch

pure radish
#

yeah it's very afraid of concocting a switch if it doesn't have the hard evidence of a jump table

#

but this code was prob a switch statement in the original src

pure radish
#

i have the GPU primitive command flow implemented, so I guess somehow need to stuff the command params into the primitive structs for PsyX

#

? lmao

pure radish
#

hmm...

pure radish
#

I guess I can kind of do the GPU stuff in parallel to begin with

#

leave the normal GPU in place and snoop on it

pure radish
#

IDA has made such a pigs ear of this function that I'm using Ghidra instead

#

nice, the decomp'd GPU read is equivalent, so I can play the game

pure radish
#

ohhh

#

ohhhhhh

#

the text issue happens for me on integral now

#

maybe its just related to the alignment issue

glad frost
#

interesting

#

good if you're getting the errors yourself though, i wonder what caused those issues

#

like it seems weird to me that the game would mostly work with your resolution bump, but then randomly small parts (eg. snake's face) will be messed up

pure radish
#

it's because it doesn't support that GPU opcode

#

it makes sense for that one

#

the ones that are missing are ones I would have to supplement as I'm attaching it to a "real" emulator

#

since this is really designed to build a PSX game from source for PC, you wouldn't need to use those under its intended usage

#

anyway since I caught a whiff of fixing some of the bugs I'm looking at that now for a bit

#

I didn't realise some of them weren't actually related to your system, it's actually just that integral is borked

glad frost
#

Interesting

#

And some are related to things like individual resolution/system though you reckon?

pure radish
#

i shoulda really tested it better but got carried away lol

glad frost
#

Nah, IIRC you were at the mercy of one or two dudes in here screaming at you to hurry up and release it 😂

pure radish
#

yeah, the stuff facing the host GPU is all kinds of screwy on different GPUs

#

but

#

nobody has complained about those issues since v2.1

#

so maybe the random values we pulled out of our collective arses work for everyone

#

I'll try and understand that better at some point but, not while there are real issues to solve

#

I think everyone is now seeing the same issues and it just depends on which game version you've selected

#

the european releases are likely all working quite well and just have the cutscene issues

#

I think I'm near a fix for the integral issues

glad frost
#

wow, super interesting

#

good luck and don't forget to hydrate 🙂

timid hemlock
pure radish
#

seems like that's the alignment sorted

#

it was kind of trying to do the right thing

#

it had determined the vertical offset should be 8 via (256 - 240) / 2

#

but that needs scaling up

#

by the resolution multiplier

#

anyway, that does mean the solution I had for text issues on the european release won't work for integral

#

so I might as well bin it and find a better way

#

why do I get confused between height and width ALL THE TIME doing this stuff

glad frost
#

is it just me or is that image still squashed vertically?

#

maybe that's how the logo is normally

pure radish
#

perhaps, this likely isnt the final presentation as I'm still tracking down the text issue which is probably related

#

but it is ..closer

#

definitely seems like its supposed to have these borders

#

coz it'd be even more work to remove them

zinc ferry
pure radish
#

if it doesnt work anymore then what the hell am I doing working on resolution issues haha

kindred chasm
#

Wide snake breaks the game obviously

pure radish
#

i really need to refactor this project at some point

#

its a hell of a mess coz it just ballooned in ways i didnt expect

zinc ferry
#

Said every programmer ever.

pure radish
#

hmm, I've designed better things in the past

#

I think this is due to foresight being almost impossible, there's like a fog of war

#

dunno what is even possible until its done

cerulean coral
pure radish
#

oh gawd I found a hack that fixes the text on integral but

#

it cannot stay lol

pure radish
#

what

#

368

#

where did this number even come from

#

PSX-SPX

#

but that's not the number M2 used

#

M2 uses 384

#

well that's an oddity, wonder what happened there

glad frost
#

i wonder what the 16 difference is?

#

it wouldn't be related to the different aspect ratios between integral and OG would it?

pure radish
#

the european releases (at least) switch into that 384 mode in some menus (save select & codec)

#

but integral does not

#

that's essentially what's buggered up the text in integral

#

my workaround in v2.0/v2.1 was to not change any of this stuff for the 384 mode

#

and I cannot for the life of me find some other "reasonable" way to detect things to leave alone, so

#

I think I'm probably just going to have to solve the actual problem

#

because I doubt mainstream emulators have hacks like waiting for the 384 mode lol

#

so when you launch a european release with m2fix currently it's actually hopping back to 384 temporarily in certain situations

#

but the end result is the same because they're just drawing bitmaps anyway

#

i'm hoping a fix for "the actual problem" might cover things like the mosaic effect not using the correct pixel data

#

so you see a cell wall-coloured blur

#

it all sounds like symptoms of the same underlying disease

#

sounds like there's some subtle bypass of the usual GPU flow that results in some pixel coords not being scaled correctly

#

as for why the value differs from PSX-SPX, god knows

#

didn't somebody say that the game isn't even displaying at the correct aspect ratio even without m2fix

#

maybe typo lol

#

it'd help a lot if I had the Psy-Q accelerators reversed but that stuff is extremely weird and I haven't made much sense of it yet

#

even just matching up the functions to the Psy-Q headers is difficult, it's-it's... oh

#

penny just dropped maybe there lol oops

#

those very strange accelerated PCs (almost like vectors) are not called by simulated MIPS code, they're just known addresses that the game-specific Psy-Q accelerators vector to

#

is my guess

#

the big chunk of code they removed from each game

#

alright pretty sure I know how to ID those now then

#

that'll help a lot because I can then use the MGS decomp to understand the difference in the draw calls used and follow that through m2engage

#

I wonder if they have anything using that VRAM pointer in the CPU object

#

CPU is not meant to have VRAM mapped (physically), but... M2

#

my horrific integral hack (in the absence of the 384 hack) was to snoop the command buffer under the assumption that the GPU doesn't do much work for the broken screens, so it should be reasonably stable and consistent

#

and... I guess it was, but it's not a proper solution soo

#

can just about catch the effect of that when it switches display geometry between screens in this #1168512986491670548 message

#

just monitoring what was most recently popped from the command buffer at the end of the frame p much

glad frost
#

yeah i was wondering what i was missing from that video

#

it's a really weird situation by the sounds of it

pure radish
#

can see the screen nyoom off to the top left after the save is selected

#

anyway, that can definitely be fixed, it's just a case of finding a fix where you can still look at yourself in the mirror afterwards

pure radish
#

oof, im here at last

pure radish
#

it will be useful no matter what happens

glad frost
#

yeah

#

A stitch in time saves nine

#

Sounds like very sensible programming practice

pure radish
#

holy SHIT

#

EA Desktop is the least robust piece of software ive ever encountered

#

i am CERTAIN

#

the thing refuses to reinstall because it thinks its already installed but it isnt

#

proud of my guys on the Origin team for the grift, but holy hell

#

WHY DOES THIS THING HAVE 20 EXECUTABLES

#

THERE IS NO RATIONAL REASON

#

when you have nothing to do so you just invent work

#

has nobody fucking said "whoa stop"

#

who goes out of their way to write code to prevent reinstalls

#

turns out littering my C drive with multiple copies of the software so that the "EADestager" can move the correct one into the original location while logging its attempts to do so didn't make the fucking thing work properly in the slightest

kindred chasm
#

What the fuck EA

#

Origin should've stayed i don't care if it's outdated, at least it made sense

copper goblet
#

None should've stayed tbh...

kindred chasm
#

Also nuggs, idk if it'll help, but there's another group that did a decomp of another PS1 title Legend of Dragoon

pure radish
#

happy to have a look (especially if it was ported to PC)

#

lmao in NO sense is EA Desktop installed rn

#

no registry keys

#

Origin come back I miss you

#

"Are you having problems installing or uninstalling a program?"

#

oddly, both

#

I have:

#

C:\EA Desktop
C:\EADesktopDev
C:\outdatedEADesktop
C:\StagedEADesktop
C:\StagedEADesktop.zip

#

just what in the fuck are they doing

#

all this to EXTRACT A ZIP FILE

zinc ferry
dusty radish
#

it was definitely worth it for the new ui rushydoggy

pure radish
#

oh wait, yeah it does

#

weird that Revo didnt spot that one

#

alreet, lets see if it can recover from this

#

dae remember EA Download Manager

#

those were the days

#

the days of buying DLC and not actually getting it

#

oopsie

#

holy shit I can sign in

#

all you have to do: reinstall Windows

#

LMAO

#

now they don't let you set the install path

#

because installing it to C:\ root turns your disk into an active warzone

#

it defaults to: C:\Program Files\Electronic Arts\EA Desktop\EA Desktop\

#

because obviously it needs to dump all its unnecessary bullshit to C:\Program Files\Electronic Arts\EA Desktop\EADesktopDev\ & C:\Program Files\Electronic Arts\EA Desktop\outdatedEADesktop\ & C:\Program Files\Electronic Arts\EA Desktop\StagedEADesktop\ & C:\Program Files\Electronic Arts\EA Desktop\StagedEADesktop.zip

pure radish
#

just keeping all these launchers up to date is insane

#

i could pay someone full time to keep all the software on my machine up to date

kindred chasm
#

https://youtu.be/uqVPry0kJgE?si=IgPpDCGKhbpuX06r

Here's a video on the preview of Dragoon on PC. It also has some comparison with PS1. I don't think it's out for the public yet but they've made a lot of mileage out of this game, including more work on archer characters and a whole new playable character

In this video, we preview some of the ways video rendering is being improved with Severed Chains. Footage shown here should be treated as an early preview - it will look even better as SC progresses.

Donate to Severed Chains: https://ko-fi.com/monoxide
Donate to Fandom services in general: https://ko-fi.com/drewniverse

Severed Chains is a PC ...

▶ Play video
pure radish
glad frost
#

And thinking the exact same

#

Absolute DOGSHIT software

#

ABSOLUTE dogshit

#

Never again. Never, ever again

#

I just about ceremoniously burned my hard drive once I was finished with it

hoary pier
#

The AI app is a fucking nightmare

#

It refused to let me play Titanfall 2 because I previously installed it through Game Pass, even though I'd uninstalled the Game Pass version like a year prior. It took me like two hours to fix it

#

It also won't let you have both the regular EA app and EA Play installed simultaneously for no fucking reason

pure radish
dusty radish
pure radish
#

ohhhh

#

I'm at work but just had a gr8 idea I think

#

oh well

pure radish
#

wait what was my idea

#

oh yeah I remember

cerulean coral
#

ideaman

#

I returned to social life and lost my mind, I hope to be a fictional character again

pure radish
#

my hangovers are so bad man

#

its hilarious

#

my brief flirt with alcoholism years ago has had a lasting impact on drinking on rare occasions

#

i go to these work events to mingle but it means i have to basically take the following day off sick

#

you're given a lifetime drinking budget at birth... spend it wisely

cerulean coral
#

I just hope that I can release a game for the next generation of Nintendo console. And write again for the love of art, because art heals you 😌

hearty dirge
#

What the

timid hemlock
pure radish
#

it reached a point where the withdrawal far outweighed any perceived benefit I felt from sedating myself, it was very easy to quit after that

#

there's a name for it which currently escapes me

#

where the withdrawal doesn't take as long as you'd expect for it to reassert itself

#

I can manage a night on the odd occasion in a social context but if it creeps to two nights I'm right back in the thick of it

#

I think it basically just means my hangovers are like a person twice my age lol

#

excitotoxicity can get to fuck

#

trying to sleep and being startled awake by minor seizures... nope

glad frost
#

Alcohol is real bad for you in the long run, and since we all want you alive and well for our own selfish MGS-mod purposes, I implore you to take up cannabis instead 😆

pure radish
#

lol

#

i basically never touched grass Guilty

#

vaping and diphenhydramine are all i do nowadays

#

the latter is a very strange habit to have, but ive heard others who share my mental afflictions reporting similar affinity for it

cerulean bough
#

LOL Cannabis has been my go to vice since Alcohol and Vaping

#

Helps keep me focused when working but also really helps unwinding

#

And sleeping LOL

#

Just keep usage light to avoid turning to a stoner

dusty radish
#

booze and weed is all a kip needs shucks

hoary pier
#

You'll cowards don't even smoke crack

timid hemlock
pure radish
#

finally looking at this again

#

now I understand why they deleted that huge code section

#

they actually place trampolines in there

#

god, this is fucking complicated

#

there's yet another table that maps psyq functions to "command IDs", and the table is used to generate those trampolines

#

the trampolines call into that magic 0xFFF0 address which is like the main kernel accelerator entry vector

#

kernel vector then dispatches it to the correct library by once again redirecting the control flow to an individual library's entry vector

#

its all the layers of indirection lol

#

its not actually that complicated I guess but it's impossible to track it all in your head

#

might need to write some script to traverse it for me

#

for instance: <993DCh, 1>

#

800993DC in integral is InitHeap, which seems legit

#

i need like

#

a script that pulls the function declarations from the decomp, traverses multiple layers of all this bullshit and names the implementation in my DB

#

huh

#

hmm

#

seems like it should be quite easy to replace some libraries with psyx if they all go via this kernel_vector thing

#

low 8 bits are function ID, high bits are library ID so can filter out ones for e.g. libgpu or libgte

#

I think I am already hooking kernel_vector

pure radish
#

nice nice

#

libgpu 0x10 seems important m8

#

ohhh

#

that might explain one of the bugs haha

#

the thing that had me confused for a while here is not realising that they'd extended this PSX BIOS mechanism substantially

#

oh man

#

libgpu 0x10 is very interesting

pure radish
#

I need to create yet more hooking tech for the psyq library func tables

#

so that's a job for l8r tonight

#

I seem to exclusively write code for replacing different structs containing func pointers in this project lol

dusty radish
#

ur quite the hooker devious

pure radish
#

oh while I was away I realised I don't need to invent more ways to hook these

#

I can make do with what I've already got

#

Nice

#

touched a nerve have I

kindred chasm
#

The patriot are on their way

pure radish
#

im not exactly sure why my reimplemented version of that function causes this to happen

#

the function is tiny

#

so I must be missing something subtle in all that stupid control flow stuff

glad frost
#

interesting

pure radish
#

it's cool that I'm on the right lines with the text bug and such tho

#

means that some of the "theory" is correct (if you can even call it a theory)

pure radish
#

alroot

#

what the fucks going on here then

#

maybe im off by one and replacing the wrong function lel

#

oh, yes, i am

#

LMAO

#

whys it so hard to count man

#

ok so the thing the game calls is 0x510, and 0x50f is LoadImage, so what is 0x510

#

it does even more control flow dance here

#

at least this shit makes sense now

glad frost
#

Imagine if we... had one of the OG devs here

pure radish
#

my mind inevitably goes there on any project like this that I do haha

#

"if I could just ask X"

#

though I wouldn't ask anything related to this now

#

i just need a symbol table for psyq in integral atm

#

then I can figure it all out

#

which should be possible with the decomp... in theory

#

aha

#

might have something

#

hahah

#

what I actually ended up reimplementing was GetTPage

#

now things get a bit interesting

#

jumps to this

#

what the fuk

#

im amazed this works

#

im more amazed at the idea that the source code could be considered maintainable

#

its like a state machine that increments the program counter and uses that to store the current state

#

address & 3 and you can see it stepping byte by byte

#

I created a stub binding for psyx gpu:

#

so I guess eventually I need to plumb it through to what i've just discovered in m2engage

#

cpu->Reg[29] -= 24;
(cpu->Write32)(cpu, cpu->Reg[29] + 16, cpu->Reg[16]);
(cpu->Write32)(cpu, cpu->Reg[29] + 20, cpu->Reg[31]);
(cpu->Write32)(cpu, cpu->Reg[29] + 24, cpu->Reg[4]);
(cpu->Write32)(cpu, cpu->Reg[29] + 28, cpu->Reg[5]);
(cpu->Write32)(cpu, cpu->Reg[29] + 32, cpu->Reg[6]);
(cpu->Write32)(cpu, cpu->Reg[29] + 36, cpu->Reg[7]);

#

I assume this is a MIPS stack push/spill implemented in x86...

#

mad

#

alright very good sense in how it all works now but its batshit, but very cool

#

basically having to do this trek for each function from decomp through to the HLE

#

libgpu calls libetc

#

this is wild bro

zinc ferry
#

Figure it may be worth tossing here for future stuff to look into
https://youtu.be/DI2d9XWMKic

'Metal Gear Solid: Master Collection Vol.1' is slowly being patched into an acceptable state, but there's still some issues. Most notably, the audio reverb settings are inaccurate to the original. I made this video in the hopes of brining these issues to Konami's attention so that they will be addressed in a future patch.

I also made recommenda...

▶ Play video
glad frost
glad frost
pure radish
#

nah its purely a software thing

#

the BIOS has this mechanism whereby you can call a couple of RAM entrypoints with a function ID and that ends up running BIOS routines according to the specified function ID

#

M2 seem to have picked it up and ran with it, and made it even more complicated and powerful

#

they were like "well, what is RAM really" and made these entrypoints "virtualise" a huge amount of code in like a single PC increment

#

its like what you might consider HLE

#

so the "BIOS entrypoints" in RAM now facilitate both BIOS routines and a lot of the PsyQ libraries

#

there's just a lot of redirects, what you have is basically:

#

after the game code there's a big library block of PsyQ functions (which are erased with FF bytes in MGS m2engage)

#

the emulator places game-version-specific accelerators over those functions to handle them with x86 native code

#

those accelerators jump to another accelerator which is not game specific

#

they then call into the "BIOS entrypoint" area in RAM (which for m2engage also handles PsyQ libraries, this is the extension)

#

that then figures out which library component is needed, kernel or e.g. libgpu/libgte from PsyQ

#

dispatches it to the "accelerator" for that library and splits out part of the function ID which represented the actual function within the library and not the library number

#

that looks up the associated function in a table, runs the handler for it (which does this magic virtual PC stuff in some cases, kinda like a state machine)

#

then all of that is unravelled back to the actual game code

#

if you've seen how most e.g. 3DS emulators work

#

generally they don't care for the low level implementations of various services, its not simulating instructions for the entire OS

#

its kind of similar here but the design is a bit batshit

#

im amazed the code was clean enough to reason about and make sense of (I actually wonder how much of this is auto-generated and not written by humans)

#

idk how familiar we all are with the concept of a program counter but

#

basically here the program counter can actually point to anything

#

it can point to truly simulated MIPS code or essentially point at x86 native code

#

so some parts of RAM don't contain code that will be simulated, it ends up being treated as a magic address where a native function runs instead

#

that's not the truly mad part however

#

the mad part is specifically the design of the replacement libraries extending the BIOS mechanism and using PC increments as a literal state machine

#

im just hella impressed lmfao

#

we can probably recover a MC german ISO with some of this knowledge now

#

since those initial game-version-specific accelerators somewhat reveal the quirks of that build

#

anyway, im going to try and prioritise the text/cutscene issue

#

tho, pretty sure i needed to figure out all this shit whatever i wanted to do

#

I assume that PSX BIOS mechanism is inspired by real PC BIOS of the day (but not sure)

#

i know actually nothing about PC BIOS

#

it seems like slightly odd design to have stumbled across without prior art

pure radish
#

while they're still actively fixing stuff it's not really worth the free time investment to duplicate their work

#

analog was fair enough, we got a few months out of it, and probably adding it to m2fix and the subsequent online reporting is what made them realise it was missing

#

the timing when they acknowledged the issue is a bit sus

glad frost
pure radish
#

yeah

#

it would've been easier for them to actually do it, rather than do what they did

#

if you arent super duper familiar with playing the game, its easy enough for these things to happen

#

especially since analog wasnt so widespread on ps1

#

i don't think they would've suddenly decided to start developing it 2 months ago out of the blue

#

and just whining about it on forums is likely to be read as "why not 4K 1000fps"

#

seeing it demonstrated in their own product... and in the news...

#

they definitely know what we're doing (hdfix and m2fix at least)

#

how can they not, it's in the news

#

we've literally bumped their steam reviews for them etc

#

there was a period where the reviews were just full of mentions of the mods

#

maybe they should just open source it (^:

#

also i wont complain if theyre offering contract work :^)

pure radish
#

💩

#

ngl I think ur asking for trouble working on current-gen emulation

#

I remember feeling quite nervous when that project was originally announced

#

bad omen

#

doesnt the actual console facilitate piracy in basically the same way as the emulator at this point

#

nintendo should consider suing nintendo

#

i get a feeling they don't have the strongest case here and are just hoping yuzu has no money

#

¯_(ツ)_/¯

#

they didn't even leave a GitHub issue first, how impolite

humble ravine
#

Didn’t they also try and go after Dolphin? Dont think this will go anywhere

pure radish
#

I mean it starts with a pretty corrupt definition of what an emulator is

#

are these the best legal minds in the business? cmon

#

if that's so, what do they deliver as part of Nintendo Switch Online SimpSon

woeful flare
#

welllll

#

yuzu has a patreon...

pure radish
#

that sort of thing generally makes you more vulnerable to legal shite

#

they can argue ur profiting

cerulean coral
glad frost
pure radish
#

i could only do part time im not quitting the day job just yet 😛

#

definitely not to work in the video game industry, yikes

#

this stuff is fine as a side gig

#

looks awful as your main breadwinner though

#

working for smaller companies is much better jeez

cerulean bough
#

But that was mostly cause Dolphin was on the Steam Store

#

It was just to block it going up

#

This Yuzu shit also seems to be happening because Yuzu charges to get their latest version of their emulator

#

Nintendo probs doesnt like that idea, since it means Yuzu profits over situations like TotK leaking early

zinc ferry
# cerulean bough Yea Nintendo went after Dolphin

Actually, to clarify on the Dolphin situation, Capcom did a review of Dolphin's code for some reason, Capcom then informed Valve that there were private keys being distributed, Valve then reached out to Nintendo themselves to see if they were okay with everything, and Nintendo's lawyers told Valve that the Dolphin devs would have to come to an agreement with Nintendo before release (which being an emulator, would never actually happen cause nintendo), and that response from Nintendo legal was forwarded from Valve to Dolphin's devs. There was never a C&D or DMCA actually filed.

cerulean bough
#

Yea so less of Nintendo actually pursuing any actual action

#

But more so putting pressure

#

So Dolphin didnt hit Steam as a result

keen wharf
#

The thing with emulation was that a legal action did take place back in the late 90s and emulation won. It was what set in stone that emulation is fine.
It's certantly weird they went after yuzu now when we're like 7 years into the console's lifespan lol

#

Also chose yuzu, not Ryujinx. Yuzu is more actively against piracy, if a game is leaked they make damn sure no work on the emulator is done to improve the leaked game. Ryujinx doesn't give a shit on the other hand...although they may go after them next if they get a result from taking down yuzu

#

Companies can sue whenever.
Atlus sued RPCS3, the only thing they got out of it was the removal of mentions of Persona 5 on the RPCS3 website. Although I think those are back now, so it was just a waste of time in the end lol.

copper goblet
#

I'm surprised they care with the Switch being their most popular console, even if it's already being very well emulated(based on the time it took to get here vs release)

keen wharf
#

I'll probably read more of the doc but something stood out for me there:
"Nintendo also offers a paid subscription service on the Nintendo Switch, which gives users access to over one hundred legacy titles from the Game Boy, Game Boy Advance, NES, SNES, and N64 consoles. In short, the ability to play older Nintendo games on newer Nintendo devices is an important market for Nintendo today and going forward"

#

I think the aim is not just Switch emulation, but emulation in general, regardless of how old the console emulated is.
If they manage to take down yuzu, likely they'd go after the others next.

#

Also they make another point that dumping the games from the console you own is also illegal.

cerulean bough
#

That made the game run WAYYYY better

#

And ofcoruse it was an early access build LOL Which you have to buy into

keen wharf
cerulean bough
#

Im sure thats the exact situation why Nintendo is going after em

#

I literally bought the early access version for that exact reason

#

Worked like a charm

keen wharf
#

I remember some things working but they were not specifically for TOTK. I know non official builds were made to make the game run better

#

Any pull request was denied on github and even mentioning TOTK running on some builds in their discord server would get you banned lol

cerulean bough
#

Im guessing the issue of contention is the fact Yuzu charges for that early access build

#

I wouldnt be shocked if this thing settles with Yuzu stopping that

keen wharf
#

You can compile the early access build, it's open source

#

And there are places to get it for free. They're not even against you doing that, but they won't exactly help you solve issues if you didn't donate to their patreon

cerulean bough
#

Im not tryna attack or antagonize the issue but

#

If Nintendo has issues with Yuzu specifically, thats most likely the point of contention

#

We probs wont even see the result of it beyond whatever it settled behind closed doors

#

And how Yuzu reacts, IF they have to publicly react in anyway

#

Such as restructuring things like their patreon

cerulean coral
#

The true preservation game

pure radish
#

LMAO why did Capcom review Dolphin's code on behalf of Nintendo

keen wharf
#

This is the first time I'm hearing of Capcom being involved and I can't find any article mentioning them lol

#

I think the blogpost should clarify everything

pure radish
#

is there any PsyQ documentation available

#

coz christ

#

the API a bit of a mess innit

#

just stumbled into the vsync code

#

yeah, this is all recompiled shite isnt it

#

no way they wrote this

#

hehe llvm go brrr

pure radish
#

i think im on to something

#

bit hard to explain without a video

#

epilepsy warning on this one

#

now this might look like a load of old shit

#

but note which scene is completely missing here

humble ravine
#

Submarine establishing shot?

pure radish
#

yeah, the one that completely breaks with the internal res bump

#

gonna follow this and see where it leads

#

too many debug prints here i cant see shit captain

#

need to turn some off lol

#

now there's less epilepsy and the sub shows, and only that has epilepsy

#

and this is achieved in a completely different way lol

#

im closing in

humble ravine
#

This will help you

pure radish
glad frost
#

Woah

#

Awesome progress there Nuggs but also super interesting document there

#

Hopefully there's some... ahem... nuggets in there that can help

#

but really, my first glance at that PDF looks like it's some fairly confidential internal discussions and possibly very pertinent to your current situation

pure radish
#

working on the decomp puts you at the same amount of risk

glad frost
#

Maybe a lot of these things are more due to the PSX hardware and less so due to the zany antics of Japanese game devs?

#

Just spitballing, I have no idea. But wondering if people that have worked on PSX games/with the hardware might have some insight

#

I remember back in the day there was a thing called "Net Yaroze" where Sony sent out special dev Playstation units for regular people to build games with

pure radish
#

oh yeah probably if someone has genuine PSX emulation experience they could sort these things quicker than I can

glad frost
#

The Net Yaroze (ネットやろうぜ, Netto Yarōze) is a development kit for the PlayStation video game console. It was a promotion by Sony Computer Entertainment to computer programming hobbyists which launched in June 1996 in Japan and in 1997 in other countries. It was originally called "Net Yarouze", but was changed to "Net Yaroze" in late 1996. Yarōze m...

#

probably won't help as i doubt it's as deep as the stuff you're doing

#

but maybe some docs along those lines would help

pure radish
#

yeah all im looking for is some decent API docs coz the C headers don't have any

#

and shit has cuhrazy naming

#

gonna shoot through 1220 pages of this

glad frost
#

Just a casual 1220 pages of deeply complex machine-level code 😂
In all seriousness though, it actually looks pretty well laid out and explained. Hope it helps.

Don't burn out!

pure radish
#

This function needs the ISO 9660 file system to run properly. Call _96_init() to initialize the system and
_96_remove() to exit the system.

#

oh well that explains the fucking 96 in the name

#

this is very useful, already learned a few things that weren't really explained anywhere else

glad frost
#

hell yeah

#

awesome development

pure radish
#

it ends up being pretty clean to replace m2engage playstation sdk funcs

#

i don't think i actually need this one tho, i only have it because i cant count

pure radish
#

yeees windows 9x drivers for some psx kit

#

marvellous, they can go on my thinkpad

glad frost
#

hell yeah

#

awesome progress

timid hemlock
#

classic

pure radish
#

⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⡀⠄⠄⠄⠄⠄⠄⠄
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣤⡀⠄⠄⠄⠄⠄
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣦⠄⠄⠄⠄
⣿⣿⣿⠟⠋⠁⣀⣀⡈⠙⣿⣿⣿⣿⡿⠿⠿⠿⠿⢡⣤⣄⡈⠙⢧⠄⠄⠄
⣏⣉⣀⣠⣴⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠿⠷⠶⠶⠤⣉⠙⠷⣼⣇⠄⠄
⠿⠿⠿⠿⠿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣄⡀⠄⠄⣿⣿⣶⣈⠙⣄⠄
⣿⣷⡶⠶⠶⠶⠒⠂⠄⠈⣽⣿⣿⣿⣿⣿⣿⣿⣿⣆⠄⣿⣿⣷⡶⠖⠄⣶
⣁⣤⣴⣶⣶⠾⠟⠛⠛⢛⣻⣿⣿⣿⣿⣿⣿⣿⣿⣿⠄⣿⣿⣿⣓⠂⠄⣤
⠟⢛⣉⣥⣤⣶⡶⠛⢋⣉⡴⢟⣙⠶⣋⣿⣿⣿⠿⠛⠄⠛⠻⢧⡙⠾⢂⣄
⣾⣿⣿⡿⠓⣀⠐⠲⠞⣡⣶⠟⢁⣴⠽⠛⣉⣠⣶⣿⣿⣿⣶⣤⠉⣠⣌⠻
⣿⣿⣫⣶⣾⣿⡟⣠⣤⣤⠄⣀⣤⣤⣴⣾⣿⣿⣿⣿⣿⣿⡿⢋⡄⢻⣿⣷

indigo quartz
#

Ignoring the bugs, lack of analog, etc., are all the intentional changes made to MGS1 in the MC version now reversed by MGSM2Fix at default settings? None are unaccounted for?

pure radish
#

havent seen anything missing, there's almost certainly more differences though, just nobody noticed

indigo quartz
#

Thanks, nuggs. You're a champion.

pure radish
#

alreet