Register

Casio 9860 G1M file format

Learn how to program. Code snippets for creating sprites etc. Submit your own or use those of others.
Member
Posts: 43
Joined: Thu May 31, 2012 5:45 pm
Location: Greece
Calculators: Casio fx-9860G SD

Casio 9860 G1M file format

Postby hayzel » Thu May 31, 2012 5:52 pm

Hi,
I decided to work on an alternative usb file transfer tool or|and editor for casio 9860.
I am trying to decode the G1M file format, that is used by fa-124.
I managed to understand by googling and hex dumping the format but, I am missing the header.
In each G1M file there is a 32byte header.
Any idea or info on what it contains?
It would be great to know, because right now I can load g1m file data, but I cannot save them back to g1m file format, because I am missing the first 32 bytes.

Thank you in advance.

Toussis Manolis

Senior Member
User avatar
Posts: 605
Joined: Sat Sep 15, 2012 6:59 am
Location: Krautland ****
Calculators: Casio fx-7400GII, Casio fx-7400GII (SH4), Casio fx-9750GII, Casio fx-9750GII (SH4), Casio fx-9860G, Casio fx-9860G SD, Casio fx-9860G Slim, Casio fx-9860GII SD, Casio fx-9860GII SD Power Graphic 2, Casio Classpad 330 plus, Casio fx-CG20, Casio fx-CG50, Casio Classpad fx-CP400

Postby SimonLothar » Thu May 31, 2012 6:03 pm

G1X Standardheader
All file formats that are read or written by the calculator share a common header format. This header is inverted before being written and read, so a description of the inverted file data make more sense than the normal file data:

Offset (b), Size (b), Description
0, 8, File identifier: “USBPower”
8, 1, File type identifier
9, 5, {0x00, 0x10, 0x00, 0x10, 0x00}
0xE, 1, Control byte: (LSB of filesize (at offset 0x13)) + 0x41
0xF, 1, 0x01
0x10, 4, Total file size as unsigned integer, big endian format
0x14, 1, Control byte: (LSB of filesize (at offset 0x13)) + 0xB8
0x15, 9, Unknown purpose (maybe 4-alignment), appears insignificant
0x1E, 2, Number of objects contained, if file is of type G1M or G1R
0x20...Subheader depending on particular file type

Known file types are:
0xF3 Addin
0x31 General MCS memory file
0x49 E-Activity
I'll be back!

Member
Posts: 43
Joined: Thu May 31, 2012 5:45 pm
Location: Greece
Calculators: Casio fx-9860G SD

Postby hayzel » Thu May 31, 2012 6:09 pm

Thanks!
I was reading "inverted" when I was searching on the internet but did not give attention to it.
So I get the 0x20(32d) bytes I bit-invert them and I get the above header?

Senior Member
User avatar
Posts: 605
Joined: Sat Sep 15, 2012 6:59 am
Location: Krautland ****
Calculators: Casio fx-7400GII, Casio fx-7400GII (SH4), Casio fx-9750GII, Casio fx-9750GII (SH4), Casio fx-9860G, Casio fx-9860G SD, Casio fx-9860G Slim, Casio fx-9860GII SD, Casio fx-9860GII SD Power Graphic 2, Casio Classpad 330 plus, Casio fx-CG20, Casio fx-CG50, Casio Classpad fx-CP400

Postby SimonLothar » Thu May 31, 2012 6:28 pm

hayzel wrote:I was reading "inverted" when I was searching on the internet but did not give attention to it.
Oh, why not?

hayzel wrote:So I get the 0x20(32d) bytes I bit-invert them and I get the above header?
Yes.
I'll be back!

Senior Member
User avatar
Posts: 605
Joined: Sat Sep 15, 2012 6:59 am
Location: Krautland ****
Calculators: Casio fx-7400GII, Casio fx-7400GII (SH4), Casio fx-9750GII, Casio fx-9750GII (SH4), Casio fx-9860G, Casio fx-9860G SD, Casio fx-9860G Slim, Casio fx-9860GII SD, Casio fx-9860GII SD Power Graphic 2, Casio Classpad 330 plus, Casio fx-CG20, Casio fx-CG50, Casio Classpad fx-CP400

Postby SimonLothar » Sun Jun 03, 2012 6:51 pm

I moved the protocol 7.00 related posts:
http://www.casiopeia.net/forum/viewtopic.php?f=21&t=1400
I'll be back!

Return to Tutorials & Code Snippets

Who is online

Users browsing this forum: No registered users and 19 guests