PT3 Player for Hi-Tech C

by dvik on 25-06-2009, 08:32
Topic: Development
Languages:

Daniel Vik has ported and released the PT3 player dioniso adopted to MSX to Hi-Tech C. This allows C programmers to use PT3 songs in their creations without linking assembly code to their projects. The source code can be downloaded from the dvik-joyrex website.

Relevant link: dvik-joyrex website

Comments (12)

By Ivan

Ascended (9298)

Ivan's picture

25-06-2009, 08:51

(@dvik) Soon we'll add the package to the downloads section.

By dvik

Prophet (2200)

dvik's picture

25-06-2009, 09:05

Sounds great. This version requires that the text segment is read/write, e.g. loaded from disk, but for rom use, the file needs to be located in ram (just change the segment text to data), since the replayer uses self modifying code. Maybe I should add a readme to explain that.

By anonymous

incognito ergo sum (116)

anonymous's picture

25-06-2009, 15:43

Maybe you wanna take a look to my PT3 replayer version (you can find it on my blog http://z80st-software.blogspot.com ) because it runs perfectly on ROM (no self-modifying code).

By dvik

Prophet (2200)

dvik's picture

25-06-2009, 16:28

Written in c or asm?

By anonymous

incognito ergo sum (116)

anonymous's picture

25-06-2009, 16:45

Written in asm, with asMSX syntax.

By ARTRAG

Enlighted (6538)

ARTRAG's picture

25-06-2009, 23:36

I've already done an HTC port of it, integrated withe the SFX player and with our extended SCC support for SCC music and PCM sampled audio
It is ready to be released if someone else uses HTC v7.8...
(It is the audio engine of MOAM)

By dvik

Prophet (2200)

dvik's picture

26-06-2009, 08:59

Yeah I figured you had it already ARTRAG. Are you planning to release it? It sounds like it could come in quite handy for people (not sure how many that uses Hi-Tech C).

By ARTRAG

Enlighted (6538)

ARTRAG's picture

26-06-2009, 14:24

First of all let me give credits to SapphiRe: the Pt3/ayFx code is largely based on hss work (especially the ayFx part).

Actually our audio core includes SCC/PT3 music and PCM/ayFX management and is well integrated in the MOAM engine.

ATM this engine is used for MOAM and for our msxdev09 project. Extracting the audio part from the rest would need some work.

Actually it also deeply relies on the megarom architecture of the game, as it accesses directly to the scc mapper to enable on fly the rom pages with pcm data, music data and music waveforms.

As an addition, all this is managed by using the psects and a very specific memory layout of the project in the HTC compiler. Add that the PCM data have to be processed by my matlab scripts, just to make things simpler.

The fact is that very few people is using HTC and even less people would be really interested in banging his/her head on all the stuff above...
The management of the memory layout can be pretty hard in HTC.

We were thinking to release the engine (that includes the SCC/PT3/PCM/ayFX management)
after having released at least one project based on it.

If someone is using HTC v7.8 and needs absolutely an audio engine an is able to master HTC configuration and has matlab and.....my email is in the profile

Tongue

By ARTRAG

Enlighted (6538)

ARTRAG's picture

29-06-2009, 14:47

hummm, a crow of people is congesting my email asking to release the code....
maybe better to wait for the release of the "moam" development pack
we plan to release it as open source with all the tools and editors to
design new games on that engine

By Evhor

Resident (54)

Evhor's picture

10-04-2013, 18:51

I guess my question will show all my ignorance but... what's that "rtypes.h" file included in "pt3play.h" and where I can find it?

By ARTRAG

Enlighted (6538)

ARTRAG's picture

11-04-2013, 07:07

Replace Uint16 with unsigned int and get rid of that header

By Evhor

Resident (54)

Evhor's picture

12-04-2013, 07:59

ARTRAG wrote:

Replace Uint16 with unsigned int and get rid of that header

Oh my, that was so obvious... it was right in front of my face, too... I am feeling quite stupid now O_o°
Thank you once again, ARTRAG ^_^/