Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Kentoo

Pages: [1]
1
EverDrive GB / Re: Next GBOS 3.x firmware and GB Pocket power issues.
« on: November 26, 2016, 09:23 AM »
I just finished reading your feedbacks. Thanks so much for all your comments !

I put original archive on my website (not finished yet) :
http://www.dotmatrixgame.com/downloads/GBOS.zip

2
EverDrive GB / Re: Next GBOS 3.x firmware and GB Pocket power issues.
« on: January 19, 2016, 09:49 AM »
Hi,

I did it by myself !
It's just small changes in the official GBOS.GB v3 image.
 
I assume no responsibility or liability arising from any error in or omission of information or from the use of any information or advice contained within this custom GBOS.OS version.

This version disables sound circuits.

I know that the ROM's program starts at $100 address. So I figured out that it's jump to a piece of code initializing some registers.
This part started at $0280 address like this :
    RST $38    ; $027d
    RST $38    ; $027e
    RST $38    ; $027f
    DI         ; $0280
    LD SP,$dff0; $0281
    LD C,A     ; $0284
    LD A,$00   ; $0285
    LD ($FF00+$ff),A; $0287
    LD ($FF00+$41),A; $0289
    LD A,$80   ; $028b
 
I inserted this instruction LDH ($26),A to disable sound circuits, like this :

    ; RST $38    ; $027e
    ; RST $38    ; $027f
    ; NEW ADRESS $027e

    DI         ; $0280
    LD SP,$dff0; $0281
    LD C,A     ; $0284
    LD A,$00   ; $0285
    LD ($FF00+$ff),A; $0287
    LD ($FF00+$41),A; $0289

    LD ($FF00+$26),A; DISABLE SOUND CIRCUITS

    LD A,$80   ; $028b

As LDH instruction occupies two bytes, I have to remove two RST $38 instructions.
And You have to replace all jumps or call to $0280 address by the new one $027e.
I did it at lines :

    ; OLD : JP $0280   ; $0000
   JP $027e

    ; OLD : JP $0280   ; $0100
   JP $027e

    ; OLD : JP $0280   ; $039d
   JP $027e   ; $039d

For now, it's working on my GB Pocket... and we will see how it works.
What do you think about it? Do you see any improvements?

Kentoo

Note : GBOS.GB file with md5 0c935f6bc217fcdc7e031cc4d64fb9bb is my modified version.

http://s000.tinyupload.com/?file_id=20876312868836216585

http://www.dotmatrixgame.com/downloads/GBOS.zip

3
EverDrive GB / Next GBOS 3.x firmware and GB Pocket power issues.
« on: January 13, 2016, 08:10 PM »
First of all THANK YOU for creating this !
I am software engineer, and I love this cartridge for creating homebrew games on my spare time.

Like others on this forum, I experienced some issues while powering my GB Pocket with two Eneloop Low Self Discharge AAA batteries.
Everdrive GB constantly resets on a Gameboy Pocket : http://krikzz.com/forum/index.php?topic=1972.0
Everdrive gb issue : http://krikzz.com/forum/index.php?topic=1561.5
Game Boy Pocket and Everdrive play well together? : http://krikzz.com/forum/index.php?topic=2886.5

First question, would you accept to open the source code of GBOS.GB to the community ?
If you can't for private or commercial reasons, could you consider theses remarks :

1 - Disable all sound circuits.

I am pretty sure that the sound circuit is ON when we choose an homebrew rom and flash it (Load and start).
Pandocs mentions that GB power consumption drops by 16% or more if sound circuits are disabled.
Before annoying you, I check the GBOS.GB ASM codes and I didn't find any sequences similar to ASM commands below.

To disable all sound circuits, you have to set 0 on $FF26 register:
XOR A
LDH ($26),A ; Disable sound circuits
 
2 - Disable the screen during the ROM flash sequence.

When you use Everdrive GB for the first time, it is worth mentioning that you don't have to switch OFF the GB
when this screen is showing "!!! DO NOT TURN OFF !!!". You can see dots during the flashing process : OK

After some rounds, you figure out that the screen : "!!! DO NOT TURN OFF !!!" will be displayed until the next restart.
I guess that during this part the GB processor does nothings, and all the stuff is done by the controller in the cartridge.

My suggestion is to add an option for MGB's owners. With this option, we could enable or disable the screen during the flashing process,
which give more current to Everdrive GB.
We just have to wait the next VBLank, disable the screen ($FF40), disable interrupt and Halt the processor.

Do you think it will be possible to make it ?

I wish you a nice day,
Best regards,
Kentoo

Pages: [1]