Yaroze Wrapper tool from Dragon Shadow

doctorclu

NUON Lover!
Reaction score
43
Doctor Clu (DC):
... So what I wanted to ask tonight is about Yaroze. Sounds like there is a extensive portable library, and you were all working on a system that would translate things easier during the porting process to the Nuon?

I was wondering where the Yaroze library is, and how to go about porting them?

Scott Cartier (SC):
Greetings!

I've kind of disengaged from the community. Glad to know there are still folks out there interested in Nuon.

The Yaroze-to-Nuon library was something I developed. It's mostly a wrapper for the Yaroze library function calls and thus requires access to the source code for the Yaroze project. It's far from a plug-and-play thing. While you might get something running quickly, tuning it for performance takes a lot of under-the-hood debugging. I had to pull so many tricks to get Invs working satisfactorily!

DC:
Is there any chance I could play with the wrapper, and is the Yaroze source code readily available?

SC:
Sure. I'll need to dig out the code. For the games, you'll need to track down their source separately.

DC:
I appreciate that! :D Mind if I share that on the Nuon-Dome archives?

SC:
Please do. I'd be tickled if anyone did anything with it.
 

Attachments

  • yarlib.c.zip
    42 KB · Views: 571

Ghan

Administrator - Servers are fun
Staff member
Reaction score
889
Done. Links to this thread.

Ghan-12-03-20_21:37:03.png
 

Cobra!

New Member
Reaction score
5
So I could in theory make a Net Yaroze game and use this tool to convert it to Nuon?
 

doctorclu

NUON Lover!
Reaction score
43
Fun discovery tonight, some of you probably already knew this...


  • Yaroze Wrapper Tool If we converted the Yaroze library with this tool from DragonShadow, we could have the whole alphabet letter Yatzee!
https://en.wikipedia.org/wiki/List_of_Net_Yaroze_games

I realized Breakdown was not on the Yaroze list but a game already converted for the Nuon, and that is when I realized there is a Yaroze community on Discord...
Net Yaroze chat server:
http://netyaroze.com/chat

Also the Yaroze newsgroup with messages going back to 1997 that is still active:

Lots of people still making games and demos. How much can be wrapped with the Yaroze wrapper tool (which I understand does some but not all of the work). Well... be interesting to find out.
 

mgarcia

You may change this now in User CP
Reaction score
48
So I could in theory make a Net Yaroze game and use this tool to convert it to Nuon?

A 2D game, yes... I looked over it last year, unfortunately it's not complete as it is (and, i'm not smart enough to figure out the missing parts).
Here is what I wrote back then.

I don't recall seeing any 3D support (which would be a really big task!) or the 2D tilemap system, but the basics are there (scaling/rotating, VRAM stuff), I think there's audio and controller mapping also.
It's not a silver bullet, but knowing the limitations, you would get Nuon for free :)

Regarding the Newsgroup, they are just the discord posts... it's active in spirit! :D

Actually, Net Yaroze is often discourage in the PSXDEV community, it's seen as not cool... old, broken and slow, which is all true to a point, but it's also a small and highlevel SDK, which is quick and easy to learn. Net Yaroze was always about creativity, not performance.
 

Cobra!

New Member
Reaction score
5
Regarding the Newsgroup, they are just the discord posts... it's active in spirit! :D
Would have been cool to post in the newsletter and communicate with the Discord users (Like you can with Matrix and IRC bridges), but that doesn’t look possible. :(

I don't recall seeing any 3D support (which would be a really big task!) or the 2D tilemap system, but the basics are there (scaling/rotating, VRAM stuff), I think there's audio and controller mapping also.
It's not a silver bullet, but knowing the limitations, you would get Nuon for free :)

Actually, Net Yaroze is often discourage in the PSXDEV community, it's seen as not cool... old, broken and slow, which is all true to a point, but it's also a small and highlevel SDK, which is quick and easy to learn. Net Yaroze was always about creativity, not performance.
That’s a good point, actually. I was driven away from it because I read that you need a Net Yaroze to actually play them on real hardware, is that true? If not, I’m definitely delving in!

Shame you can’t do 3D on Nuon with it, though, but the MGL library on the Nuon SDK seems easy enough, so whatever.
 
Last edited:

mgarcia

You may change this now in User CP
Reaction score
48
Would have been cool to post in the newsletter and communicate with the Discord users (Like you can with Matrix and IRC bridges), but that doesn’t look possible. :(

Yes, it's only one way, weekly batch to the Newsgroup/usenet, it isn't that popular, and it's mostly spam posts (and a lot of warez hosting :/ ) these days unfortunately, like IRC, it's still a great "social" platform.

That’s a good point, actually. I was driven away from it because I read that you need a Net Yaroze to actually play them on real hardware, is that true? If not, I’m definitely delving in!

LOL, That sounds like Sony's marketing... the copy protection stuff, but it was never true, the games could still be transferred from a PC to a retail PS1 via a cheat cartridge and comms card, similar to NY and played.
Apart from debugging information, NY executable after converting and patching, are no different to any other toolchain's executables after patching.
And the hardware is exactly the same, PS1, Unirom cheat cartridge, FTDI USB serial cable, nops, emulators etc.

Shame you can’t do 3D on Nuon with it, though, but the MGL library on the Nuon SDK seems easy enough, so whatever.

Well, currently, you can't do anything with it, it's just a single file (yarlib.c)... I can't guess as to what's missing, but I would think it's a lot of Nuon assembly! :/
So until it's fully released or fixed up, there is no wrapper :(
 

Cobra!

New Member
Reaction score
5
LOL, That sounds like Sony's marketing... the copy protection stuff, but it was never true, the games could still be transferred from a PC to a retail PS1 via a cheat cartridge and comms card, similar to NY and played.
Apart from debugging information, NY executable after converting and patching, are no different to any other toolchain's executables after patching.
And the hardware is exactly the same, PS1, Unirom cheat cartridge, FTDI USB serial cable, nops, emulators etc.
I actually read it on the PSXDEV website, but it seems I misread it.

NOTE: To play these games you will need a Net Yaroze installed and setup correctly according to Sony's Yaroze documents.
I should join the Discord and ask if I can develop for Net Yaroze on Linux! Hopefully I'd eventually be able to port what I make to Nuon, too!

Thanks for answering my questions!
 

mgarcia

You may change this now in User CP
Reaction score
48
I should join the Discord and ask if I can develop for Net Yaroze on Linux! Hopefully I'd eventually be able to port what I make to Nuon, too!

They're too completely different systems and communities... and I dont know when the full wrapper will be released.
Alternatively, you can build a very simple 3D/2D/audio/input abstraction layer, and then it can be ported anywhere... and I would recommend this regardless, it's easier to dev on PC (via SDL etc) and then test on consoles... it's more work, but debugging the game on PC is a lot better then on a console.
 

Cobra!

New Member
Reaction score
5
Alternatively, you can build a very simple 3D/2D/audio/input abstraction layer, and then it can be ported anywhere... and I would recommend this regardless, it's easier to dev on PC (via SDL etc) and then test on consoles... it's more work, but debugging the game on PC is a lot better then on a console.
You mean like a simple game engine?
 

mgarcia

You may change this now in User CP
Reaction score
48
kinda, but without the game features, which probably isn't what we would call a game engine today :D
I dont think there are many game engines for older, pre PS2 consoles, as we know them today.

The abstract layer handles primitives like render_rect, render_text, play_soundfx, play_background_music, read_input, save_state, recall_state.
You implement them all on PC then console, then start building your game on top, and in theory, the game coded on PC, will also play on all other abstracted platforms.

A few simple functions like that, and you can build most 2D 80's game.
 

Cobra!

New Member
Reaction score
5
So like create some frontend scripts, and backends that I can switch around between platforms?

Yeah, I could definitely do something like that!
 
Last edited:

Skah T

Former VML engineer
Reaction score
62
The wrapper I wrote was initially to port Decaying Orbit. So it only supports the things that DO does. Sprites with scaling, rotation, etc. Input handling. SFX.

It expanded somewhat as I ported the other games, but none of them required tilemaps or 3D. The latter would have been beyond my capabilities at the time so I wouldn't have bothered trying.
 

mgarcia

You may change this now in User CP
Reaction score
48
The wrapper I wrote was initially to port Decaying Orbit. So it only supports the things that DO does. Sprites with scaling, rotation, etc. Input handling. SFX.

It expanded somewhat as I ported the other games, but none of them required tilemaps or 3D. The latter would have been beyond my capabilities at the time so I wouldn't have bothered trying.


Hey man, thanks for the reply, I hope you're well.
That's fair and understandable that your wrapper doesn't do tilemaps or 3D, Sprites with scaling and rotation, input and SFX is enough to port a few more NY games to Nuon, and it might create more interest and games to Nuon.

I just got stuck because there were files missing, I assume they were assembly files.
I'm also happy to add to it, ie the CDDA playback functions.
It's been a while since I've looked at Nuon code, but now I have a N64 adapter, I should get back into it.

If you can share more of the wrapper, publicly or privately, I would definitely use it and recommend it to others programming NY.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top