• Welcome to Dark Bit Factory & Gravity.
 

OSME library update

Started by KrazyK, January 30, 2026

Previous topic - Next topic

0 Members and 0 Guests are viewing this topic.

KrazyK

I've been working on the original source of the Oldskool music engine and have managed to get it to dump all 14 music registers, not the the 3 main channel volumes and read them real-time. Been meaning to do this for a long time.
Its's till a WIP but here's a few screenshots of it working.
Challenge Trophies Won:

ttemper

very nice... so the plan is to bring it into 2026 and hit the ground running?

i think i still use the old osme on some prods. what formats will be supported? all the same as usual, or more?

KrazyK

Something like that mate. ðŸ'
I've dumped the 14 bytes of data from the YM registers in real-time so I can read frequencies, tone, pitch, mixer, envelope, volumes etc. Which makes visualisations a lot more interesting.

It's still x86 based as the back end 68k emulation code was written for 32bit architecture and my C++ skills aren't good enough to convert everything needed for a x64 re-write of it when it comes to memory allocation and pointers etc. I'm sure there are some very skilled C coders on here that  could do it though. 😀
I'll release a little demo of it in action soon.
Challenge Trophies Won:

ttemper

Quote from: KrazyK on February 07, 2026
I've dumped the 14 bytes of data from the YM registers in real-time so I can read frequencies, tone, pitch, mixer, envelope, volumes etc. Which makes visualisations a lot more interesting.

ahh right, pulling data for graphic visualizations.

Quote from: KrazyK on February 07, 2026
I'll release a little demo of it in action soon.

nice.

Knurz

Quote from: KrazyK on February 07, 2026
Something like that mate. ðŸ'
I've dumped the 14 bytes of data from the YM registers in real-time so I can read frequencies, tone, pitch, mixer, envelope, volumes etc. Which makes visualisations a lot more interesting.

It's still x86 based as the back end 68k emulation code was written for 32bit architecture and my C++ skills aren't good enough to convert everything needed for a x64 re-write of it when it comes to memory allocation and pointers etc. I'm sure there are some very skilled C coders on here that  could do it though. 😀
I'll release a little demo of it in action soon.

You talking about this repo: https://github.com/slippyex/OSME ?

Remember what the dormouse said: Feed your head

KrazyK

Yeah, that's the one i've been messing with. Are you up for the challenge?
Challenge Trophies Won:

Knurz

Quote from: KrazyK on February 11, 2026
Yeah, that's the one i've been messing with. Are you up for the challenge?

I have to reinstall my virtual machine with Windows, but yea..  I like modernizing old code.
But.. I do not have a clue what the Basic Runtime you're using needs.

Remember what the dormouse said: Feed your head

KrazyK

You'll need directx sdk and windows dev kits installed.
There's also sc68 on sourceforge to help develop a dll/static lib.
Way sbove my c knowledge though.
https://sourceforge.net/projects/sc68/
Challenge Trophies Won:

Knurz

Quote from: KrazyK on February 13, 2026
You'll need directx sdk and windows dev kits installed.
There's also sc68 on sourceforge to help develop a dll/static lib.
Way sbove my c knowledge though.
https://sourceforge.net/projects/sc68/

I've reinstalled a W11 (what a horrible user experience btw.) in a VM.
It seems that the sc68 can be compiled w. GCC under linux too - the configure/make system seems up to date, I got no errors creating the Makefile.

That said, and being impressed by the compatiblity of the make system, I ran into some issues building all the tools and utilities w. sc68-package.
(They're doing some nasty typecasts w. function-pointers which is not very well tolerated by gcc).

Just to know the big goal w. this: You want a DLL with exported functions that you can call from the PureBasic-Runtime ?

/cheers


Remember what the dormouse said: Feed your head

KrazyK

Yes, the goal is to have a dll and/or static lib with exports to call in PB (x64)  Same functions as OSME plus a register dump.
Challenge Trophies Won: