GDMENU Theme Manager /Dreamcast

Place for discussing homebrew games, development, new releases and emulation.

Moderators: pcwzrd13, deluxux, VasiliyRS

User avatar
RazorX
brutal
Posts: 245

Re: GDMENU Theme Manager /Dreamcast

Post#41 » Tue Dec 22, 2020 7:10 pm

megavolt85 wrote:
RazorX wrote:this app was made by me and the latest version of posting this is v0.9a/


@RazorX this is mostly information for you, because manually changing colors is not very convenient

All text colors are stored in ARGB8888 format (Alpha Red Green Blue)
I will write the offset in the decrypted 1ST_READ.BIN and the default value in the big endian (attention in 1ST_READ.BIN these values are in the litlle endian)
also, as an example, I will attach screenshots with the replaced text color, the standard color will be red, the highlight color is orange

Window title
offset: 34F0
default: FF67C1F5
text: OPTIONS, SYSINFO, ABOUT, EXIT, CODEBREAKER, MENU
Window title.png


Options menu
offset: 3964
save button default: FF989EA4 (green on screenshot)

offset: 3674
default: FF989EA4

offset: 3954
highlight: FF67C1F5
options menu.png


sysinfo menu
offset: 3B50
default: FF989EA4
sysinfo menu.png


about menu
offset: 3CE8
default: FF989EA4
about menu.png


exit menu
offset: 3EE8
default: FF989EA4

offset: 3F0C
highlight: FF67C1F5
exit menu.png


selection for codebreaker
offset: 41A8
default: FF989EA4

offset: 41CC
highlight: FF67C1F5
codebreaker.png


main menu
offset: 4418
default: FF989EA4

offset: 4430
highlight: FF67C1F5
main menu.png


update firmware screen
offset: 47C8
default: FF989EA4
update firmware.png


image info
offset: 4AB8
default: FF67C1F5
image info.png


image name
offset: 4D74
default: FF989EA4

offset: 4D98
highlight: FF67C1F5
image name.png



for chage cursor color need replace three bytes, one byte per color

cursor color
red
offset: 4BD2
default: 21

green
offset: 4BD6
default: 38

blue
offset: 4BDA
default: 52
cursor color.png

thanks that was really helpful, i've implemented a way to change these in my app :D
thanks again.

User avatar
RazorX
brutal
Posts: 245

Re: GDMENU Theme Manager /Dreamcast

Post#42 » Tue Dec 22, 2020 8:58 pm

v1.0 of my app is out now with an option to change the various colors but it's experimental, i haven't been able to really test it yet:
https://segaxtreme.net/threads/release- ... 1-0.24531/

User avatar
Anthony817
Shark Patrol
Posts: 4009

Re: GDMENU Theme Manager /Dreamcast

Post#43 » Tue Dec 22, 2020 10:34 pm

megavolt85 wrote:
Anthony817 wrote:Megavolt, how feasible is it to see if the actual built in cheat menu that is already in the latest version of GDMENU but not enabled by default could be hacked to work?


the latest version does not have this menu, I already checked


Ah really? mrneo240 said there was a file for it inside the iso but he just didn't have any idea how to get it working. This was like a year or 2 ago over at Assembler.

The files for it are here, ripped from GDMENU's binary thanks to mrneo240.

https://mega.nz/file/LYFmkIIY#MypKER7om ... XgosmDnxlM
Image

User avatar
megavolt85
Developer
Posts: 1823

Re: GDMENU Theme Manager /Dreamcast

Post#44 » Wed Dec 23, 2020 3:51 am

Anthony817 wrote:The files for it are here, ripped from GDMENU's binary thanks to mrneo240.


these files are used and they have nothing to do with the hidden menu

User avatar
Anthony817
Shark Patrol
Posts: 4009

Re: GDMENU Theme Manager /Dreamcast

Post#45 » Wed Dec 23, 2020 4:39 am

Ah ok, I see now. Thanks for clarifying. I was going by information from a while ago so wasn't really sure if it was the case or not.
Image

User avatar
megavolt85
Developer
Posts: 1823

Re: GDMENU Theme Manager /Dreamcast

Post#46 » Wed Dec 23, 2020 6:36 pm

RazorX wrote:thanks that was really helpful, i've implemented a way to change these in my app :D


part 2 :mrgreen:

for change games per page need fix few values
base_val - always a positive number, equal to the number of games per page
neg_val - negative number, calculated using the formula 0x100-base_val
double_val - always a positive number, calculated by the formula base_val * 2

games per page
base_val: 14 (20 dec)
offset1: 4A6E
offset2: 4B16
offset3: 65D6
offset4: 6612

neg_val: EC (-20 dec)
offset1: 4A7C
offset2: 65CC
offset3: 6606

double_val: 28 (40 dec)
offset: 65DE

example 10 games per page
10 games per page.png



now let's change the coordinates of the information blocks
counting the x and y coordinates from the upper left corner, all value 2 bytes
unfortunately, some coordinates cannot be arbitrarily changed, so I fixed the executable file and changing coordinates will only work with it
after editing you need it to scramble

image info
X left: 4A80
def val: 01A8 (424 dec)
X right: 4A7E
def val: 0272 (626 dec)
note: "X right" value used for calculate width "image info" block. example 626-424=202

Y coordinate for each string
REGION
Y: 4A88
def val: 0055 (85 dec)


VGA
Y: 4A8A
def val: 006D (109 dec)


DISC
Y: 4A82
def val: 0085 (133 dec)


DATE
Y: 4A84
def val: 009D (157 dec)


VERSION
Y: 4A86
def val: 00B5 (181 dec)



game list
X: 4BEC
def val: 0003 (3 dec)
Y: 4BEE
def val: 000E (14 dec)

cursor width: 4D6A
def val: 0194 (404 dec)




cover coordinates are stored as two points, the first x1, y1 corresponds to the upper left corner, the second x2, y2 corresponds to the lower right corner
coordinates are float and are four bytes
the cover is scaled to 210x210 pixels
x2 = x1 + 210.0
y2 = y1 + 210.0

cover 0GDTEX.PVR
x1: 4694
def val: 43D20000 (420.0)
y1: 4688
def val: 43550000 (213.0)
x2: 4698
def val: 441D8000 (630.0)
y2: 469C
def val: 43D38000 (423.0)


patched main binary:
gdmenu.7z
(290.26 KiB) Downloaded 326 times

User avatar
RazorX
brutal
Posts: 245

Re: GDMENU Theme Manager /Dreamcast

Post#47 » Thu Dec 24, 2020 9:37 pm

megavolt85 wrote:
RazorX wrote:thanks that was really helpful, i've implemented a way to change these in my app :D


part 2 :mrgreen:

for change games per page need fix few values
base_val - always a positive number, equal to the number of games per page
neg_val - negative number, calculated using the formula 0x100-base_val
double_val - always a positive number, calculated by the formula base_val * 2

games per page
base_val: 14 (20 dec)
offset1: 4A6E
offset2: 4B16
offset3: 65D6
offset4: 6612

neg_val: EC (-20 dec)
offset1: 4A7C
offset2: 65CC
offset3: 6606

double_val: 28 (40 dec)
offset: 65DE

example 10 games per page
10 games per page.png


now let's change the coordinates of the information blocks
counting the x and y coordinates from the upper left corner, all value 2 bytes
unfortunately, some coordinates cannot be arbitrarily changed, so I fixed the executable file and changing coordinates will only work with it
after editing you need it to scramble

image info
X left: 4A80
def val: 01A8 (424 dec)
X right: 4A7E
def val: 0272 (626 dec)
note: "X right" value used for calculate width "image info" block. example 626-424=202

Y coordinate for each string
REGION
Y: 4A88
def val: 0055 (85 dec)


VGA
Y: 4A8A
def val: 006D (109 dec)


DISC
Y: 4A82
def val: 0085 (133 dec)


DATE
Y: 4A84
def val: 009D (157 dec)


VERSION
Y: 4A86
def val: 00B5 (181 dec)



game list
X: 4BEC
def val: 0003 (3 dec)
Y: 4BEE
def val: 000E (14 dec)

cursor width: 4D6A
def val: 0194 (404 dec)




cover coordinates are stored as two points, the first x1, y1 corresponds to the upper left corner, the second x2, y2 corresponds to the lower right corner
coordinates are float and are four bytes
the cover is scaled to 210x210 pixels
x2 = x1 + 210.0
y2 = y1 + 210.0

cover 0GDTEX.PVR
x1: 4694
def val: 43D20000 (420.0)
y1: 4688
def val: 43550000 (213.0)
x2: 4698
def val: 441D8000 (630.0)
y2: 469C
def val: 43D38000 (423.0)


patched main binary:
gdmenu.7z

i've started implementing some of this and i will be releasing an update soon with it all on :D
Image
Image
Image

i've made it very easy for people to make there own color presets, when you click the Custom preset and enter various values it will save them to the Custom.txt (in the Assets folder) on exiting that menu and when you next load up the menu it will load that Custom.txt so you can use it again as it was or change it.
you can also just rename that Custom.txt file if you want to whatever, for example you could rename it to Black.txt if that's the colors you selected and when you next click the dropdown box Black will be there for you to select anytime.

User avatar
RazorX
brutal
Posts: 245

Re: GDMENU Theme Manager /Dreamcast

Post#48 » Thu Dec 24, 2020 9:48 pm

just to make it a little more helpful, when you enter a good RGBA value the textbox background color should change to it :)

User avatar
megavolt85
Developer
Posts: 1823

Re: GDMENU Theme Manager /Dreamcast

Post#49 » Thu Dec 24, 2020 9:50 pm

RazorX wrote:i've made it very easy for people to make there own color presets, when you click the Custom preset and enter various values it will save them to the Custom.txt (in the Assets folder) on exiting that menu and when you next load up the menu it will load that Custom.txt so you can use it again as it was or change it.
you can also just rename that Custom.txt file if you want to whatever, for example you could rename it to Black.txt if that's the colors you selected and when you next click the dropdown box Black will be there for you to select anytime.


I think it's worth removing the ability to change the transparency of the text
color is most conveniently specified as a HEX value
https://htmlcolorcodes.com/

User avatar
RazorX
brutal
Posts: 245

Re: GDMENU Theme Manager /Dreamcast

Post#50 » Thu Dec 24, 2020 10:08 pm

megavolt85 wrote:
RazorX wrote:i've made it very easy for people to make there own color presets, when you click the Custom preset and enter various values it will save them to the Custom.txt (in the Assets folder) on exiting that menu and when you next load up the menu it will load that Custom.txt so you can use it again as it was or change it.
you can also just rename that Custom.txt file if you want to whatever, for example you could rename it to Black.txt if that's the colors you selected and when you next click the dropdown box Black will be there for you to select anytime.


I think it's worth removing the ability to change the transparency of the text
color is most conveniently specified as a HEX value
https://htmlcolorcodes.com/

yeah i will probs make it much simpler for the average user at some point, right now i have it like that for testing and for making presets.
once i have a good few presets for people to pick from i'll probs just get rid of most of those options and if people really want to customize it they can just alter the values in the preset txt files or just create there own preset txt file as my app will detect the txt file and automatically add it to the preset dropdown box.

  • Similar Topics
    Replies
    Views
    Last post

Return to “New Releases/Homebrew/Emulation”

Who is online

Users browsing this forum: No registered users