<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.inkscape.org/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mythgarr</id>
	<title>Inkscape Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.inkscape.org/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mythgarr"/>
	<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/Special:Contributions/Mythgarr"/>
	<updated>2026-05-14T03:23:53Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.36.1</generator>
	<entry>
		<id>https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54725</id>
		<title>GSD</title>
		<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54725"/>
		<updated>2009-11-07T19:47:33Z</updated>

		<summary type="html">&lt;p&gt;Mythgarr: /* Chunks */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== The GSD binary file format ==&lt;br /&gt;
The file must begin with . This is a header to verify that it is the correct file type.&lt;br /&gt;
===Header===&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; align=&amp;quot;left&amp;quot;&lt;br /&gt;
|0x00-0x0f ||&amp;quot;GRAPHTEC PRT&amp;amp;CUT&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|0x10-0x17 ||0x06 00 00 00 01 00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x18-0x7f ||This entire block is padded with zeros. There may be some other information stored, but in every sample file examined the data is simply 0.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Body===&lt;br /&gt;
The body consists of a number of blocks of data. Every block starts with a length chunk indicating how many chunks are contained within that block. For more complex data such as the actual lines, polylines, and pen information chunks may contain entire blocks in a hierarchy.&lt;br /&gt;
&lt;br /&gt;
====Chunks====&lt;br /&gt;
The first two bytes of the chunk provide information on the purpos. The following 2 bytes indicate the type of data and the number of data elements of that type.&lt;br /&gt;
&lt;br /&gt;
While the data typically follows this pattern, in some cases (most notably distance measurements) the &amp;quot;datatype&amp;quot; may indicate a different length than is actually used.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
!Header !!Description&lt;br /&gt;
|-&lt;br /&gt;
|00 ||1 byte of data stored in length byte&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte little endian 8-bit integer. Typically used for boolean values.&lt;br /&gt;
|-&lt;br /&gt;
|02 ||2-byte little endian 16-bit integer&lt;br /&gt;
|-&lt;br /&gt;
|03 ||4-byte little endian 32-bit integer&lt;br /&gt;
|-&lt;br /&gt;
|04 ||8-byte little endian double precision float. Usually for storing a distance in mm units&lt;br /&gt;
|-&lt;br /&gt;
|05 ||ASCII data chunks&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Based on several files generated using version 5.10 of the QuicKutz ROBO Master software, the following information has been deduced. In some cases the data observed in a given chunk is provided where the purpose is unknown.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;left&amp;quot;&lt;br /&gt;
|+Drawing Object Types:&lt;br /&gt;
!Value !!Type&lt;br /&gt;
|-&lt;br /&gt;
|0 ||line&lt;br /&gt;
|-&lt;br /&gt;
|1 ||polyline&lt;br /&gt;
|-&lt;br /&gt;
|4 ||elliptical arc&lt;br /&gt;
|-&lt;br /&gt;
|5 ||nurb spline&lt;br /&gt;
|-&lt;br /&gt;
|6 ||text&lt;br /&gt;
|-&lt;br /&gt;
|7 ||rectangle&lt;br /&gt;
|-&lt;br /&gt;
|9 ||rounded rectangle&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;left&amp;quot;&lt;br /&gt;
|+Chunk Types&lt;br /&gt;
!Prefix !!Suffix !!Description !!DataType !!Data Length&lt;br /&gt;
|-&lt;br /&gt;
|03&lt;br /&gt;
|-&lt;br /&gt;
| ||01 ||Number of Drawing Objects &lt;br /&gt;
|-&lt;br /&gt;
|04 &lt;br /&gt;
|-&lt;br /&gt;
| ||00 ||Drawing Object &lt;br /&gt;
|-&lt;br /&gt;
| ||01 ||Drawing Object Type &lt;br /&gt;
|-&lt;br /&gt;
| ||0A ||2D Point &lt;br /&gt;
|-&lt;br /&gt;
| ||0B ||Polyline Length &lt;br /&gt;
|-&lt;br /&gt;
| ||0C ||Polyline Point &lt;br /&gt;
|-&lt;br /&gt;
| ||14 ||Sweep (radians) &lt;br /&gt;
|-&lt;br /&gt;
| ||15 ||Ecentricity? &lt;br /&gt;
|-&lt;br /&gt;
| ||16 ||(0=Open/1=Closed) &lt;br /&gt;
|-&lt;br /&gt;
| ||40 ||Bbox (Upper Left) &lt;br /&gt;
|-&lt;br /&gt;
| ||41 ||Bbox (Upper Right) &lt;br /&gt;
|-&lt;br /&gt;
| ||42 ||Bbox (Lower Right) &lt;br /&gt;
|-&lt;br /&gt;
| ||43 ||Bbox (Lower Left) &lt;br /&gt;
|-&lt;br /&gt;
| ||44 ||Rotation &lt;br /&gt;
|-&lt;br /&gt;
|05 &lt;br /&gt;
|-&lt;br /&gt;
| ||21 ||Group &lt;br /&gt;
|-&lt;br /&gt;
|07 &lt;br /&gt;
|-&lt;br /&gt;
| ||02 ||Number of Line Styles? ||03 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||05 ||Dashed Line Pattern Cut Segment Length ||04 ||01  &lt;br /&gt;
|-&lt;br /&gt;
| ||06 ||Dashed Line Pattern Spacing Length ||04 ||01 &lt;br /&gt;
|-&lt;br /&gt;
|08 &lt;br /&gt;
|-&lt;br /&gt;
| ||01 ||Name of cutter? ||05 ||var &lt;br /&gt;
|-&lt;br /&gt;
| ||02 ||Name of cutter? ||05 ||var &lt;br /&gt;
|-&lt;br /&gt;
| ||04 ||Text description of paper type ||05 ||var &lt;br /&gt;
|-&lt;br /&gt;
| ||05 ||Paper size in 0.01mm units (Width, Height) ||03 ||02 &lt;br /&gt;
|-&lt;br /&gt;
| ||08 ||Cutting Rotation Angle ||02 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||09 ||Offset Enabled ||01 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||0A ||Offset X ||03 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||0B ||Offset Y ||03 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||0C ||Weed Border Enabled ||01 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||0D ||Weed Border Distance ||03 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||0E ||Feed Media Enabled ||01 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||0F ||Feed Media Source (00-Start, 01-End) ||02 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||10 ||Feed Length ||03 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||11 ||Tiling Enabled ||01 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||14 ||Tiling Overlap ||03 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||1A ||Scaling ||02 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||1C ||Tiling Media Width ||03 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||1D ||Tiling Media Height ||03 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||21 ||Print Rotation Angle ||02 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||22 ||Print Cut Lines Enabled ||01 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||23 ||ID for print paper size? ||02 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||24 ||Paper Width in 0.1mm units ||03 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||25 ||Paper Height in 0.1mm units ||03 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||26 ||Paper Orientation (01=Portrait, 02=Landscape) ||02 ||01 &lt;br /&gt;
|-&lt;br /&gt;
|0A &lt;br /&gt;
|-&lt;br /&gt;
| ||00 ||Page Style? &lt;br /&gt;
|-&lt;br /&gt;
|0B &lt;br /&gt;
|-&lt;br /&gt;
| ||00 ||Line Style? &lt;br /&gt;
|-&lt;br /&gt;
|0E &lt;br /&gt;
|-&lt;br /&gt;
| ||00 ||Registration Mark Settings &lt;br /&gt;
|-&lt;br /&gt;
| ||01 ||Show Registration Marks Enabled ||01 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||02 ||Registration Mode(00=2, 01=3, 02=4) ||02 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||03 ||Registration Pattern(01=Normal, 00=Inward) ||02 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||0A ||Registration Size &lt;br /&gt;
|-&lt;br /&gt;
| ||0B ||Registration Thickness &lt;br /&gt;
|-&lt;br /&gt;
| ||0C ||Origin X &lt;br /&gt;
|-&lt;br /&gt;
| ||0D ||Origin Y &lt;br /&gt;
|-&lt;br /&gt;
| ||0E ||Distance (1-2) &lt;br /&gt;
|-&lt;br /&gt;
| ||0F ||Distance (2-3) &lt;br /&gt;
|-&lt;br /&gt;
| ||10 ||Exceeds Maximum Recommended Length of 31.5&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
|0F &lt;br /&gt;
|-&lt;br /&gt;
| ||00 ||Grid Settings &lt;br /&gt;
|-&lt;br /&gt;
| ||01 ||Show Grid ||01 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||02 ||Grid Type (00=Line, 01=Dot) ||02 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||03 ||Grid Spacing ||04 ||01 &lt;br /&gt;
|-&lt;br /&gt;
| ||04 ||Grid Snap Enabled ||01 ||01 &lt;br /&gt;
|-&lt;br /&gt;
|10 &lt;br /&gt;
|-&lt;br /&gt;
| ||00 ||End of File &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Mythgarr</name></author>
	</entry>
	<entry>
		<id>https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54723</id>
		<title>GSD</title>
		<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54723"/>
		<updated>2009-11-07T19:42:22Z</updated>

		<summary type="html">&lt;p&gt;Mythgarr: /* Chunks */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== The GSD binary file format ==&lt;br /&gt;
The file must begin with . This is a header to verify that it is the correct file type.&lt;br /&gt;
===Header===&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; align=&amp;quot;left&amp;quot;&lt;br /&gt;
|0x00-0x0f ||&amp;quot;GRAPHTEC PRT&amp;amp;CUT&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|0x10-0x17 ||0x06 00 00 00 01 00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x18-0x7f ||This entire block is padded with zeros. There may be some other information stored, but in every sample file examined the data is simply 0.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Body===&lt;br /&gt;
The body consists of a number of blocks of data. Every block starts with a length chunk indicating how many chunks are contained within that block. For more complex data such as the actual lines, polylines, and pen information chunks may contain entire blocks in a hierarchy.&lt;br /&gt;
&lt;br /&gt;
====Chunks====&lt;br /&gt;
The first two bytes of the chunk provide information on the purpos. The following 2 bytes indicate the type of data and the number of data elements of that type.&lt;br /&gt;
&lt;br /&gt;
While the data typically follows this pattern, in some cases (most notably distance measurements) the &amp;quot;datatype&amp;quot; may indicate a different length than is actually used.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
!Header !!Description&lt;br /&gt;
|-&lt;br /&gt;
|00 ||1 byte of data stored in length byte&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte little endian 8-bit integer. Typically used for boolean values.&lt;br /&gt;
|-&lt;br /&gt;
|02 ||2-byte little endian 16-bit integer&lt;br /&gt;
|-&lt;br /&gt;
|03 ||4-byte little endian 32-bit integer&lt;br /&gt;
|-&lt;br /&gt;
|04 ||8-byte little endian double precision float. Usually for storing a distance in mm units&lt;br /&gt;
|-&lt;br /&gt;
|05 ||ASCII data chunks&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Based on several files generated using version 5.10 of the QuicKutz ROBO Master software, the following information has been deduced. In some cases the data observed in a given chunk is provided where the purpose is unknown.&lt;br /&gt;
{|&lt;br /&gt;
|+Drawing Object Types:&lt;br /&gt;
!Value !!Type&lt;br /&gt;
|-&lt;br /&gt;
|0 ||line&lt;br /&gt;
|-&lt;br /&gt;
|1 ||polyline&lt;br /&gt;
|-&lt;br /&gt;
|4 ||elliptical arc&lt;br /&gt;
|-&lt;br /&gt;
|5 ||nurb spline&lt;br /&gt;
|-&lt;br /&gt;
|6 ||text&lt;br /&gt;
|-&lt;br /&gt;
|7 ||rectangle&lt;br /&gt;
|-&lt;br /&gt;
|9 ||rounded rectangle&lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|+Chunk Types&lt;br /&gt;
!Prefix !!Suffix !!Description !!DataType !!Data Length &lt;br /&gt;
|-&lt;br /&gt;
|03 |-&lt;br /&gt;
| ||01 ||Number of Drawing Objects |-&lt;br /&gt;
|04 |-&lt;br /&gt;
| ||00 ||Drawing Object |-&lt;br /&gt;
| ||01 ||Drawing Object Type |-&lt;br /&gt;
| ||0A ||2D Point |-&lt;br /&gt;
| ||0B ||Polyline Length |-&lt;br /&gt;
| ||0C ||Polyline Point |-&lt;br /&gt;
| ||14 ||Sweep (radians) |-&lt;br /&gt;
| ||15 ||Ecentricity? |-&lt;br /&gt;
| ||16 ||(0=Open/1=Closed) |-&lt;br /&gt;
| ||40 ||Bbox (Upper Left) |-&lt;br /&gt;
| ||41 ||Bbox (Upper Right) |-&lt;br /&gt;
| ||42 ||Bbox (Lower Right) |-&lt;br /&gt;
| ||43 ||Bbox (Lower Left) |-&lt;br /&gt;
| ||44 ||Rotation |-&lt;br /&gt;
|05 |-&lt;br /&gt;
| ||21 ||Group |-&lt;br /&gt;
|07 |-&lt;br /&gt;
| ||02 ||Number of Line Styles? ||03 ||01 |-&lt;br /&gt;
| ||05 ||Dashed Line Pattern Cut Segment Length ||04 ||01  |-&lt;br /&gt;
| ||06 ||Dashed Line Pattern Spacing Length ||04 ||01 |-&lt;br /&gt;
|08 |-&lt;br /&gt;
| ||01 ||Name of cutter? ||05 ||var |-&lt;br /&gt;
| ||02 ||Name of cutter? ||05 ||var |-&lt;br /&gt;
| ||04 ||Text description of paper type ||05 ||var |-&lt;br /&gt;
| ||05 ||Paper size in 0.01mm units (Width, Height) ||03 ||02 |-&lt;br /&gt;
| ||08 ||Cutting Rotation Angle ||02 ||01 |-&lt;br /&gt;
| ||09 ||Offset Enabled ||01 ||01 |-&lt;br /&gt;
| ||0A ||Offset X ||03 ||01 |-&lt;br /&gt;
| ||0B ||Offset Y ||03 ||01 |-&lt;br /&gt;
| ||0C ||Weed Border Enabled ||01 ||01 |-&lt;br /&gt;
| ||0D ||Weed Border Distance ||03 ||01 |-&lt;br /&gt;
| ||0E ||Feed Media Enabled ||01 ||01 |-&lt;br /&gt;
| ||0F ||Feed Media Source (00-Start, 01-End) ||02 ||01 |-&lt;br /&gt;
| ||10 ||Feed Length ||03 ||01 |-&lt;br /&gt;
| ||11 ||Tiling Enabled ||01 ||01 |-&lt;br /&gt;
| ||14 ||Tiling Overlap ||03 ||01 |-&lt;br /&gt;
| ||1A ||Scaling ||02 ||01 |-&lt;br /&gt;
| ||1C ||Tiling Media Width ||03 ||01 |-&lt;br /&gt;
| ||1D ||Tiling Media Height ||03 ||01 |-&lt;br /&gt;
| ||21 ||Print Rotation Angle ||02 ||01 |-&lt;br /&gt;
| ||22 ||Print Cut Lines Enabled ||01 ||01 |-&lt;br /&gt;
| ||23 ||ID for print paper size? ||02 ||01 |-&lt;br /&gt;
| ||24 ||Paper Width in 0.1mm units ||03 ||01 |-&lt;br /&gt;
| ||25 ||Paper Height in 0.1mm units ||03 ||01 |-&lt;br /&gt;
| ||26 ||Paper Orientation (01=Portrait, 02=Landscape) ||02 ||01 |-&lt;br /&gt;
| ||&lt;br /&gt;
|0A |-&lt;br /&gt;
| ||00 ||Page Style? |-&lt;br /&gt;
|0B |-&lt;br /&gt;
| ||00 ||Line Style? |-&lt;br /&gt;
|0E |-&lt;br /&gt;
| ||00 ||Registration Mark Settings |-&lt;br /&gt;
| ||01 ||Show Registration Marks Enabled ||01 ||01 |-&lt;br /&gt;
| ||02 ||Registration Mode(00=2, 01=3, 02=4) ||02 ||01 |-&lt;br /&gt;
| ||03 ||Registration Pattern(01=Normal, 00=Inward) ||02 ||01 |-&lt;br /&gt;
| ||0A ||Registration Size |-&lt;br /&gt;
| ||0B ||Registration Thickness |-&lt;br /&gt;
| ||0C ||Origin X |-&lt;br /&gt;
| ||0D ||Origin Y |-&lt;br /&gt;
| ||0E ||Distance (1-2) |-&lt;br /&gt;
| ||0F ||Distance (2-3) |-&lt;br /&gt;
| ||10 ||Exceeds Maximum Recommended Length of 31.5&amp;quot; |-&lt;br /&gt;
|0F |-&lt;br /&gt;
| ||00 ||Grid Settings |-&lt;br /&gt;
| ||01 ||Show Grid ||01 ||01 |-&lt;br /&gt;
| ||02 ||Grid Type (00=Line, 01=Dot) ||02 ||01 |-&lt;br /&gt;
| ||03 ||Grid Spacing ||04 ||01 |-&lt;br /&gt;
| ||04 ||Grid Snap Enabled ||01 ||01 |-&lt;br /&gt;
|10 |-&lt;br /&gt;
| ||00 ||End of File |-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Mythgarr</name></author>
	</entry>
	<entry>
		<id>https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54711</id>
		<title>GSD</title>
		<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54711"/>
		<updated>2009-11-07T03:56:52Z</updated>

		<summary type="html">&lt;p&gt;Mythgarr: /* Chunks */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== The GSD binary file format ==&lt;br /&gt;
The file must begin with . This is a header to verify that it is the correct file type.&lt;br /&gt;
===Header===&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; align=&amp;quot;left&amp;quot;&lt;br /&gt;
|0x00-0x0f ||&amp;quot;GRAPHTEC PRT&amp;amp;CUT&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|0x10-0x17 ||0x06 00 00 00 01 00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x18-0x7f ||This entire block is padded with zeros. There may be some other information stored, but in every sample file examined the data is simply 0.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Body===&lt;br /&gt;
The body consists of a number of blocks of data. Every block starts with a length chunk indicating how many chunks are contained within that block. For more complex data such as the actual lines, polylines, and pen information chunks may contain entire blocks in a hierarchy.&lt;br /&gt;
&lt;br /&gt;
====Chunks====&lt;br /&gt;
The first two bytes of the chunk provide information on the purpos. The following 2 bytes indicate the type of data and the number of data elements of that type.&lt;br /&gt;
&lt;br /&gt;
While the data typically follows this pattern, in some cases (most notably distance measurements) the &amp;quot;datatype&amp;quot; may indicate a different length than is actually used.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
!Header !!Description&lt;br /&gt;
|-&lt;br /&gt;
|00 ||1 byte of data stored in length byte&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte little endian 8-bit integer. Typically used for boolean values.&lt;br /&gt;
|-&lt;br /&gt;
|02 ||2-byte little endian 16-bit integer&lt;br /&gt;
|-&lt;br /&gt;
|03 ||4-byte little endian 32-bit integer&lt;br /&gt;
|-&lt;br /&gt;
|04 ||8-byte little endian double precision float. Usually for storing a distance in mm units&lt;br /&gt;
|-&lt;br /&gt;
|05 ||ASCII data chunks&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Based on several files generated using version 5.10 of the QuicKutz ROBO Master software, the following information has been deduced. In some cases the data observed in a given chunk is provided where the purpose is unknown.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+Sample Block Data&lt;br /&gt;
!Prefix !!Type !!Length !!Data&lt;br /&gt;
|-&lt;br /&gt;
|0x0006 ||00 || ||06 - NOT the number of 0x??06 elements (only 1 present)&lt;br /&gt;
|-&lt;br /&gt;
|0x0106 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0007 ||00 || ||06 - Number of 0x??07 elements?&lt;br /&gt;
|-&lt;br /&gt;
|0x0107 ||01 ||01 ||02&lt;br /&gt;
|-&lt;br /&gt;
|0x0207 ||03 ||01 ||Unknown 32-bit value&lt;br /&gt;
|-&lt;br /&gt;
|0x0307 ||03 ||01 ||Unknown 32-bit value&lt;br /&gt;
|-&lt;br /&gt;
|0x0407 ||05 ||00 ||Unknown text field&lt;br /&gt;
|-&lt;br /&gt;
|0x0507 ||04 ||01 ||Dashed Line Pattern Cut Segment Length&lt;br /&gt;
|-&lt;br /&gt;
|0x0607 ||04 ||01 ||Dashed Line Pattern Spacing Length&lt;br /&gt;
|-&lt;br /&gt;
|0x0206 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000A ||00 || ||1D - Number of 0x??08 elements&lt;br /&gt;
|-&lt;br /&gt;
|0x0108 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot; - Optional&lt;br /&gt;
|-&lt;br /&gt;
|0x0208 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot; - Optional&lt;br /&gt;
|-&lt;br /&gt;
|0x0408 ||05 ||06 ||&amp;quot;Letter&amp;quot; - Text Paper Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0508 ||03 ||02 ||56 54 00 00   24 6D 00 00 - Paper size in 1/2540&amp;quot; (ie:0.01mm) units (Little Endian). This seems to have been chosen to allow precise storing of both fractional imperial and metric units. 4-byte width, 4-byte height&lt;br /&gt;
|-&lt;br /&gt;
|0x1B08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2708 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1A08 ||02 ||01 ||64 00 - Scaling&lt;br /&gt;
|-&lt;br /&gt;
|0x0908 ||01 ||01 ||00 - Offset Toggle&lt;br /&gt;
|-&lt;br /&gt;
|0x0A08 ||03 ||01 ||00 00 00 00 - Offset X&lt;br /&gt;
|-&lt;br /&gt;
|0x0B08 ||03 ||01 ||00 00 00 00 - Offset Y&lt;br /&gt;
|-&lt;br /&gt;
|0x0C08 ||01 ||01 ||00 - Weed Border Toggle&lt;br /&gt;
|-&lt;br /&gt;
|0x0D08 ||03 ||01 ||00 00 00 00 - Weed Border Distance&lt;br /&gt;
|-&lt;br /&gt;
|0x2208 ||01 ||01 ||00 - Print Cut Lines&lt;br /&gt;
|-&lt;br /&gt;
|0x2008 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2108 ||02 ||01 ||00 00 - Print Rotation Angle (typically 0 or 180)&lt;br /&gt;
|-&lt;br /&gt;
|0x2308 ||02 ||01 ||01 00 - ID for print paper size?&lt;br /&gt;
|-&lt;br /&gt;
|0x2408 ||03 ||01 ||6F 08 00 00 - Paper Width (1/254&amp;quot; or 0.1mm units)&lt;br /&gt;
|-&lt;br /&gt;
|0x2508 ||03 ||01 ||EA 0A 00 00 - Paper Height (1/254&amp;quot; or 0.1mm units)&lt;br /&gt;
|-&lt;br /&gt;
|0x2608 ||02 ||01 ||01 00 - Portrait(01) or Landscape(02)&lt;br /&gt;
|-&lt;br /&gt;
|0x0808 ||02 ||01 ||00 00 - Cutting Rotation Angle (typically a multiple of 90)&lt;br /&gt;
|-&lt;br /&gt;
|0x0E08 ||01 ||01 ||00 - Feed Media&lt;br /&gt;
|-&lt;br /&gt;
|0x0F08 ||01 ||01 ||01 - From the (00 - Start, 01 - End) Point&lt;br /&gt;
|-&lt;br /&gt;
|0x1008 ||03 ||01 ||00 00 00 00 - Feed Length&lt;br /&gt;
|-&lt;br /&gt;
|0x1E08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1108 ||01 ||01 ||00 - Toggle Tiling&lt;br /&gt;
|-&lt;br /&gt;
|0x1C08 ||03 ||01 ||00 00 00 00 - Tiling Media Width&lt;br /&gt;
|-&lt;br /&gt;
|0x1D08 ||03 ||01 ||00 00 00 00 - Tiling Media Height&lt;br /&gt;
|-&lt;br /&gt;
|0x1408 ||03 ||01 ||00 00 00 00 - Tiling Overlap&lt;br /&gt;
|-&lt;br /&gt;
|0x0306 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0009 ||00 || ||09&lt;br /&gt;
|-&lt;br /&gt;
|0x0109 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0209 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0309 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0409 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0406 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000A ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010A ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x020A ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000C ||00 || ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x010C ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0506 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000E ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010E ||01 ||01 ||01 - Show Registration Marks&lt;br /&gt;
|-&lt;br /&gt;
|0x020E ||02 ||01 ||01 00 - Registration Mark Mode (00 - 2, 01 - 3, 02 - 4)&lt;br /&gt;
|-&lt;br /&gt;
|0x030E ||02 ||01 ||01 00 - Registration Mark Pattern (01 - Normal, 00 - Pointing In)&lt;br /&gt;
|-&lt;br /&gt;
|0x0A0E ||04 ||01 ||CD CC CC CC CC 0C 33 40 - Registration Mark Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0B0E ||02 ||01 ||A8 C6 4B 37 89 41 E0 3F - Registration Mark Thickness&lt;br /&gt;
|-&lt;br /&gt;
|0x0C0E ||03 ||01 ||66 66 66 66 66 66 29 40 - Origin X&lt;br /&gt;
|-&lt;br /&gt;
|0x0D0E ||03 ||01 ||52 B8 1E 85 EB 51 24 40 - Origin Y&lt;br /&gt;
|-&lt;br /&gt;
|0x0E0E ||03 ||01 ||01 00 00 00 00 D0 67 40 - Distance 1-2&lt;br /&gt;
|-&lt;br /&gt;
|0x0F0E ||03 ||01 ||48 E1 7A 14 AE 87 6E 40 - Distance 1-3&lt;br /&gt;
|-&lt;br /&gt;
|0x110E ||01 ||01 ||00 - Exceeds Maximum Recommended Length of 31.5 inch (document)&lt;br /&gt;
|-&lt;br /&gt;
|0x0606 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000F ||00 || ||04&lt;br /&gt;
|-&lt;br /&gt;
|0x010F ||01 ||01 ||00 - Show Grid&lt;br /&gt;
|-&lt;br /&gt;
|0x020F ||02 ||01 ||00 00 - Grid Type (00 - Line, 01 - Dot)&lt;br /&gt;
|-&lt;br /&gt;
|0x030F ||04 ||01 ||66 66 66 66 66 66 29 40 - Grid Spacing&lt;br /&gt;
|-&lt;br /&gt;
|0x040F ||01 ||01 ||01 - Snap To Grid&lt;br /&gt;
|-&lt;br /&gt;
|0x0010 ||03 ||01 ||00 00 00 00 - End of file?&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Mythgarr</name></author>
	</entry>
	<entry>
		<id>https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54673</id>
		<title>GSD</title>
		<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54673"/>
		<updated>2009-11-04T22:24:51Z</updated>

		<summary type="html">&lt;p&gt;Mythgarr: /* Chunks */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== The GSD binary file format ==&lt;br /&gt;
The file must begin with . This is a header to verify that it is the correct file type.&lt;br /&gt;
===Header===&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; align=&amp;quot;left&amp;quot;&lt;br /&gt;
|0x00-0x0f ||&amp;quot;GRAPHTEC PRT&amp;amp;CUT&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|0x10-0x17 ||0x06 00 00 00 01 00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x18-0x7f ||This entire block is padded with zeros. There may be some other information stored, but in every sample file examined the data is simply 0.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Body===&lt;br /&gt;
The body consists of a number of blocks of data. Every block starts with a length chunk indicating how many chunks are contained within that block. For more complex data such as the actual lines, polylines, and pen information chunks may contain entire blocks in a hierarchy.&lt;br /&gt;
&lt;br /&gt;
====Chunks====&lt;br /&gt;
The first two bytes of the chunk provide information on the purpos. The following 2 bytes indicate the type of data and the number of data elements of that type.&lt;br /&gt;
&lt;br /&gt;
While the data typically follows this pattern, in some cases (most notably distance measurements) the &amp;quot;datatype&amp;quot; may indicate a different length than is actually used.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
!Header !!Description&lt;br /&gt;
|-&lt;br /&gt;
|00 ||1 byte of data stored in length byte&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte little endian 8-bit integer. Typically used for boolean values.&lt;br /&gt;
|-&lt;br /&gt;
|02 ||2-byte little endian 16-bit integer&lt;br /&gt;
|-&lt;br /&gt;
|03 ||4-byte little endian 32-bit integer&lt;br /&gt;
|-&lt;br /&gt;
|04 ||8-byte little endian double precision float. Usually for storing a distance in mm units&lt;br /&gt;
|-&lt;br /&gt;
|05 ||ASCII data chunks&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Based on several files generated using version 5.10 of the QuicKutz ROBO Master software, the following information has been deduced. In some cases the data observed in a given chunk is provided where the purpose is unknown.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+Sample Block Data&lt;br /&gt;
!Prefix !!Type !!Length !!Data&lt;br /&gt;
|-&lt;br /&gt;
|0x0006 ||00 || ||06 - NOT the number of 0x??06 elements (only 1 present)&lt;br /&gt;
|-&lt;br /&gt;
|0x0106 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0007 ||00 || ||06 - Number of 0x??07 elements?&lt;br /&gt;
|-&lt;br /&gt;
|0x0107 ||01 ||01 ||02&lt;br /&gt;
|-&lt;br /&gt;
|0x0207 ||03 ||01 ||Unknown 32-bit value&lt;br /&gt;
|-&lt;br /&gt;
|0x0307 ||03 ||01 ||Unknown 32-bit value&lt;br /&gt;
|-&lt;br /&gt;
|0x0407 ||05 ||00 ||Unknown text field&lt;br /&gt;
|-&lt;br /&gt;
|0x0507 ||04 ||01 ||Dashed Line Pattern Cut Segment Length&lt;br /&gt;
|-&lt;br /&gt;
|0x0607 ||04 ||01 ||Dashed Line Pattern Spacing Length&lt;br /&gt;
|-&lt;br /&gt;
|0x0206 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000A ||00 || ||1D - Number of 0x??08 elements&lt;br /&gt;
|-&lt;br /&gt;
|0x0108 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot; - Optional&lt;br /&gt;
|-&lt;br /&gt;
|0x0208 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot; - Optional&lt;br /&gt;
|-&lt;br /&gt;
|0x0408 ||05 ||06 ||&amp;quot;Letter&amp;quot; - Text Paper Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0508 ||03 ||02 ||56 54 00 00   24 6D 00 00 - Paper size in 1/2540&amp;quot; (ie:0.01mm) units (Little Endian). This seems to have been chosen to allow precise storing of both fractional imperial and metric units. 4-byte width, 4-byte height&lt;br /&gt;
|-&lt;br /&gt;
|0x1B08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2708 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1A08 ||02 ||01 ||64 00 - Scaling&lt;br /&gt;
|-&lt;br /&gt;
|0x0908 ||01 ||01 ||00 - Offset Toggle&lt;br /&gt;
|-&lt;br /&gt;
|0x0A08 ||03 ||01 ||00 00 00 00 - Offset X&lt;br /&gt;
|-&lt;br /&gt;
|0x0B08 ||03 ||01 ||00 00 00 00 - Offset Y&lt;br /&gt;
|-&lt;br /&gt;
|0x0C08 ||01 ||01 ||00 - Weed Border Toggle&lt;br /&gt;
|-&lt;br /&gt;
|0x0D08 ||03 ||01 ||00 00 00 00 - Weed Border Distance&lt;br /&gt;
|-&lt;br /&gt;
|0x2208 ||01 ||01 ||00 - Print Cut Lines&lt;br /&gt;
|-&lt;br /&gt;
|0x2008 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2108 ||02 ||01 ||00 00 - Print Rotation Angle (typically 0 or 180)&lt;br /&gt;
|-&lt;br /&gt;
|0x2308 ||02 ||01 ||01 00 - ID for print paper size?&lt;br /&gt;
|-&lt;br /&gt;
|0x2408 ||03 ||01 ||6F 08 00 00 - Paper Width (1/254&amp;quot; or 0.1mm units)&lt;br /&gt;
|-&lt;br /&gt;
|0x2508 ||03 ||01 ||EA 0A 00 00 - Paper Height (1/254&amp;quot; or 0.1mm units)&lt;br /&gt;
|-&lt;br /&gt;
|0x2608 ||02 ||01 ||01 00 - Portrait(01) or Landscape(02)&lt;br /&gt;
|-&lt;br /&gt;
|0x0808 ||02 ||01 ||00 00 - Cutting Rotation Angle (typically a multiple of 90)&lt;br /&gt;
|-&lt;br /&gt;
|0x0E08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1008 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1E08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1108 ||01 ||01 ||00 - Toggle Tiling&lt;br /&gt;
|-&lt;br /&gt;
|0x1C08 ||03 ||01 ||00 00 00 00 - Tiling Media Width&lt;br /&gt;
|-&lt;br /&gt;
|0x1D08 ||03 ||01 ||00 00 00 00 - Tiling Media Height&lt;br /&gt;
|-&lt;br /&gt;
|0x1408 ||03 ||01 ||00 00 00 00 - Tiling Overlap&lt;br /&gt;
|-&lt;br /&gt;
|0x0306 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0009 ||00 || ||09&lt;br /&gt;
|-&lt;br /&gt;
|0x0109 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0209 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0309 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0409 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0406 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000A ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010A ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x020A ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000C ||00 || ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x010C ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0506 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000E ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010E ||01 ||01 ||01 - Show Registration Marks&lt;br /&gt;
|-&lt;br /&gt;
|0x020E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0A0E ||04 ||01 ||CD CC CC CC CC 0C 33 40 - Registration Mark Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0B0E ||02 ||01 ||A8 C6 4B 37 89 41 E0 3F - Registration Mark Thickness&lt;br /&gt;
|-&lt;br /&gt;
|0x0C0E ||03 ||01 ||66 66 66 66 66 66 29 40 - Origin X&lt;br /&gt;
|-&lt;br /&gt;
|0x0D0E ||03 ||01 ||52 B8 1E 85 EB 51 24 40 - Origin Y&lt;br /&gt;
|-&lt;br /&gt;
|0x0E0E ||03 ||01 ||01 00 00 00 00 D0 67 40 - Distance 1-2&lt;br /&gt;
|-&lt;br /&gt;
|0x0F0E ||03 ||01 ||48 E1 7A 14 AE 87 6E 40 - Distance 1-3&lt;br /&gt;
|-&lt;br /&gt;
|0x110E ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0606 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000F ||00 || ||04&lt;br /&gt;
|-&lt;br /&gt;
|0x010F ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x020F ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030F ||04 ||01 ||66 66 66 66 66 66 29 40 - Grid Spacing&lt;br /&gt;
|-&lt;br /&gt;
|0x040F ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x0010 ||03 ||01 ||00 00 00 00 - End of file?&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Mythgarr</name></author>
	</entry>
	<entry>
		<id>https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54671</id>
		<title>GSD</title>
		<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54671"/>
		<updated>2009-11-04T22:24:18Z</updated>

		<summary type="html">&lt;p&gt;Mythgarr: /* Header */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== The GSD binary file format ==&lt;br /&gt;
The file must begin with . This is a header to verify that it is the correct file type.&lt;br /&gt;
===Header===&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; align=&amp;quot;left&amp;quot;&lt;br /&gt;
|0x00-0x0f ||&amp;quot;GRAPHTEC PRT&amp;amp;CUT&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|0x10-0x17 ||0x06 00 00 00 01 00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x18-0x7f ||This entire block is padded with zeros. There may be some other information stored, but in every sample file examined the data is simply 0.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Body===&lt;br /&gt;
The body consists of a number of blocks of data. Every block starts with a length chunk indicating how many chunks are contained within that block. For more complex data such as the actual lines, polylines, and pen information chunks may contain entire blocks in a hierarchy.&lt;br /&gt;
&lt;br /&gt;
====Chunks====&lt;br /&gt;
The first two bytes of the chunk provide information on the purpos. The following 2 bytes indicate the type of data and the number of data elements of that type.&lt;br /&gt;
&lt;br /&gt;
While the data typically follows this pattern, in some cases (most notably distance measurements) the &amp;quot;datatype&amp;quot; may indicate a different length than is actually used.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
!Header !!Description&lt;br /&gt;
|-&lt;br /&gt;
|00 ||1 byte of data stored in length byte&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte little endian 8-bit integer. Typically used for boolean values.&lt;br /&gt;
|-&lt;br /&gt;
|02 ||2-byte little endian 16-bit integer&lt;br /&gt;
|-&lt;br /&gt;
|03 ||4-byte little endian 32-bit integer&lt;br /&gt;
|-&lt;br /&gt;
|04 ||8-byte little endian double precision float. Usually for storing a distance in mm units&lt;br /&gt;
|-&lt;br /&gt;
|05 ||ASCII data chunks&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Based on several files generated using version 5.10 of the QuicKutz ROBO Master software, the following information has been deduced. In some cases the data observed in a given chunk is provided where the purpose is unknown.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+Sample Block Data&lt;br /&gt;
!Prefix !!Type !!Length !!Data&lt;br /&gt;
|-&lt;br /&gt;
|0x0006 ||00 || ||06 - NOT the number of 0x??06 elements (only 1 present)&lt;br /&gt;
|-&lt;br /&gt;
|0x0106 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0007 ||00 || ||06 - Number of 0x??07 elements?&lt;br /&gt;
|-&lt;br /&gt;
|0x0107 ||01 ||01 ||02&lt;br /&gt;
|-&lt;br /&gt;
|0x0207 ||03 ||01 ||Unknown 32-bit value&lt;br /&gt;
|-&lt;br /&gt;
|0x0307 ||03 ||01 ||Unknown 32-bit value&lt;br /&gt;
|-&lt;br /&gt;
|0x0407 ||05 ||00 ||Unknown text field&lt;br /&gt;
|-&lt;br /&gt;
|0x0507 ||04 ||01 ||Dashed Line Pattern Cut Segment Length&lt;br /&gt;
|-&lt;br /&gt;
|0x0607 ||04 ||01 ||Dashed Line Pattern Spacing Length&lt;br /&gt;
|-&lt;br /&gt;
|0x0206 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000A ||00 || ||1D - Number of 0x??08 elements&lt;br /&gt;
|-&lt;br /&gt;
|0x0108 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot; - Optional&lt;br /&gt;
|-&lt;br /&gt;
|0x0208 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot; - Optional&lt;br /&gt;
|-&lt;br /&gt;
|0x0408 ||05 ||06 ||&amp;quot;Letter&amp;quot; - Text Paper Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0508 ||03 ||02 ||56 54 00 00   24 6D 00 00 - Paper size in 1/2540&amp;quot; (ie:0.01mm) units (Little Endian). This seems to have been chosen to allow precise storing of both fractional imperial and metric units. 4-byte width, 4-byte height&lt;br /&gt;
|-&lt;br /&gt;
|0x1B08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2708 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1A08 ||02 ||01 ||64 00 - Scaling&lt;br /&gt;
|-&lt;br /&gt;
|0x0908 ||01 ||01 ||00 - Offset Toggle&lt;br /&gt;
|-&lt;br /&gt;
|0x0A08 ||03 ||01 ||00 00 00 00 - Offset X&lt;br /&gt;
|-&lt;br /&gt;
|0x0B08 ||03 ||01 ||00 00 00 00 - Offset Y&lt;br /&gt;
|-&lt;br /&gt;
|0x0C08 ||01 ||01 ||00 - Weed Border Toggle&lt;br /&gt;
|-&lt;br /&gt;
|0x0D08 ||03 ||01 ||00 00 00 00 - Weed Border Distance&lt;br /&gt;
|-&lt;br /&gt;
|0x2208 ||01 ||01 ||00 - Print Cut Lines&lt;br /&gt;
|-&lt;br /&gt;
|0x2008 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2108 ||02 ||01 ||00 00 - Print Rotation Angle (typically 0 or 180)&lt;br /&gt;
|-&lt;br /&gt;
|0x2308 ||02 ||01 ||01 00 - ID for print paper size?&lt;br /&gt;
|-&lt;br /&gt;
|0x2408 ||03 ||01 ||6F 08 00 00 - Paper Width (1/254&amp;quot; or 0.1mm units)&lt;br /&gt;
|-&lt;br /&gt;
|0x2508 ||03 ||01 ||EA 0A 00 00 - Paper Height (1/254&amp;quot; or 0.1mm units)&lt;br /&gt;
|-&lt;br /&gt;
|0x2608 ||02 ||01 ||01 00 - Portrait(01) or Landscape(02)&lt;br /&gt;
|-&lt;br /&gt;
|0x0808 ||02 ||01 ||00 00 - Cutting Rotation Angle (typically a multiple of 90)&lt;br /&gt;
|-&lt;br /&gt;
|0x0E08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1008 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1E08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1108 ||01 ||01 ||00 - Toggle Tiling&lt;br /&gt;
|-&lt;br /&gt;
|0x1C08 ||03 ||01 ||00 00 00 00 - Tiling Media Width&lt;br /&gt;
|-&lt;br /&gt;
|0x1D08 ||03 ||01 ||00 00 00 00 - Tiling Media Height&lt;br /&gt;
|-&lt;br /&gt;
|0x1408 ||03 ||01 ||00 00 00 00 - Tiling Overlap&lt;br /&gt;
|-&lt;br /&gt;
|0x0306 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0009 ||00 || ||09&lt;br /&gt;
|-&lt;br /&gt;
|0x0109 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0209 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0309 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0409 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0406 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000A ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010A ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x020A ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000C ||00 || ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x010C ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0506 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000E ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010E ||01 ||01 ||01 - Show Registration Marks&lt;br /&gt;
|-&lt;br /&gt;
|0x020E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0A0E ||04 ||01 ||CD CC CC CC CC 0C 33 40 - Registration Mark Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0B0E ||02 ||01 ||A8 C6 4B 37 89 41 E0 3F - Registration Mark Thickness&lt;br /&gt;
|-&lt;br /&gt;
|0x0C0E ||03 ||01 ||66 66 66 66 66 66 29 40 - Origin X&lt;br /&gt;
|-&lt;br /&gt;
|0x0D0E ||03 ||01 ||52 B8 1E 85 EB 51 24 40 - Origin Y&lt;br /&gt;
|-&lt;br /&gt;
|0x0E0E ||03 ||01 ||01 00 00 00 00 D0 67 40 - Distance 1-2&lt;br /&gt;
|-&lt;br /&gt;
|0x0F0E ||03 ||01 ||48 E1 7A 14 AE 87 6E 40 - Distance 1-3&lt;br /&gt;
|-&lt;br /&gt;
|0x110E ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0606 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000F ||00 || ||04&lt;br /&gt;
|-&lt;br /&gt;
|0x010F ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x020F ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030F ||04 ||01 ||66 66 66 66 66 66 29 40 - Grid Spacing&lt;br /&gt;
|-&lt;br /&gt;
|0x040F ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x0010 ||03 ||01 ||00 00 00 00 - End of file?&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Mythgarr</name></author>
	</entry>
	<entry>
		<id>https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54669</id>
		<title>GSD</title>
		<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54669"/>
		<updated>2009-11-04T22:19:44Z</updated>

		<summary type="html">&lt;p&gt;Mythgarr: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== The GSD binary file format ==&lt;br /&gt;
The file must begin with . This is a header to verify that it is the correct file type.&lt;br /&gt;
===Header===&lt;br /&gt;
0x00-0x0f: &amp;quot;GRAPHTEC PRT&amp;amp;CUT&amp;quot;&lt;br /&gt;
0x10-0x17: 0x06 00 00 00 01 00 00 00 00&lt;br /&gt;
0x18-0x7f: This entire block is padded with zeros. There may be some other information stored, but in every sample file examined the data is simply 0.&lt;br /&gt;
&lt;br /&gt;
===Body===&lt;br /&gt;
The body consists of a number of blocks of data. Every block starts with a length chunk indicating how many chunks are contained within that block. For more complex data such as the actual lines, polylines, and pen information chunks may contain entire blocks in a hierarchy.&lt;br /&gt;
&lt;br /&gt;
====Chunks====&lt;br /&gt;
The first two bytes of the chunk provide information on the purpos. The following 2 bytes indicate the type of data and the number of data elements of that type.&lt;br /&gt;
&lt;br /&gt;
While the data typically follows this pattern, in some cases (most notably distance measurements) the &amp;quot;datatype&amp;quot; may indicate a different length than is actually used.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
!Header !!Description&lt;br /&gt;
|-&lt;br /&gt;
|00 ||1 byte of data stored in length byte&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte little endian 8-bit integer. Typically used for boolean values.&lt;br /&gt;
|-&lt;br /&gt;
|02 ||2-byte little endian 16-bit integer&lt;br /&gt;
|-&lt;br /&gt;
|03 ||4-byte little endian 32-bit integer&lt;br /&gt;
|-&lt;br /&gt;
|04 ||8-byte little endian double precision float. Usually for storing a distance in mm units&lt;br /&gt;
|-&lt;br /&gt;
|05 ||ASCII data chunks&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Based on several files generated using version 5.10 of the QuicKutz ROBO Master software, the following information has been deduced. In some cases the data observed in a given chunk is provided where the purpose is unknown.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+Sample Block Data&lt;br /&gt;
!Prefix !!Type !!Length !!Data&lt;br /&gt;
|-&lt;br /&gt;
|0x0006 ||00 || ||06 - NOT the number of 0x??06 elements (only 1 present)&lt;br /&gt;
|-&lt;br /&gt;
|0x0106 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0007 ||00 || ||06 - Number of 0x??07 elements?&lt;br /&gt;
|-&lt;br /&gt;
|0x0107 ||01 ||01 ||02&lt;br /&gt;
|-&lt;br /&gt;
|0x0207 ||03 ||01 ||Unknown 32-bit value&lt;br /&gt;
|-&lt;br /&gt;
|0x0307 ||03 ||01 ||Unknown 32-bit value&lt;br /&gt;
|-&lt;br /&gt;
|0x0407 ||05 ||00 ||Unknown text field&lt;br /&gt;
|-&lt;br /&gt;
|0x0507 ||04 ||01 ||Dashed Line Pattern Cut Segment Length&lt;br /&gt;
|-&lt;br /&gt;
|0x0607 ||04 ||01 ||Dashed Line Pattern Spacing Length&lt;br /&gt;
|-&lt;br /&gt;
|0x0206 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000A ||00 || ||1D - Number of 0x??08 elements&lt;br /&gt;
|-&lt;br /&gt;
|0x0108 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot; - Optional&lt;br /&gt;
|-&lt;br /&gt;
|0x0208 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot; - Optional&lt;br /&gt;
|-&lt;br /&gt;
|0x0408 ||05 ||06 ||&amp;quot;Letter&amp;quot; - Text Paper Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0508 ||03 ||02 ||56 54 00 00   24 6D 00 00 - Paper size in 1/2540&amp;quot; (ie:0.01mm) units (Little Endian). This seems to have been chosen to allow precise storing of both fractional imperial and metric units. 4-byte width, 4-byte height&lt;br /&gt;
|-&lt;br /&gt;
|0x1B08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2708 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1A08 ||02 ||01 ||64 00 - Scaling&lt;br /&gt;
|-&lt;br /&gt;
|0x0908 ||01 ||01 ||00 - Offset Toggle&lt;br /&gt;
|-&lt;br /&gt;
|0x0A08 ||03 ||01 ||00 00 00 00 - Offset X&lt;br /&gt;
|-&lt;br /&gt;
|0x0B08 ||03 ||01 ||00 00 00 00 - Offset Y&lt;br /&gt;
|-&lt;br /&gt;
|0x0C08 ||01 ||01 ||00 - Weed Border Toggle&lt;br /&gt;
|-&lt;br /&gt;
|0x0D08 ||03 ||01 ||00 00 00 00 - Weed Border Distance&lt;br /&gt;
|-&lt;br /&gt;
|0x2208 ||01 ||01 ||00 - Print Cut Lines&lt;br /&gt;
|-&lt;br /&gt;
|0x2008 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2108 ||02 ||01 ||00 00 - Print Rotation Angle (typically 0 or 180)&lt;br /&gt;
|-&lt;br /&gt;
|0x2308 ||02 ||01 ||01 00 - ID for print paper size?&lt;br /&gt;
|-&lt;br /&gt;
|0x2408 ||03 ||01 ||6F 08 00 00 - Paper Width (1/254&amp;quot; or 0.1mm units)&lt;br /&gt;
|-&lt;br /&gt;
|0x2508 ||03 ||01 ||EA 0A 00 00 - Paper Height (1/254&amp;quot; or 0.1mm units)&lt;br /&gt;
|-&lt;br /&gt;
|0x2608 ||02 ||01 ||01 00 - Portrait(01) or Landscape(02)&lt;br /&gt;
|-&lt;br /&gt;
|0x0808 ||02 ||01 ||00 00 - Cutting Rotation Angle (typically a multiple of 90)&lt;br /&gt;
|-&lt;br /&gt;
|0x0E08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1008 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1E08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1108 ||01 ||01 ||00 - Toggle Tiling&lt;br /&gt;
|-&lt;br /&gt;
|0x1C08 ||03 ||01 ||00 00 00 00 - Tiling Media Width&lt;br /&gt;
|-&lt;br /&gt;
|0x1D08 ||03 ||01 ||00 00 00 00 - Tiling Media Height&lt;br /&gt;
|-&lt;br /&gt;
|0x1408 ||03 ||01 ||00 00 00 00 - Tiling Overlap&lt;br /&gt;
|-&lt;br /&gt;
|0x0306 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0009 ||00 || ||09&lt;br /&gt;
|-&lt;br /&gt;
|0x0109 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0209 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0309 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0409 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0406 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000A ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010A ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x020A ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000C ||00 || ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x010C ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0506 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000E ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010E ||01 ||01 ||01 - Show Registration Marks&lt;br /&gt;
|-&lt;br /&gt;
|0x020E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0A0E ||04 ||01 ||CD CC CC CC CC 0C 33 40 - Registration Mark Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0B0E ||02 ||01 ||A8 C6 4B 37 89 41 E0 3F - Registration Mark Thickness&lt;br /&gt;
|-&lt;br /&gt;
|0x0C0E ||03 ||01 ||66 66 66 66 66 66 29 40 - Origin X&lt;br /&gt;
|-&lt;br /&gt;
|0x0D0E ||03 ||01 ||52 B8 1E 85 EB 51 24 40 - Origin Y&lt;br /&gt;
|-&lt;br /&gt;
|0x0E0E ||03 ||01 ||01 00 00 00 00 D0 67 40 - Distance 1-2&lt;br /&gt;
|-&lt;br /&gt;
|0x0F0E ||03 ||01 ||48 E1 7A 14 AE 87 6E 40 - Distance 1-3&lt;br /&gt;
|-&lt;br /&gt;
|0x110E ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0606 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000F ||00 || ||04&lt;br /&gt;
|-&lt;br /&gt;
|0x010F ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x020F ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030F ||04 ||01 ||66 66 66 66 66 66 29 40 - Grid Spacing&lt;br /&gt;
|-&lt;br /&gt;
|0x040F ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x0010 ||03 ||01 ||00 00 00 00 - End of file?&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Mythgarr</name></author>
	</entry>
	<entry>
		<id>https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54667</id>
		<title>GSD</title>
		<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54667"/>
		<updated>2009-11-04T21:04:49Z</updated>

		<summary type="html">&lt;p&gt;Mythgarr: /* Footer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== The GSD binary file format ==&lt;br /&gt;
This is my first try to reverse engineer a binary file format. If you like, you could add your thoughts!&lt;br /&gt;
By comparison between different files with the extention .gsd i try to see what data is stored where. It has some parts in ansi-text and the most parts are just binary numbers of different length. As identification, the file starts with the text &amp;quot;GRAPHTEC PRT&amp;amp;CUT&amp;quot;. The next line at offset 0000:0010 starts with binary numbers &amp;quot;03 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00&amp;quot; (I don't know if they make any sense there).&lt;br /&gt;
&lt;br /&gt;
* From offset 0000:0080 to offset 0000:00cf is unknown binary data.&lt;br /&gt;
* From offset 0000:00d3 to offset 0000:00de is binary data, which is exactly repeated from offset 0000:00fb to 0000:0107. It starts with the hex numbers 40 6a 40 which seems to be a marker for file seek. It ends with 40 00 04. Inbetween those bytes is data which funktion is still unknown.&lt;br /&gt;
&lt;br /&gt;
* Every object can have a different color in the 8bit-RGB-color-range. E.g. RGB(254,254,254), but most probably it is only black. RGB(0,0,0).&lt;br /&gt;
&lt;br /&gt;
* The size of the canvas is written in pure ansi text. The value could be &amp;quot;ISO A4&amp;quot; or &amp;quot;Letter&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* The hex value 40 seems to be the delimiter between chunks of data of different length. Hex value ff ff ff semms to be a start delimiter and ff ff ff ff semms to be the end delimiter.&lt;br /&gt;
&lt;br /&gt;
=== Footer ===&lt;br /&gt;
The footer is composed of blocks of data. Each block begins with a 2-byte code indicating the type of data, followed by 1 byte code indicating the datatype and a second 1 byte code indicating how many elements of data are stored.&lt;br /&gt;
====Header====&lt;br /&gt;
54 bytes - unknown data&lt;br /&gt;
&lt;br /&gt;
====Blocks====&lt;br /&gt;
The first two bytes of the block provide information on the purpose of the block. The following 2 bytes indicate the type of data and the number of data elements of that type.&lt;br /&gt;
&lt;br /&gt;
While the data typically follows this pattern, in some cases (most notably distance measurements) the &amp;quot;datatype&amp;quot; indicates the incorrect length.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
!Header !!Description&lt;br /&gt;
|-&lt;br /&gt;
|00 ||1 byte of data stored in length byte&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|02 ||2-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|03 ||4-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|04 ||8-byte little endian IEEE-754 float. Usually for storing a distance in mm units&lt;br /&gt;
|-&lt;br /&gt;
|05 ||ASCII data chunks&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+Sample Block Data&lt;br /&gt;
!Prefix !!Type !!Length !!Data&lt;br /&gt;
|-&lt;br /&gt;
|0x0006 ||00 || ||06&lt;br /&gt;
|-&lt;br /&gt;
|0x0106 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0007 ||00 || ||06 - Number of 0x??07 elements?&lt;br /&gt;
|-&lt;br /&gt;
|0x0107 ||01 ||01 ||02&lt;br /&gt;
|-&lt;br /&gt;
|0x0207 ||03 ||01 ||Unknown 32-bit value&lt;br /&gt;
|-&lt;br /&gt;
|0x0307 ||03 ||01 ||Unknown 32-bit value&lt;br /&gt;
|-&lt;br /&gt;
|0x0407 ||05 ||00 ||Unknown text field&lt;br /&gt;
|-&lt;br /&gt;
|0x0507 ||04 ||01 ||Dashed Line Pattern Cut Segment Length&lt;br /&gt;
|-&lt;br /&gt;
|0x0607 ||04 ||01 ||Dashed Line Pattern Spacing Length&lt;br /&gt;
|-&lt;br /&gt;
|0x0206 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000A ||00 || ||1D - Number of 0x??08 elements?&lt;br /&gt;
|-&lt;br /&gt;
|0x0108 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot; - Optional&lt;br /&gt;
|-&lt;br /&gt;
|0x0208 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot; - Optional&lt;br /&gt;
|-&lt;br /&gt;
|0x0408 ||05 ||06 ||&amp;quot;Letter&amp;quot; - Text Paper Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0508 ||03 ||02 ||56 54 00 00   24 6D 00 00 - Paper size in 1/2540&amp;quot; (ie:0.01mm) units (Little Endian). This seems to have been chosen to allow precise storing of both fractional imperial and metric units. 4-byte width, 4-byte height&lt;br /&gt;
|-&lt;br /&gt;
|0x1B08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2708 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1A08 ||02 ||01 ||64 00 - Scaling&lt;br /&gt;
|-&lt;br /&gt;
|0x0908 ||01 ||01 ||00 - Offset Toggle&lt;br /&gt;
|-&lt;br /&gt;
|0x0A08 ||03 ||01 ||00 00 00 00 - Offset X&lt;br /&gt;
|-&lt;br /&gt;
|0x0B08 ||03 ||01 ||00 00 00 00 - Offset Y&lt;br /&gt;
|-&lt;br /&gt;
|0x0C08 ||01 ||01 ||00 - Weed Border Toggle&lt;br /&gt;
|-&lt;br /&gt;
|0x0D08 ||03 ||01 ||00 00 00 00 - Weed Border Distance&lt;br /&gt;
|-&lt;br /&gt;
|0x2208 ||01 ||01 ||00 - Print Cut Lines&lt;br /&gt;
|-&lt;br /&gt;
|0x2008 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2108 ||02 ||01 ||00 00 - Print Rotation Angle (typically 0 or 180)&lt;br /&gt;
|-&lt;br /&gt;
|0x2308 ||02 ||01 ||01 00 - ID for print paper size?&lt;br /&gt;
|-&lt;br /&gt;
|0x2408 ||03 ||01 ||6F 08 00 00 - Paper Width (1/254&amp;quot; or 0.1mm units)&lt;br /&gt;
|-&lt;br /&gt;
|0x2508 ||03 ||01 ||EA 0A 00 00 - Paper Height (1/254&amp;quot; or 0.1mm units)&lt;br /&gt;
|-&lt;br /&gt;
|0x2608 ||02 ||01 ||01 00 - Portrait(01) or Landscape(02)&lt;br /&gt;
|-&lt;br /&gt;
|0x0808 ||02 ||01 ||00 00 - Cutting Rotation Angle (typically a multiple of 90)&lt;br /&gt;
|-&lt;br /&gt;
|0x0E08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1008 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1E08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1108 ||01 ||01 ||00 - Toggle Tiling&lt;br /&gt;
|-&lt;br /&gt;
|0x1C08 ||03 ||01 ||00 00 00 00 - Tiling Media Width&lt;br /&gt;
|-&lt;br /&gt;
|0x1D08 ||03 ||01 ||00 00 00 00 - Tiling Media Height&lt;br /&gt;
|-&lt;br /&gt;
|0x1408 ||03 ||01 ||00 00 00 00 - Tiling Overlap&lt;br /&gt;
|-&lt;br /&gt;
|0x0306 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0009 ||00 || ||09&lt;br /&gt;
|-&lt;br /&gt;
|0x0109 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0209 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0309 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0409 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0406 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000A ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010A ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x020A ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000C ||00 || ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x010C ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0506 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000E ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010E ||01 ||01 ||01 - Show Registration Marks&lt;br /&gt;
|-&lt;br /&gt;
|0x020E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0A0E ||04 ||01 ||CD CC CC CC CC 0C 33 40 - Registration Mark Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0B0E ||02 ||01 ||A8 C6 4B 37 89 41 E0 3F - Registration Mark Thickness&lt;br /&gt;
|-&lt;br /&gt;
|0x0C0E ||03 ||01 ||66 66 66 66 66 66 29 40 - Origin X&lt;br /&gt;
|-&lt;br /&gt;
|0x0D0E ||03 ||01 ||52 B8 1E 85 EB 51 24 40 - Origin Y&lt;br /&gt;
|-&lt;br /&gt;
|0x0E0E ||03 ||01 ||01 00 00 00 00 D0 67 40 - Distance 1-2&lt;br /&gt;
|-&lt;br /&gt;
|0x0F0E ||03 ||01 ||48 E1 7A 14 AE 87 6E 40 - Distance 1-3&lt;br /&gt;
|-&lt;br /&gt;
|0x110E ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0606 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000F ||00 || ||04&lt;br /&gt;
|-&lt;br /&gt;
|0x010F ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x020F ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030F ||04 ||01 ||66 66 66 66 66 66 29 40 - Grid Spacing&lt;br /&gt;
|-&lt;br /&gt;
|0x040F ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x0010 ||03 ||01 ||00 00 00 00 - End of file?&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Mythgarr</name></author>
	</entry>
	<entry>
		<id>https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54665</id>
		<title>GSD</title>
		<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54665"/>
		<updated>2009-11-04T19:34:54Z</updated>

		<summary type="html">&lt;p&gt;Mythgarr: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== The GSD binary file format ==&lt;br /&gt;
This is my first try to reverse engineer a binary file format. If you like, you could add your thoughts!&lt;br /&gt;
By comparison between different files with the extention .gsd i try to see what data is stored where. It has some parts in ansi-text and the most parts are just binary numbers of different length. As identification, the file starts with the text &amp;quot;GRAPHTEC PRT&amp;amp;CUT&amp;quot;. The next line at offset 0000:0010 starts with binary numbers &amp;quot;03 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00&amp;quot; (I don't know if they make any sense there).&lt;br /&gt;
&lt;br /&gt;
* From offset 0000:0080 to offset 0000:00cf is unknown binary data.&lt;br /&gt;
* From offset 0000:00d3 to offset 0000:00de is binary data, which is exactly repeated from offset 0000:00fb to 0000:0107. It starts with the hex numbers 40 6a 40 which seems to be a marker for file seek. It ends with 40 00 04. Inbetween those bytes is data which funktion is still unknown.&lt;br /&gt;
&lt;br /&gt;
* Every object can have a different color in the 8bit-RGB-color-range. E.g. RGB(254,254,254), but most probably it is only black. RGB(0,0,0).&lt;br /&gt;
&lt;br /&gt;
* The size of the canvas is written in pure ansi text. The value could be &amp;quot;ISO A4&amp;quot; or &amp;quot;Letter&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* The hex value 40 seems to be the delimiter between chunks of data of different length. Hex value ff ff ff semms to be a start delimiter and ff ff ff ff semms to be the end delimiter.&lt;br /&gt;
&lt;br /&gt;
=== Footer ===&lt;br /&gt;
The footer is composed of blocks of data. Each block begins with a 2-byte code indicating the type of data, followed by 1 byte code indicating the datatype and a second 1 byte code indicating how many elements of data are stored.&lt;br /&gt;
====Header====&lt;br /&gt;
54 bytes - unknown data&lt;br /&gt;
&lt;br /&gt;
====Blocks====&lt;br /&gt;
The first two bytes of the block provide information on the purpose of the block. The following 2 bytes indicate the type of data and the number of data elements of that type.&lt;br /&gt;
&lt;br /&gt;
While the data typically follows this pattern, in some cases (most notably distance measurements) the &amp;quot;datatype&amp;quot; indicates the incorrect length.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
!Header !!Description&lt;br /&gt;
|-&lt;br /&gt;
|00 ||1 byte of data stored in length byte&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|02 ||2-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|03 ||4-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|04 ||8-byte little endian IEEE-754 float. Usually for storing a distance in mm units&lt;br /&gt;
|-&lt;br /&gt;
|05 ||ASCII data chunks&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+Sample Block Data&lt;br /&gt;
!Prefix !!Type !!Length !!Data&lt;br /&gt;
|-&lt;br /&gt;
|0x0108 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot; - Optional&lt;br /&gt;
|-&lt;br /&gt;
|0x0208 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot; - Optional&lt;br /&gt;
|-&lt;br /&gt;
|0x0408 ||05 ||06 ||&amp;quot;Letter&amp;quot; - Text Paper Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0508 ||03 ||02 ||56 54 00 00   24 6D 00 00 - Paper size in 1/2540&amp;quot; (ie:0.01mm) units (Little Endian). This seems to have been chosen to allow precise storing of both fractional imperial and metric units. 4-byte width, 4-byte height&lt;br /&gt;
|-&lt;br /&gt;
|0x1B08 ||01 ||01 ||00 - Portrait(0) or Landscape(1)&lt;br /&gt;
|-&lt;br /&gt;
|0x2708 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1A08 ||02 ||01 ||64 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0908 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0A08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0B08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0C08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0D08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2208 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2008 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2108 ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2308 ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2408 ||03 ||01 ||6F 08 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2508 ||03 ||01 ||EA 0A 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2608 ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0808 ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0E08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1008 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1E08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1108 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1C08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1D08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1408 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0306 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0009 ||00 || ||09&lt;br /&gt;
|-&lt;br /&gt;
|0x0109 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0209 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0309 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0409 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0406 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000A ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010A ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x020A ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000C ||00 || ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x010C ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0506 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000E ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010E ||01 ||01 ||01 - Show Registration Marks&lt;br /&gt;
|-&lt;br /&gt;
|0x020E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0A0E ||04 ||01 ||CD CC CC CC CC 0C 33 40 - Registration Mark Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0B0E ||02 ||01 ||A8 C6 4B 37 89 41 E0 3F - Registration Mark Thickness&lt;br /&gt;
|-&lt;br /&gt;
|0x0C0E ||03 ||01 ||66 66 66 66 66 66 29 40 - Origin X&lt;br /&gt;
|-&lt;br /&gt;
|0x0D0E ||03 ||01 ||52 B8 1E 85 EB 51 24 40 - Origin Y&lt;br /&gt;
|-&lt;br /&gt;
|0x0E0E ||03 ||01 ||01 00 00 00 00 D0 67 40 - Distance 1-2&lt;br /&gt;
|-&lt;br /&gt;
|0x0F0E ||03 ||01 ||48 E1 7A 14 AE 87 6E 40 - Distance 1-3&lt;br /&gt;
|-&lt;br /&gt;
|0x110E ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0606 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000F ||00 || ||04&lt;br /&gt;
|-&lt;br /&gt;
|0x010F ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x020F ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030F ||04 ||01 ||66 66 66 66 66 66 29 40 - Grid Spacing&lt;br /&gt;
|-&lt;br /&gt;
|0x040F ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x0010 ||03 ||01 ||00 00 00 00 - End of file?&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Mythgarr</name></author>
	</entry>
	<entry>
		<id>https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54663</id>
		<title>GSD</title>
		<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54663"/>
		<updated>2009-11-04T19:17:01Z</updated>

		<summary type="html">&lt;p&gt;Mythgarr: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== The GSD binary file format ==&lt;br /&gt;
This is my first try to reverse engineer a binary file format. If you like, you could add your thoughts!&lt;br /&gt;
By comparison between different files with the extention .gsd i try to see what data is stored where. It has some parts in ansi-text and the most parts are just binary numbers of different length. As identification, the file starts with the text &amp;quot;GRAPHTEC PRT&amp;amp;CUT&amp;quot;. The next line at offset 0000:0010 starts with binary numbers &amp;quot;03 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00&amp;quot; (I don't know if they make any sense there).&lt;br /&gt;
&lt;br /&gt;
* From offset 0000:0080 to offset 0000:00cf is unknown binary data.&lt;br /&gt;
* From offset 0000:00d3 to offset 0000:00de is binary data, which is exactly repeated from offset 0000:00fb to 0000:0107. It starts with the hex numbers 40 6a 40 which seems to be a marker for file seek. It ends with 40 00 04. Inbetween those bytes is data which funktion is still unknown.&lt;br /&gt;
&lt;br /&gt;
* Every object can have a different color in the 8bit-RGB-color-range. E.g. RGB(254,254,254), but most probably it is only black. RGB(0,0,0).&lt;br /&gt;
&lt;br /&gt;
* The size of the canvas is written in pure ansi text. The value could be &amp;quot;ISO A4&amp;quot; or &amp;quot;Letter&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* The hex value 40 seems to be the delimiter between chunks of data of different length. Hex value ff ff ff semms to be a start delimiter and ff ff ff ff semms to be the end delimiter.&lt;br /&gt;
&lt;br /&gt;
=== Footer ===&lt;br /&gt;
The footer is composed of blocks of data. Each block begins with a 2-byte code indicating the type of data, followed by 1 byte code indicating the datatype and a second 1 byte code indicating how many elements of data are stored.&lt;br /&gt;
====Header====&lt;br /&gt;
54 bytes - unknown data&lt;br /&gt;
&lt;br /&gt;
====Blocks====&lt;br /&gt;
The first two bytes of the block provide information on the purpose of the block. The following 2 bytes indicate the type of data and the number of data elements of that type.&lt;br /&gt;
&lt;br /&gt;
While the data typically follows this pattern, in some cases (most notably distance measurements) the &amp;quot;datatype&amp;quot; indicates the incorrect length.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
!Header !!Description&lt;br /&gt;
|-&lt;br /&gt;
|00 ||1 byte of data stored in length byte&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|02 ||2-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|03 ||4-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|04 ||8-byte little endian IEEE-754 float. Usually for storing a distance in mm units&lt;br /&gt;
|-&lt;br /&gt;
|05 ||ASCII data chunks&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+Sample Block Data&lt;br /&gt;
!Prefix !!Type !!Length !!Data&lt;br /&gt;
|-&lt;br /&gt;
|0x0108 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot; - Optional&lt;br /&gt;
|-&lt;br /&gt;
|0x0208 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot; - Optional&lt;br /&gt;
|-&lt;br /&gt;
|0x0408 ||05 ||06 ||&amp;quot;Letter&amp;quot; - Text Paper Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0508 ||03 ||02 ||56 54 00 00   24 6D 00 00 - Paper size in 1/2540&amp;quot; units (Little Endian) 4-byte width, 4-byte height&lt;br /&gt;
|-&lt;br /&gt;
|0x1B08 ||01 ||01 ||00 - Portrait(0) or Landscape(1)&lt;br /&gt;
|-&lt;br /&gt;
|0x2708 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1A08 ||02 ||01 ||64 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0908 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0A08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0B08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0C08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0D08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2208 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2008 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2108 ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2308 ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2408 ||03 ||01 ||6F 08 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2508 ||03 ||01 ||EA 0A 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2608 ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0808 ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0E08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1008 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1E08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1108 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1C08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1D08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1408 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0306 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0009 ||00 || ||09&lt;br /&gt;
|-&lt;br /&gt;
|0x0109 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0209 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0309 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0409 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0406 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000A ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010A ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x020A ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000C ||00 || ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x010C ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0506 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000E ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010E ||01 ||01 ||01 - Show Registration Marks&lt;br /&gt;
|-&lt;br /&gt;
|0x020E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0A0E ||04 ||01 ||CD CC CC CC CC 0C 33 40 - Registration Mark Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0B0E ||02 ||01 ||A8 C6 4B 37 89 41 E0 3F - Registration Mark Thickness&lt;br /&gt;
|-&lt;br /&gt;
|0x0C0E ||03 ||01 ||66 66 66 66 66 66 29 40 - Origin X&lt;br /&gt;
|-&lt;br /&gt;
|0x0D0E ||03 ||01 ||52 B8 1E 85 EB 51 24 40 - Origin Y&lt;br /&gt;
|-&lt;br /&gt;
|0x0E0E ||03 ||01 ||01 00 00 00 00 D0 67 40 - Distance 1-2&lt;br /&gt;
|-&lt;br /&gt;
|0x0F0E ||03 ||01 ||48 E1 7A 14 AE 87 6E 40 - Distance 1-3&lt;br /&gt;
|-&lt;br /&gt;
|0x110E ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0606 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000F ||00 || ||04&lt;br /&gt;
|-&lt;br /&gt;
|0x010F ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x020F ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030F ||04 ||01 ||66 66 66 66 66 66 29 40 - Grid Spacing&lt;br /&gt;
|-&lt;br /&gt;
|0x040F ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x0010 ||03 ||01 ||00 00 00 00 - End of file?&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Mythgarr</name></author>
	</entry>
	<entry>
		<id>https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54661</id>
		<title>GSD</title>
		<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54661"/>
		<updated>2009-11-04T19:04:30Z</updated>

		<summary type="html">&lt;p&gt;Mythgarr: /* Blocks */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== The GSD binary file format ==&lt;br /&gt;
This is my first try to reverse engineer a binary file format. If you like, you could add your thoughts!&lt;br /&gt;
By comparison between different files with the extention .gsd i try to see what data is stored where. It has some parts in ansi-text and the most parts are just binary numbers of different length. As identification, the file starts with the text &amp;quot;GRAPHTEC PRT&amp;amp;CUT&amp;quot;. The next line at offset 0000:0010 starts with binary numbers &amp;quot;03 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00&amp;quot; (I don't know if they make any sense there).&lt;br /&gt;
&lt;br /&gt;
* From offset 0000:0080 to offset 0000:00cf is unknown binary data.&lt;br /&gt;
* From offset 0000:00d3 to offset 0000:00de is binary data, which is exactly repeated from offset 0000:00fb to 0000:0107. It starts with the hex numbers 40 6a 40 which seems to be a marker for file seek. It ends with 40 00 04. Inbetween those bytes is data which funktion is still unknown.&lt;br /&gt;
&lt;br /&gt;
* Every object can have a different color in the 8bit-RGB-color-range. E.g. RGB(254,254,254), but most probably it is only black. RGB(0,0,0).&lt;br /&gt;
&lt;br /&gt;
* The size of the canvas is written in pure ansi text. The value could be &amp;quot;ISO A4&amp;quot; or &amp;quot;Letter&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* The hex value 40 seems to be the delimiter between chunks of data of different length. Hex value ff ff ff semms to be a start delimiter and ff ff ff ff semms to be the end delimiter.&lt;br /&gt;
&lt;br /&gt;
=== Footer ===&lt;br /&gt;
The footer is composed of blocks of data. Each block begins with a 2-byte code indicating the type of data, followed by 1 byte code indicating the datatype and a second 1 byte code indicating how many elements of data are stored.&lt;br /&gt;
====Header====&lt;br /&gt;
54 bytes - unknown data&lt;br /&gt;
&lt;br /&gt;
====Blocks====&lt;br /&gt;
The first two bytes of the block provide information on the purpose of the block. The following 2 bytes indicate the type of data and the number of data elements of that type.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
!Header !!Description&lt;br /&gt;
|-&lt;br /&gt;
|00 ||1 byte of data stored in length byte&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|02 ||2-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|03 ||4-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|05 ||ASCII data chunks&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+Sample Block Data&lt;br /&gt;
!Prefix !!Type !!Length !!Data&lt;br /&gt;
|-&lt;br /&gt;
|0x0108 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot; - Optional&lt;br /&gt;
|-&lt;br /&gt;
|0x0208 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot; - Optional&lt;br /&gt;
|-&lt;br /&gt;
|0x0408 ||05 ||06 ||&amp;quot;Letter&amp;quot; - Text Paper Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0508 ||03 ||02 ||56 54 00 00   24 6D 00 00 - Paper size in 1/2540&amp;quot; units (Little Endian) 4-byte width, 4-byte height&lt;br /&gt;
|-&lt;br /&gt;
|0x1B08 ||01 ||01 ||00 - Portrait(0) or Landscape(1)&lt;br /&gt;
|-&lt;br /&gt;
|0x2708 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1A08 ||02 ||01 ||64 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0908 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0A08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0B08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0C08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0D08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2208 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2008 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2108 ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2308 ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2408 ||03 ||01 ||6F 08 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2508 ||03 ||01 ||EA 0A 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2608 ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0808 ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0E08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1008 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1E08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1108 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1C08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1D08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1408 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0306 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0009 ||00 || ||09&lt;br /&gt;
|-&lt;br /&gt;
|0x0109 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0209 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0309 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0409 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0406 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000A ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010A ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x020A ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000C ||00 || ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x010C ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0506 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000E ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010E ||01 ||01 ||01 - Show Registration Marks&lt;br /&gt;
|-&lt;br /&gt;
|0x020E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0A0E ||04 ||01 ||CD CC CC CC CC 0C 33 40 - Registration Mark Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0B0E ||02 ||01 ||A8 C6 4B 37 89 41 E0 3F - Registration Mark Thickness&lt;br /&gt;
|-&lt;br /&gt;
|0x0C0E ||03 ||01 ||66 66 66 66 66 66 29 40 - Origin X&lt;br /&gt;
|-&lt;br /&gt;
|0x0D0E ||03 ||01 ||52 B8 1E 85 EB 51 24 40 - Origin Y&lt;br /&gt;
|-&lt;br /&gt;
|0x0E0E ||03 ||01 ||01 00 00 00 00 D0 67 40 - Distance 1-2&lt;br /&gt;
|-&lt;br /&gt;
|0x0F0E ||03 ||01 ||48 E1 7A 14 AE 87 6E 40 - Distance 1-3&lt;br /&gt;
|-&lt;br /&gt;
|0x110E ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0606 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000F ||00 || ||04&lt;br /&gt;
|-&lt;br /&gt;
|0x010F ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x020F ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030F ||04 ||01 ||66 66 66 66 66 66 29 40 - Grid Spacing&lt;br /&gt;
|-&lt;br /&gt;
|0x040F ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x0010 ||03 ||01 ||00 00 00 00 - End of file?&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Mythgarr</name></author>
	</entry>
	<entry>
		<id>https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54659</id>
		<title>GSD</title>
		<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54659"/>
		<updated>2009-11-04T18:42:04Z</updated>

		<summary type="html">&lt;p&gt;Mythgarr: /* Blocks */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== The GSD binary file format ==&lt;br /&gt;
This is my first try to reverse engineer a binary file format. If you like, you could add your thoughts!&lt;br /&gt;
By comparison between different files with the extention .gsd i try to see what data is stored where. It has some parts in ansi-text and the most parts are just binary numbers of different length. As identification, the file starts with the text &amp;quot;GRAPHTEC PRT&amp;amp;CUT&amp;quot;. The next line at offset 0000:0010 starts with binary numbers &amp;quot;03 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00&amp;quot; (I don't know if they make any sense there).&lt;br /&gt;
&lt;br /&gt;
* From offset 0000:0080 to offset 0000:00cf is unknown binary data.&lt;br /&gt;
* From offset 0000:00d3 to offset 0000:00de is binary data, which is exactly repeated from offset 0000:00fb to 0000:0107. It starts with the hex numbers 40 6a 40 which seems to be a marker for file seek. It ends with 40 00 04. Inbetween those bytes is data which funktion is still unknown.&lt;br /&gt;
&lt;br /&gt;
* Every object can have a different color in the 8bit-RGB-color-range. E.g. RGB(254,254,254), but most probably it is only black. RGB(0,0,0).&lt;br /&gt;
&lt;br /&gt;
* The size of the canvas is written in pure ansi text. The value could be &amp;quot;ISO A4&amp;quot; or &amp;quot;Letter&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* The hex value 40 seems to be the delimiter between chunks of data of different length. Hex value ff ff ff semms to be a start delimiter and ff ff ff ff semms to be the end delimiter.&lt;br /&gt;
&lt;br /&gt;
=== Footer ===&lt;br /&gt;
The footer is composed of blocks of data. Each block begins with a 2-byte code indicating the type of data, followed by 1 byte code indicating the datatype and a second 1 byte code indicating how many elements of data are stored.&lt;br /&gt;
====Header====&lt;br /&gt;
54 bytes - unknown data&lt;br /&gt;
&lt;br /&gt;
====Blocks====&lt;br /&gt;
The first two bytes of the block provide information on the purpose of the block. The following 2 bytes indicate the type of data and the number of data elements of that type.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
!Header !!Description&lt;br /&gt;
|-&lt;br /&gt;
|00 ||1 byte of data stored in length byte&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|02 ||2-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|03 ||4-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|05 ||ASCII data chunks&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+Sample Block Data&lt;br /&gt;
!Prefix !!Type !!Length !!Data&lt;br /&gt;
|-&lt;br /&gt;
|0x0108 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|0x0208 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|0x0408 ||05 ||06 ||&amp;quot;Letter&amp;quot; - Text Paper Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0508 ||03 ||02 ||56 54 00 00   24 6D 00 00 - Paper size in 1/2540&amp;quot; units (Little Endian) 4-byte width, 4-byte height&lt;br /&gt;
|-&lt;br /&gt;
|0x1B08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2708 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1A08 ||02 ||01 ||64 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0908 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0A08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0B08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0C08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0D08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2208 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2008 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2108 ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2308 ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2408 ||03 ||01 ||6F 08 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2508 ||03 ||01 ||EA 0A 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2608 ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0808 ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0E08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1008 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1E08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1108 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1C08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1D08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1408 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0306 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0009 ||00 || ||09&lt;br /&gt;
|-&lt;br /&gt;
|0x0109 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0209 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0309 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0409 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0406 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000A ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010A ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x020A ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000C ||00 || ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x010C ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0506 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000E ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010E ||01 ||01 ||01 - Show Registration Marks&lt;br /&gt;
|-&lt;br /&gt;
|0x020E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0A0E ||04 ||01 ||CD CC CC CC CC 0C 33 40 - Unknown Dimension&lt;br /&gt;
|-&lt;br /&gt;
|0x0B0E ||02 ||01 ||A8 C6 4B 37 89 41 E0 3F - Unknown Dimension&lt;br /&gt;
|-&lt;br /&gt;
|0x0C0E ||03 ||01 ||66 66 66 66 66 66 29 40 - Unknown Dimension (0.5&amp;quot;)&lt;br /&gt;
|-&lt;br /&gt;
|0x0D0E ||03 ||01 ||52 B8 1E 85 EB 51 24 40 - Unknown Dimension&lt;br /&gt;
|-&lt;br /&gt;
|0x0E0E ||03 ||01 ||01 00 00 00 00 D0 67 40 - Unknown Dimension&lt;br /&gt;
|-&lt;br /&gt;
|0x0F0E ||03 ||01 ||48 E1 7A 14 AE 87 6E 40 - Unknown Dimension&lt;br /&gt;
|-&lt;br /&gt;
|0x110E ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0606 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000F ||00 || ||04&lt;br /&gt;
|-&lt;br /&gt;
|0x010F ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x020F ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030F ||04 ||01 ||66 66 66 66 66 66 29 40 - Unknown Dimension&lt;br /&gt;
|-&lt;br /&gt;
|0x040F ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x0010 ||03 ||01 ||00 00 00 00 - End of file?&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Mythgarr</name></author>
	</entry>
	<entry>
		<id>https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54657</id>
		<title>GSD</title>
		<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54657"/>
		<updated>2009-11-04T17:54:20Z</updated>

		<summary type="html">&lt;p&gt;Mythgarr: /* Footer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== The GSD binary file format ==&lt;br /&gt;
This is my first try to reverse engineer a binary file format. If you like, you could add your thoughts!&lt;br /&gt;
By comparison between different files with the extention .gsd i try to see what data is stored where. It has some parts in ansi-text and the most parts are just binary numbers of different length. As identification, the file starts with the text &amp;quot;GRAPHTEC PRT&amp;amp;CUT&amp;quot;. The next line at offset 0000:0010 starts with binary numbers &amp;quot;03 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00&amp;quot; (I don't know if they make any sense there).&lt;br /&gt;
&lt;br /&gt;
* From offset 0000:0080 to offset 0000:00cf is unknown binary data.&lt;br /&gt;
* From offset 0000:00d3 to offset 0000:00de is binary data, which is exactly repeated from offset 0000:00fb to 0000:0107. It starts with the hex numbers 40 6a 40 which seems to be a marker for file seek. It ends with 40 00 04. Inbetween those bytes is data which funktion is still unknown.&lt;br /&gt;
&lt;br /&gt;
* Every object can have a different color in the 8bit-RGB-color-range. E.g. RGB(254,254,254), but most probably it is only black. RGB(0,0,0).&lt;br /&gt;
&lt;br /&gt;
* The size of the canvas is written in pure ansi text. The value could be &amp;quot;ISO A4&amp;quot; or &amp;quot;Letter&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* The hex value 40 seems to be the delimiter between chunks of data of different length. Hex value ff ff ff semms to be a start delimiter and ff ff ff ff semms to be the end delimiter.&lt;br /&gt;
&lt;br /&gt;
=== Footer ===&lt;br /&gt;
The footer is composed of blocks of data. Each block begins with a 2-byte code indicating the type of data, followed by 1 byte code indicating the datatype and a second 1 byte code indicating how many elements of data are stored.&lt;br /&gt;
====Header====&lt;br /&gt;
54 bytes - unknown data&lt;br /&gt;
&lt;br /&gt;
====Blocks====&lt;br /&gt;
The first two bytes of the block provide information on the purpose of the block. The following 2 bytes indicate the type of data and the number of data elements of that type.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
!Header !!Description&lt;br /&gt;
|-&lt;br /&gt;
|00 ||1 byte of data stored in length byte&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|01 ||1-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|02 ||2-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|03 ||4-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|05 ||ASCII data chunks&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+Sample Block Data&lt;br /&gt;
!Prefix !!Type !!Length !!Data&lt;br /&gt;
|-&lt;br /&gt;
|0x0108 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|0x0208 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|0x0408 ||05 ||06 ||&amp;quot;Letter&amp;quot; - Text Paper Size&lt;br /&gt;
|-&lt;br /&gt;
|0x0508 ||03 ||02 ||56 54 00 00   24 6D 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1B08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2708 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1A08 ||02 ||01 ||64 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0908 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0A08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0B08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0C08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0D08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2208 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2008 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2108 ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2308 ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2408 ||03 ||01 ||6F 08 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2508 ||03 ||01 ||EA 0A 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2608 ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0808 ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0E08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1008 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1E08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1108 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1C08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1D08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1408 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0306 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0009 ||00 || ||09&lt;br /&gt;
|-&lt;br /&gt;
|0x0109 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0209 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0309 ||01 ||01 ||05&lt;br /&gt;
|-&lt;br /&gt;
|0x0409 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0406 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000A ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010A ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x020A ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000C ||00 || ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x010C ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0506 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000E ||00 || ||0A&lt;br /&gt;
|-&lt;br /&gt;
|0x010E ||01 ||01 ||01 - Show Registration Marks&lt;br /&gt;
|-&lt;br /&gt;
|0x020E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030E ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0A0E ||04 ||01 ||CD CC CC CC CC 0C 33 40 - Unknown Dimension&lt;br /&gt;
|-&lt;br /&gt;
|0x0B0E ||02 ||01 ||A8 C6 4B 37 89 41 E0 3F - Unknown Dimension&lt;br /&gt;
|-&lt;br /&gt;
|0x0C0E ||03 ||01 ||66 66 66 66 66 66 29 40 - Unknown Dimension (0.5&amp;quot;)&lt;br /&gt;
|-&lt;br /&gt;
|0x0D0E ||03 ||01 ||52 B8 1E 85 EB 51 24 40 - Unknown Dimension&lt;br /&gt;
|-&lt;br /&gt;
|0x0E0E ||03 ||01 ||01 00 00 00 00 D0 67 40 - Unknown Dimension&lt;br /&gt;
|-&lt;br /&gt;
|0x0F0E ||03 ||01 ||48 E1 7A 14 AE 87 6E 40 - Unknown Dimension&lt;br /&gt;
|-&lt;br /&gt;
|0x110E ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0606 ||00 || ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x000F ||00 || ||04&lt;br /&gt;
|-&lt;br /&gt;
|0x010F ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x020F ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x030F ||04 ||01 ||66 66 66 66 66 66 29 40 - Unknown Dimension&lt;br /&gt;
|-&lt;br /&gt;
|0x040F ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x0010 ||03 ||01 ||00 00 00 00 - End of file?&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Mythgarr</name></author>
	</entry>
	<entry>
		<id>https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54655</id>
		<title>GSD</title>
		<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54655"/>
		<updated>2009-11-04T17:06:27Z</updated>

		<summary type="html">&lt;p&gt;Mythgarr: /* Footer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== The GSD binary file format ==&lt;br /&gt;
This is my first try to reverse engineer a binary file format. If you like, you could add your thoughts!&lt;br /&gt;
By comparison between different files with the extention .gsd i try to see what data is stored where. It has some parts in ansi-text and the most parts are just binary numbers of different length. As identification, the file starts with the text &amp;quot;GRAPHTEC PRT&amp;amp;CUT&amp;quot;. The next line at offset 0000:0010 starts with binary numbers &amp;quot;03 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00&amp;quot; (I don't know if they make any sense there).&lt;br /&gt;
&lt;br /&gt;
* From offset 0000:0080 to offset 0000:00cf is unknown binary data.&lt;br /&gt;
* From offset 0000:00d3 to offset 0000:00de is binary data, which is exactly repeated from offset 0000:00fb to 0000:0107. It starts with the hex numbers 40 6a 40 which seems to be a marker for file seek. It ends with 40 00 04. Inbetween those bytes is data which funktion is still unknown.&lt;br /&gt;
&lt;br /&gt;
* Every object can have a different color in the 8bit-RGB-color-range. E.g. RGB(254,254,254), but most probably it is only black. RGB(0,0,0).&lt;br /&gt;
&lt;br /&gt;
* The size of the canvas is written in pure ansi text. The value could be &amp;quot;ISO A4&amp;quot; or &amp;quot;Letter&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* The hex value 40 seems to be the delimiter between chunks of data of different length. Hex value ff ff ff semms to be a start delimiter and ff ff ff ff semms to be the end delimiter.&lt;br /&gt;
&lt;br /&gt;
=== Footer ===&lt;br /&gt;
The footer is composed of several sections. A header portion, and several blocks of data. These blocks seem to be related to various configuration information, although the exact purpose is unknown. This is followed by a footer section of static length.&lt;br /&gt;
====Header====&lt;br /&gt;
54 bytes - unknown data&lt;br /&gt;
&lt;br /&gt;
====Blocks====&lt;br /&gt;
The first two bytes of the block provide information on the purpose of the block. The following 2 bytes indicate the type of data and the number of data elements of that type.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
!Header &lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|01 &lt;br /&gt;
|1-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|02 &lt;br /&gt;
|2-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|03 &lt;br /&gt;
|4-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|05 &lt;br /&gt;
|ASCII data chunks&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+Sample Block Data&lt;br /&gt;
!Prefix !!Type !!Length !!Data&lt;br /&gt;
|-&lt;br /&gt;
|0x0108 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|0x0208 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|0x0408 ||05 ||06 ||&amp;quot;Letter&amp;quot; (or whatever)&lt;br /&gt;
|-&lt;br /&gt;
|0x0508 ||03 ||02 ||56 54 00 00 24 6D 00 00 (unk)&lt;br /&gt;
|-&lt;br /&gt;
|0x1B08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2708 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1A08 ||02 ||01 ||64 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0908 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0A08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0B08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0C08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0D08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2208 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2008 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2108 ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2308 ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2408 ||03 ||01 ||6F 08 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2508 ||03 ||01 ||EA 0A 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2608 ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0808 ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0E08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1008 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1E08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1108 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1C08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1D08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1408 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|}&lt;br /&gt;
====Footer====&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
!Length !!Description&lt;br /&gt;
|-&lt;br /&gt;
|0x34 bytes ||unknown&lt;br /&gt;
|-&lt;br /&gt;
|4 bytes ||unknown (00 0E 00 0A)&lt;br /&gt;
|-&lt;br /&gt;
|5 bytes ||unknown (01 0E 01 01 01)&lt;br /&gt;
|-&lt;br /&gt;
|6 bytes ||unknown (02 0E 02 01 01 00)&lt;br /&gt;
|-&lt;br /&gt;
|5 bytes ||unknown (03 0E 02 01 01)&lt;br /&gt;
|-&lt;br /&gt;
|1 byte ||use registration mark (bool)&lt;br /&gt;
|-&lt;br /&gt;
|4 bytes ||unknown (0A 0E 04 01)&lt;br /&gt;
|-&lt;br /&gt;
|8 bytes ||unknown dimension&lt;br /&gt;
|-&lt;br /&gt;
|3 bytes ||unknown (0B 0E 02)&lt;br /&gt;
|-&lt;br /&gt;
|1 byte ||unknown (0x01)&lt;br /&gt;
|-&lt;br /&gt;
|8 bytes ||registration mark size&lt;br /&gt;
|-&lt;br /&gt;
|16 bytes ||unknown (0C 0E 03 01)&lt;br /&gt;
|-&lt;br /&gt;
|8 bytes ||origin X&lt;br /&gt;
|-&lt;br /&gt;
|4 bytes ||unknown (0D 0E 03 01)&lt;br /&gt;
|-&lt;br /&gt;
|8 bytes ||origin Y&lt;br /&gt;
|-&lt;br /&gt;
|3 bytes ||unknown (0E 0E 03)&lt;br /&gt;
|-&lt;br /&gt;
|1 byte ||show grid (boolean)&lt;br /&gt;
|-&lt;br /&gt;
|8 bytes ||Registration Mark distance 1-2&lt;br /&gt;
|-&lt;br /&gt;
|4 bytes ||unknown (0F 0E 03 01)&lt;br /&gt;
|-&lt;br /&gt;
|8 bytes ||Registration mark distance 1-3&lt;br /&gt;
|-&lt;br /&gt;
|5 bytes ||unknown (11 0E 01 01 00)&lt;br /&gt;
|-&lt;br /&gt;
|4 bytes ||unknown (06 06 00 00)&lt;br /&gt;
|-&lt;br /&gt;
|4 bytes ||unknown (00 0F 00 04)&lt;br /&gt;
|-&lt;br /&gt;
|4 bytes ||unknown (01 0F 01 01)&lt;br /&gt;
|-&lt;br /&gt;
|1 byte ||unknown (00)&lt;br /&gt;
|-&lt;br /&gt;
|4 bytes ||unknown (02 0F 02 01)&lt;br /&gt;
|-&lt;br /&gt;
|2 bytes ||grid type(0=line, 1=dot)&lt;br /&gt;
|-&lt;br /&gt;
|4 bytes ||unknown (03 0F 04 01)&lt;br /&gt;
|-&lt;br /&gt;
|8 bytes ||grid size&lt;br /&gt;
|-&lt;br /&gt;
|4 bytes ||unknown (04 0F 01 01)&lt;br /&gt;
|-&lt;br /&gt;
|1 byte ||snap to grid(bool)&lt;br /&gt;
|-&lt;br /&gt;
|8 bytes ||unknown (00 10 03 01 00 00 00 00)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;EOF&amp;gt;&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Mythgarr</name></author>
	</entry>
	<entry>
		<id>https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54651</id>
		<title>GSD</title>
		<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=GSD&amp;diff=54651"/>
		<updated>2009-11-04T08:22:07Z</updated>

		<summary type="html">&lt;p&gt;Mythgarr: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== The GSD binary file format ==&lt;br /&gt;
This is my first try to reverse engineer a binary file format. If you like, you could add your thoughts!&lt;br /&gt;
By comparison between different files with the extention .gsd i try to see what data is stored where. It has some parts in ansi-text and the most parts are just binary numbers of different length. As identification, the file starts with the text &amp;quot;GRAPHTEC PRT&amp;amp;CUT&amp;quot;. The next line at offset 0000:0010 starts with binary numbers &amp;quot;03 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00&amp;quot; (I don't know if they make any sense there).&lt;br /&gt;
&lt;br /&gt;
* From offset 0000:0080 to offset 0000:00cf is unknown binary data.&lt;br /&gt;
* From offset 0000:00d3 to offset 0000:00de is binary data, which is exactly repeated from offset 0000:00fb to 0000:0107. It starts with the hex numbers 40 6a 40 which seems to be a marker for file seek. It ends with 40 00 04. Inbetween those bytes is data which funktion is still unknown.&lt;br /&gt;
&lt;br /&gt;
* Every object can have a different color in the 8bit-RGB-color-range. E.g. RGB(254,254,254), but most probably it is only black. RGB(0,0,0).&lt;br /&gt;
&lt;br /&gt;
* The size of the canvas is written in pure ansi text. The value could be &amp;quot;ISO A4&amp;quot; or &amp;quot;Letter&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* The hex value 40 seems to be the delimiter between chunks of data of different length. Hex value ff ff ff semms to be a start delimiter and ff ff ff ff semms to be the end delimiter.&lt;br /&gt;
&lt;br /&gt;
=== Footer ===&lt;br /&gt;
The footer is composed of several sections. A header portion, and several blocks of data. These blocks seem to be related to various configuration information, although the exact purpose is unknown. This is followed by a footer section of static length.&lt;br /&gt;
====Header====&lt;br /&gt;
54 bytes - unknown data&lt;br /&gt;
&lt;br /&gt;
====Blocks====&lt;br /&gt;
The first two bytes of the block provide information on the purpose of the block. The following 2 bytes indicate the type of data and the number of data elements of that type.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
!Header &lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|01 &lt;br /&gt;
|1-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|02 &lt;br /&gt;
|2-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|03 &lt;br /&gt;
|4-byte data chunks&lt;br /&gt;
|-&lt;br /&gt;
|05 &lt;br /&gt;
|ASCII data chunks&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+Sample Block Data&lt;br /&gt;
!Prefix !!Type !!Length !!Data&lt;br /&gt;
|-&lt;br /&gt;
|0x0108 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|0x0208 ||05 ||13 ||&amp;quot;Graphtec Craft ROBO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|0x0408 ||05 ||06 ||&amp;quot;Letter&amp;quot; (or whatever)&lt;br /&gt;
|-&lt;br /&gt;
|0x0508 ||03 ||02 ||56 54 00 00 24 6D 00 00 (unk)&lt;br /&gt;
|-&lt;br /&gt;
|0x1B08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2708 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1A08 ||02 ||01 ||64 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0908 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0A08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0B08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0C08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0D08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2208 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2008 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x2108 ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2308 ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2408 ||03 ||01 ||6F 08 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2508 ||03 ||01 ||EA 0A 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x2608 ||02 ||01 ||01 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0808 ||02 ||01 ||00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x0E08 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x0F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1008 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1E08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1F08 ||01 ||01 ||01&lt;br /&gt;
|-&lt;br /&gt;
|0x1108 ||01 ||01 ||00&lt;br /&gt;
|-&lt;br /&gt;
|0x1C08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1D08 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|-&lt;br /&gt;
|0x1408 ||03 ||01 ||00 00 00 00&lt;br /&gt;
|}&lt;br /&gt;
====Footer====&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
!Length !!Description&lt;br /&gt;
|-&lt;br /&gt;
|0x48 bytes ||unknown&lt;br /&gt;
|-&lt;br /&gt;
|1 byte ||use registration mark (bool)&lt;br /&gt;
|-&lt;br /&gt;
|15 bytes ||unknown&lt;br /&gt;
|-&lt;br /&gt;
|1 byte ||unknown (0x01)&lt;br /&gt;
|-&lt;br /&gt;
|8 bytes ||registration mark size&lt;br /&gt;
|-&lt;br /&gt;
|16 bytes ||unknown&lt;br /&gt;
|-&lt;br /&gt;
|8 bytes ||origin X&lt;br /&gt;
|-&lt;br /&gt;
|4 bytes ||unknown&lt;br /&gt;
|-&lt;br /&gt;
|8 bytes ||origin Y&lt;br /&gt;
|-&lt;br /&gt;
|3 bytes ||unknown&lt;br /&gt;
|-&lt;br /&gt;
|1 byte ||show grid (boolean)&lt;br /&gt;
|-&lt;br /&gt;
|8 bytes ||Registration Mark distance 1-2&lt;br /&gt;
|-&lt;br /&gt;
|4 bytes ||unknown&lt;br /&gt;
|-&lt;br /&gt;
|8 bytes ||Registration mark distance 1-3&lt;br /&gt;
|-&lt;br /&gt;
|22 bytes ||unknown&lt;br /&gt;
|-&lt;br /&gt;
|1 byte ||grid type(0=line, 1=dot)&lt;br /&gt;
|-&lt;br /&gt;
|5 bytes ||unknown&lt;br /&gt;
|-&lt;br /&gt;
|8 bytes ||grid size&lt;br /&gt;
|-&lt;br /&gt;
|4 bytes ||unknown&lt;br /&gt;
|-&lt;br /&gt;
|1 byte ||snap to grid(bool)&lt;br /&gt;
|-&lt;br /&gt;
|8 bytes ||unknown&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;EOF&amp;gt;&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Mythgarr</name></author>
	</entry>
</feed>