X-Basic, Simple PSG VDP Player with sources.

Page 1/2
| 2

By Dolphin101546015

Champion (335)

Dolphin101546015's picture

23-04-2020, 10:02

Program writed in X-Basic, load PSG file to VRAM and play with scrolling.
(MSX2 needed).

Preview here.

Sources in GIT (Link in video description).

Space - Exit
Up - Change to NTSC
Down - Change to PAL

Good luck! :)

Login or register to post comments

By AxelF

Champion (395)

AxelF's picture

23-04-2020, 11:35

I love this fresh new project ideas, well done.

By Parn

Paladin (833)

Parn's picture

23-04-2020, 14:37

Very impressive. I'm curious, who is the author of the track? How did you generate the .PSG file? How long can the track be? I'd also suggest you to store the .BAS in GitHub with SAVE,A so people can look at the listing without downloading the file.

By Dolphin101546015

Champion (335)

Dolphin101546015's picture

23-04-2020, 16:10

Parn wrote:

Very impressive. I'm curious, who is the author of the track? How did you generate the .PSG file? How long can the track be? I'd also suggest you to store the .BAS in GitHub with SAVE,A so people can look at the listing without downloading the file.

PSG converted with AVR-AY Player.
TrackInfo:

Title: "LIVE AFTER DIE!" BY PANDA 97!
Artist: Some rmx by Macros
Comments: ProTracker 3.5

Type: Pro Tracker v3.5 (PT3)

Frame rate: 50Hz
Chip frequency: 1750000Hz
Frames count: 6972
Loop Frame: 60

Played in MSX2 with 60 Hz.

GIT updated.

Program able play files up to 122880 bytes.
PS: It just "for fun" project, created for testing speed of X-Basic.
And it still not enough for normal listening.
Also prog hung up sometime in the end of track. Smile

By Parn

Paladin (833)

Parn's picture

23-04-2020, 22:33

It is pretty ingenious nonetheless, both the concept and the execution. I always thought these little "for fun" projects are just the thing to make us think outside the box and come up with new ideas. Even though I can't program anything like this, but lateral thinking is something that benefits everyone.

By Manuel

Ascended (19310)

Manuel's picture

24-04-2020, 00:12

Pretty cool: you just load the file into VRAM directly by OUTing. Then you read it back from VRAM with INP and OUT the data to the PSG. In fact, pretty straight forward and raw. And the timing is a VDP status reg poll loop. I never thought it would lead to a decently timed song. Smile But it works! Great experiment Smile

By Dolphin101546015

Champion (335)

Dolphin101546015's picture

24-04-2020, 00:53

Thanx for nice words! Smile

And from me:
Another player version (2.1), with all bugfixes and improvements.
Also now BASS processing better (but still not pretty, coz Basic slow anyway)

Here preview

Here GIT with both versions.
PS: New added track have size 150kb, also for cutting and proceed testing.

Have fun! :)

By Dolphin101546015

Champion (335)

Dolphin101546015's picture

24-04-2020, 12:46

Last version 2.2
Sources in GIT also.

PS: Idk whats wrong, but modulation control on the fly is not working.
Therefore I removed it, and buildin manual modulation form switch.
Differences you might hear in video above.
It version 2.2 also, just forgot change code before writing video :)

So, X-Basic speed is enough for playing PSG. Just need rework modulation control.

By Dolphin101546015

Champion (335)

Dolphin101546015's picture

24-04-2020, 15:41

By Dolphin101546015

Champion (335)

Dolphin101546015's picture

26-04-2020, 07:17

Cool
Just another Demo of my Player:
MSX2 X-Basic PSG VDP Player v2.6 in Text Mode.

Music from MmcM.

By alexito

Paladin (761)

alexito's picture

26-04-2020, 20:03

Simply AMAZING! Thanks for sharing. I feel so proud what a MSX 2 Computer can do still nowadays. Running Naked in a Field of Flowers

Page 1/2
| 2