Chat

Author Topic: [GB] DefleMask hardware player + source  (Read 3415 times)

Offline DevEd

  • Full Member
  • Posts: 357
  • Not to be confused with Delek
[GB] DefleMask hardware player + source
« on: January 04, 2016, 08:54:57 PM »
I've been working on a hardware GBS player for the past couple of hours, and this is the result. Attached is a sample conversion, as well as the source code if you're interested. The build instructions are located in the ZIP package.

I have tested this, and it plays the entire song without crashing. The only problem I've encountered is that when playing on a DMG or SGB, the wave channel sometimes loads the wrong wave. I'm assuming that this is due to a bug with the driver itself, not my player.

Also, feel free to request Game Boy hardware renders in this thread.
« Last Edit: January 04, 2016, 08:56:47 PM by DevEd »

Offline Delek

  • Salí para ver
  • Administrator
  • Hero Member
  • Posts: 1765
    • Delek's Website
    • Email
[GB] DefleMask hardware player + source
« Reply #1 on: January 04, 2016, 09:29:42 PM »
Awesome work! I didn't know you are a coder too!

Does this works better than the native .gb export from Deflemask?

Offline DevEd

  • Full Member
  • Posts: 357
  • Not to be confused with Delek
[GB] DefleMask hardware player + source
« Reply #2 on: January 04, 2016, 09:57:30 PM »
As a matter of fact, yes it does work better than the official ROM exporter. I just tested with the module I used for the example, and the ROM exporter plays most of the song, but then it glitches up, followed by silence. A few seconds later, the song starts over from the beginning. My "player" successfully plays the entire song. It also looks better

Offline Delek

  • Salí para ver
  • Administrator
  • Hero Member
  • Posts: 1765
    • Delek's Website
    • Email
[GB] DefleMask hardware player + source
« Reply #3 on: January 04, 2016, 10:02:47 PM »
Does the exported .gbs from Deflemask have the same glitch?

Offline DevEd

  • Full Member
  • Posts: 357
  • Not to be confused with Delek
[GB] DefleMask hardware player + source
« Reply #4 on: January 04, 2016, 10:12:55 PM »
No. That's why I used the GBS for this.

Offline Delek

  • Salí para ver
  • Administrator
  • Hero Member
  • Posts: 1765
    • Delek's Website
    • Email
[GB] DefleMask hardware player + source
« Reply #5 on: January 04, 2016, 10:32:48 PM »
Interesting, did you use the pre 11.1? Could you please share with us the .vgm or .dmf file?

Offline DevEd

  • Full Member
  • Posts: 357
  • Not to be confused with Delek
[GB] DefleMask hardware player + source
« Reply #6 on: January 05, 2016, 12:05:41 AM »
boop

(BTW, yes I did use 11.1 (specifically the latest available Mac build))

Offline Pegmode

  • Member
  • Posts: 127
  • Allergic to FM
[GB] DefleMask hardware player + source
« Reply #7 on: January 05, 2016, 07:14:51 AM »
Wow, I have an immense amount of respect for anyone able to write their own ROMs in assembly like this. I'd be curious to look at some more songs and trying to run them on hardware to compare it to DefleMasks Hardware Player. I've had minor issues with some modules such as random volume changes on the DMG or arps sounding a bit off on the GBP when using the Hardware Player.

Offline DevEd

  • Full Member
  • Posts: 357
  • Not to be confused with Delek
[GB] DefleMask hardware player + source
« Reply #8 on: January 05, 2016, 08:58:15 PM »
After a bit of tinkering, I managed to get my "player" to play an actual, non-Deflemask GBS file, specifically The Smurfs.

ROM and source attached.

Offline djmaximum

  • Jr. Member
  • Posts: 79
    • Email
[GB] DefleMask hardware player + source
« Reply #9 on: January 09, 2016, 04:51:57 AM »
What's the point of having another hardware GBS player for the Gameboy when in fact a hardware GBS player already exists?
Other places where you can find my music.
my chiptune up
my chipmusic
my BOTB

Offline Delek

  • Salí para ver
  • Administrator
  • Hero Member
  • Posts: 1765
    • Delek's Website
    • Email
[GB] DefleMask hardware player + source
« Reply #10 on: January 09, 2016, 01:34:02 PM »
Because more is better! :D

Offline DevEd

  • Full Member
  • Posts: 357
  • Not to be confused with Delek
[GB] DefleMask hardware player + source
« Reply #11 on: January 09, 2016, 02:00:36 PM »
Because the existing player didn't work properly with Deflemask, and I wanted a way to record my songs off of actual hardware.

Offline Delek

  • Salí para ver
  • Administrator
  • Hero Member
  • Posts: 1765
    • Delek's Website
    • Email
[GB] DefleMask hardware player + source
« Reply #12 on: January 09, 2016, 04:50:21 PM »
Also, this way you're free to add artwork or custom messages to the rom file.

EDIT: I tested your song on Deflemask v11.1 pre-release and it doesn't crash, could you pelase confirm this? Btw, your gb player looks better imho.
« Last Edit: January 09, 2016, 04:56:35 PM by Delek »

Offline DevEd

  • Full Member
  • Posts: 357
  • Not to be confused with Delek
[GB] DefleMask hardware player + source
« Reply #13 on: January 12, 2016, 06:28:56 PM »
No, it (the stock DefleMask ROM exporter) still crashes on my end.

Also, I decided to make a base ROM to make things a bit easier.

To use the base ROM:
1. copy the song data from a Deflemask GBS file (starting at 0x70) and insert it into the base ROM at 0x400, making sure the graphics data in ROM bank $F (starting at 0x3C000) stays where it is. Most songs should fit within the 15 ROM banks I've provided. However, if a song doesn't fit, let me know and I'll create a 31-bank version of the base ROM for you. (Don't mind the three $C9 bytes, I put those there to prevent the ROM from crashing when there's no song data. ($C9 is the opcode for ret BTW))

2. Replace "SONG NAME HERE" at 0x3C715 with the song name, making sure it fits within $12 bytes.

3. Replace "AUTHOR HERE" at 0x3C729 with the author name, again making sure it fits within $12 bytes.

4. Open the ROM in bgb or Gambatte, or (if you have the necessary hardware) run it on a real GB. Note that the wave channel has a tendency to act up when the ROM is run on a DMG (original Game Boy). This doesn't effect GBC or GBA, however.

Offline AoF

  • Newbie
  • Posts: 2
  • Delek FTW
[GB] DefleMask hardware player + source
« Reply #14 on: March 15, 2016, 05:34:41 PM »
I registered just to say thank you for taking the time to make this alternate ROM tool and explaining how to add graphics etc. It is very much appreciated!