Guide to modifying ICONDATA.VMS

Moderators: pcwzrd13, deluxux, VasiliyRS

User avatar
Slurmking
lithium
Posts: 45

Re: Guide to modifying ICONDATA.VMS

Post#31 » Thu Oct 12, 2017 5:46 pm

They are removed now, thanks for the heads up

User avatar
Slurmking
lithium
Posts: 45

Re: Guide to modifying ICONDATA.VMS

Post#32 » Fri Oct 13, 2017 12:44 am

The Tool works very well and as proof I have added Icons I created with the tool to my site. Dreamcast only http://slurmking.net/dream/icons.php

User avatar
Slurmking
lithium
Posts: 45

Re: Guide to modifying ICONDATA.VMS

Post#33 » Tue Oct 17, 2017 1:03 am

Slurmking wrote:Introduction
This post will educate you in the hex values and image format for ICONDATA.VMS. This has taken me over 2 days to figure out so please be respectful.

I decided to write this guide because all the information I was able to find was either incorrect or incomplete. Please enjoy!

Every example is taken directly from my hand written icon
http://dream.slurmking.net/VMU/ICONDATA/IconData.zip


Mono Chrome Icon
The monochrome icon is a 128 byte 1bpp bitmap starting at the offset defined at 0x10. Each row consists of 4 pairs of 4bit hex values that translate into the corresponding bitmap
For example in the image below you will see row one is equal to 02 00 00 40, translated into binary that reads
0000 0010 0000 0000 0000 0000 0100 0000
Where 1 is a black pixel and 0 is a white pixel
Image

Color Icon
Image
The color icon begins 16 bits after the offset defined at 0x14 as the first 16 bits are the color pallet.
The color icon is 512 bytes in order. Each nibble of the hex byte refers to the corresponding color pallet.

For example the first row of this image is
44 44 44 23 33 33 33 33 33 33 33 33 32 44 44 44
where
4 = color #4
2 = color #2, and so on...

Color Pallet
Image
This is the color pallet from the above sample. In the chart above the colors are numbered from 0 to F this is in relation the order the colors appear and it is also the number used for the icon data.

The pallet code will start at the offest defined at value 0x14 and will contain 16 16-bit little endian integers

Code: Select all

00 F0 0F 0F 69 F6 CC FC 88 F3 FC FF FC FF 99 F9
77 F7 44 F4 21 F2 A0 FF 61 F9 93 FC CB FC 00 F0


Colors

The color value of this image is split into 2 hex bytes which contain the Red, Green, Blue, and, Alpha values for the color. The values are in the wrong order however and actually appear as GBAR thus the layout is GB AR
*(The A value is for the transparency, 0 being Transparent and F being opaque)
Image
As you can see from the above example you are only able to create hex colors with with a double value therefore a color like #55CCAA is possible but a color like #59C6AB is not

Finished Code
Image

Code: Select all

00 F0 0F 0F 69 F6 CC FC 88 F3 FC FF FC FF 99 F9
77 F7 44 F4 21 F2 A0 FF 61 F9 93 FC CB FC 00 F0
44 44 44 23 33 33 33 33 33 33 33 33 32 44 44 44
44 44 44 23 33 33 33 33 33 33 33 33 32 44 44 44
44 44 44 23 33 33 33 33 33 33 33 33 32 44 44 44
44 44 44 23 33 33 33 33 33 33 33 33 32 44 44 44
44 44 44 23 33 33 33 33 33 33 33 33 32 44 44 44
44 44 44 22 22 22 22 22 22 22 22 22 22 44 44 44
44 44 22 33 33 33 33 33 33 33 33 33 33 24 44 44
44 42 33 30 00 00 00 00 00 00 00 00 03 32 24 44
44 23 30 06 66 66 66 00 00 06 66 66 60 03 32 44
44 23 00 66 66 66 66 00 00 66 66 66 66 00 32 44
42 33 06 66 66 66 66 66 06 66 66 66 66 60 03 24
42 30 06 66 60 00 66 66 06 66 60 00 66 60 03 24
42 30 06 66 60 00 66 66 06 66 60 00 66 60 03 24
42 30 00 66 60 00 66 60 00 66 60 00 66 00 03 24
44 23 00 06 66 66 66 60 00 66 66 66 66 00 32 44
44 23 00 06 66 66 66 00 00 06 66 66 60 00 32 44
44 42 30 00 00 00 00 00 00 00 00 00 00 03 24 44
44 44 23 30 00 00 00 00 00 00 00 00 03 32 44 44
44 44 42 33 33 33 33 33 33 33 33 33 33 24 44 44
44 44 44 22 22 22 22 22 22 22 22 22 22 44 44 44
44 44 44 23 33 33 33 33 33 33 33 33 32 44 44 44
44 44 44 23 33 33 33 33 33 33 33 33 32 44 44 44
44 44 44 42 00 00 00 00 00 00 00 00 24 44 44 44
44 44 44 42 66 06 66 66 06 66 60 66 24 44 44 44
44 44 44 42 00 00 00 00 00 00 00 00 24 44 44 44
44 44 44 42 66 06 66 66 06 66 60 66 24 44 44 44
44 44 44 22 00 00 00 00 00 00 00 00 22 44 44 44
44 44 44 22 66 06 66 66 06 66 60 66 22 44 44 44
44 44 44 22 00 00 00 00 00 00 00 00 22 44 44 44
44 44 44 23 33 33 33 33 33 33 33 33 32 44 44 44
44 44 22 33 33 33 33 33 33 33 33 33 33 22 44 44
44 42 33 33 33 33 33 33 33 33 33 33 33 33 24 44


Image

Special thanks
Special thanks to the beautifully written guides at http://mc.pp.se/dc/, this definitely gave me a head start on the project.

User avatar
OlivusPrime
dirty sailor
Posts: 177

Re: Guide to modifying ICONDATA.VMS

Post#34 » Thu Nov 17, 2022 5:57 am

Does anyone still have this tool? I've been looking for a simple way of generating ICONDATA.VMS files over the usual method and this seemed like just the ticket.

User avatar
Xiden
Developer
Posts: 2214

Re: Guide to modifying ICONDATA.VMS

Post#35 » Thu Nov 17, 2022 12:11 pm

OlivusPrime wrote:Does anyone still have this tool? I've been looking for a simple way of generating ICONDATA.VMS files over the usual method and this seemed like just the ticket.


I think this may be it, this is his github
https://github.com/slurmking/vmu-tools

User avatar
OlivusPrime
dirty sailor
Posts: 177

Re: Guide to modifying ICONDATA.VMS

Post#36 » Thu Nov 17, 2022 3:26 pm

Xiden wrote:
OlivusPrime wrote:Does anyone still have this tool? I've been looking for a simple way of generating ICONDATA.VMS files over the usual method and this seemed like just the ticket.


I think this may be it, this is his github
https://github.com/slurmking/vmu-tools

Thanks very much, just trying to get my head around the Python operations.

It's crazy that people have come up with like 4 different ways to create VMU icons, but they're all either needlessly complicated or lack a basic UI.

User avatar
Slurmking
lithium
Posts: 45

Re: Guide to modifying ICONDATA.VMS

Post#37 » Fri Nov 25, 2022 9:09 pm

OlivusPrime wrote:
Xiden wrote:
OlivusPrime wrote:Does anyone still have this tool? I've been looking for a simple way of generating ICONDATA.VMS files over the usual method and this seemed like just the ticket.


I think this may be it, this is his github
https://github.com/slurmking/vmu-tools

Thanks very much, just trying to get my head around the Python operations.

It's crazy that people have come up with like 4 different ways to create VMU icons, but they're all either needlessly complicated or lack a basic UI.


If you need any help let me know. Making a UI is a constant issue that requires a lot of coding and upkeep. I may look into doing it in the future but finding time to do any of these projects is hard

  • Similar Topics
    Replies
    Views
    Last post

Return to “Modifications”

Who is online

Users browsing this forum: No registered users