New BMPX Picture DataType

miker1264 · 506

magorium

  • Member
  • ***
    • Posts: 118
    • Karma: +0/-0
  • Convicted non contributor
Reply #15 on: September 27, 2019, 02:15:00 AM
Does anyone have information about the format and proper layout of the datatype descriptor source file *.dtd used to make descriptors for new datatypes?
You could try and use the Dtdesc tool (and accompanied documentation) from Olivier which you can find here: http://archives.aros-exec.org/index.php?function=showfile&file=utility/shell/dtdesc.i386-aros.tar.gz

I've used the same information for my IFF scanner (and which seems to work as expected ... at least for datatype descriptors  :) ).

Don't get entangled/lost in similar descriptors and priorities though  ;)


miker1264

  • Senior Member
  • ****
    • Posts: 342
    • Karma: +12/-1
Reply #16 on: September 27, 2019, 04:43:47 AM
Does anyone have information about the format and proper layout of the datatype descriptor source file *.dtd used to make descriptors for new datatypes?
You could try and use the Dtdesc tool (and accompanied documentation) from Olivier which you can find here: http://archives.aros-exec.org/index.php?function=showfile&file=utility/shell/dtdesc.i386-aros.tar.gz

I've used the same information for my IFF scanner (and which seems to work as expected ... at least for datatype descriptors  :) ).

Don't get entangled/lost in similar descriptors and priorities though  ;)

Is dtdesc similar to createdtdesc?

I believe that the dt descriptor is related to the struct DataTypeHeader dth_Name, dth_BaseName, etc.

I've read about something similar for Amiga OS4 as dtdesc that has a user interface?

Thanks, I'll check it out.



miker1264

  • Senior Member
  • ****
    • Posts: 342
    • Karma: +12/-1
Reply #17 on: September 27, 2019, 04:44:40 AM
thank you for your effort miker :)

Sure. No problem. I try very hard to make things work right.



miker1264

  • Senior Member
  • ****
    • Posts: 342
    • Karma: +12/-1
Reply #18 on: September 27, 2019, 04:47:17 AM
When I have some time I will take a look at your sample images and test 1bit and 4bit images with the old bmp datatype and new one to compare.

There are some sample bmp images in the AROS sources.

I downloaded and opened your 1bpp images and some of my own. They all opened and displayed correctly.

Are you using Icaros Hosted or Native?



magorium

  • Member
  • ***
    • Posts: 118
    • Karma: +0/-0
  • Convicted non contributor
Reply #19 on: September 27, 2019, 05:56:31 AM
Is dtdesc similar to createdtdesc?
If i remember correctly it is similar in nature although if i recall correctly createdtdesc package is aimed at creating (picture) datatypes (as a whole, including makefiles). dtdescr is aimed at (only) viewing and creating the descriptor.

Although that in itself is not very exciting, it can be if you wish to create a new recognition filetype even though there is not an actual datatype in place. Or of course in case you wish to extend or 'overwrite' an existing descriptor (and in cases where you are not familiar with the build-system or wish to bypass that system).

Quote
I believe that the dt descriptor is related to the struct DataTypeHeader dth_Name, dth_BaseName, etc.
afaik that is correct. The accompanied readme implies as such  :)

Quote
I've read about something similar for Amiga OS4 as dtdesc that has a user interface?
I'm sorry to say that i'm not that familiar with OS4 tools/utilities so unfortunately i'm unable to tell.

Quote
Thanks, I'll check it out.
As long as it is useful to/for you then i'm glad i was able to help.


miker1264

  • Senior Member
  • ****
    • Posts: 342
    • Karma: +12/-1
Reply #20 on: September 30, 2019, 03:30:52 PM
I've not made much progress with some other datatypes. But the good news is that BMP DataType is working. So I'll continue work on it.

I'll release the final version 1.0.0 later today and the source code for it under AROS License.



salvatore

  • Guest
Reply #21 on: September 30, 2019, 08:04:45 PM
than's :D



miker1264

  • Senior Member
  • ****
    • Posts: 342
    • Karma: +12/-1
Reply #22 on: October 01, 2019, 05:25:59 AM
Here is the final release of version 1.0.0 for New BMP DataType.

In a future update I may add support to Load and Save 16bit, Save 1bit & 4bit, & Loading OS2 bitmaps.



miker1264

  • Senior Member
  • ****
    • Posts: 342
    • Karma: +12/-1
Reply #23 on: October 02, 2019, 03:25:19 PM
Here is the metamake file for 64bit. I haven't tested it yet. Let me know if it works. ;-)



salvo

  • Member
  • ***
    • Posts: 208
    • Karma: +0/-0
  • Invalid Civil
Reply #24 on: October 02, 2019, 05:28:15 PM
Thank you miker :D

Icaros on HP Z600 Intel Xeon X5570 3 Ghz, Nvidia 8400gs, Apple Cinema Display 30"


miker1264

  • Senior Member
  • ****
    • Posts: 342
    • Karma: +12/-1
Reply #25 on: December 12, 2019, 06:44:03 PM
paolone

I will send the current version of BMP Datatype to you later today to be included in version 2.3.0 if it isn't too late. The save functions work on Icaros 32bit but not yet 64bit. I'm still working on 64bit.

Thanks for your patience and for your hard work.



salvo

  • Member
  • ***
    • Posts: 208
    • Karma: +0/-0
  • Invalid Civil
Reply #26 on: December 12, 2019, 10:14:09 PM
but is possible uploading on archives?

Icaros on HP Z600 Intel Xeon X5570 3 Ghz, Nvidia 8400gs, Apple Cinema Display 30"


miker1264

  • Senior Member
  • ****
    • Posts: 342
    • Karma: +12/-1
Reply #27 on: Today at 02:33:49 AM
but is possible uploading on archives?

I suppose so but it's the AROS 32bit BMP Datatype that will also be comitted to AROS 64bit sources when that part is ready.

The binary is to be included with the next release of Icaros Desktop 32bit, hopefully. The 64bit version isn't ready yet. I'm still working on that part.
« Last Edit: Today at 03:46:14 AM by miker1264 »



miker1264

  • Senior Member
  • ****
    • Posts: 342
    • Karma: +12/-1
Reply #28 on: Today at 05:35:32 AM
I have narrowed down the problems with the 64bit version of the AROS BMP Datatype.

Since PNM Datatype already works I substituted the Save_BMP function for the Save_PNM function.
There was a slight problem with the BitmapFileHeader & BitmapInfoHeader so I also substituted the PNM header for the BMP.
 
So by using MultiView 64bit to open a test pnm file then choosing "Save As" from the menu MultiView used the Save_PNM function which is actually Save_BMP.
The result was that it saved a 24bit file with a PNM P6 header and BMP pixel data which is stored upside down and RGB for a BMP is swapped to BGR so red and blue are reversed. You can see that it successfully saved the BMP data. So the problem with the 64bit BMP save function is in the BitmapFileHeader & BitmapInfoHeader or file signature at the beginning of the BMP file.