<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to Home</title><link>https://sourceforge.net/p/pixeldbg/wiki/Home/</link><description>Recent changes to Home</description><atom:link href="https://sourceforge.net/p/pixeldbg/wiki/Home/feed" rel="self"/><language>en</language><lastBuildDate>Wed, 20 Nov 2013 11:30:33 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/pixeldbg/wiki/Home/feed" rel="self" type="application/rss+xml"/><item><title>Discussion for Home page</title><link>https://sourceforge.net/p/pixeldbg/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;strong&gt;Getting started&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This page shows how to use PixelDbg to open an unknown archive, go through it, adjust various interpretation parameters and discover an image. This page demonstrates version 0.7 and PixelDbg might change/improve in the future to make pixel hunting easier and more convenient.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. Opening any file&lt;/strong&gt;&lt;br /&gt;
Following image shows how to open a file from a specified offset. I.e. a bitmap file format has 54 bytes occupied by the file header which can be skipped by specifying 54 bytes in the &lt;strong&gt;offset&lt;/strong&gt; field. This will load the bitmap pixels directly without interpreting the bitmap header as an image.&lt;/p&gt;
&lt;p&gt;&lt;img src="./attachment/1_OpenFileWithOffset.png" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. Displayed data&lt;/strong&gt;&lt;br /&gt;
Opening any archive will most likely show pixel noise and weird looking images as show in the image below. The highlighted &lt;strong&gt;data&lt;/strong&gt; field shows the &lt;strong&gt;top-left&lt;/strong&gt; pixels that are displayed in the window on the right. By adding or removing any bytes in the &lt;strong&gt;data&lt;/strong&gt; field the image can shift and change colors. This can help with the reconstruction process as described in &lt;strong&gt;5.&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="./attachment/2_OpenedArchive.png" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. Pixel format and scanline size&lt;/strong&gt;&lt;br /&gt;
Current data is interpreted as BGR_888 pixel format with 24 bpp (default settings). This means that every 3 characters/bytes in the &lt;strong&gt;data&lt;/strong&gt; field a new pixel will follow in the displayed image. The size at which the data stream is shown is specified by the window size. The window size can be resized by using the mouse or typed directly into the &lt;strong&gt;width&lt;/strong&gt; and &lt;strong&gt;height&lt;/strong&gt; fields to adjust the scanline size.&lt;/p&gt;
&lt;p&gt;Following image shows highlighted pixel format and a resized window for an image width of 640 pixels (640 * 3 bytes = 1920 bytes for one scanline). Note how a pattern starts to emerge from the pixel garbage shown before because of the adjusted scanline size (727 -&amp;gt; 640).&lt;/p&gt;
&lt;p&gt;&lt;img src="./attachment/3_PixelformatAndStride.png" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4. Experimenting with data interpretation&lt;/strong&gt;&lt;br /&gt;
We now can see something representing and image. Most likely we can't clearly see it because the image uses another pixel format then the one specified. We can try to adjust the pixel format as well and see what happens. We start by telling PixelDbg to interpret the data stream as 16 bpp image. This means that instead of every 3 bytes now every 2 bytes will produce a valid pixel.&lt;/p&gt;
&lt;p&gt;There are multiple 16 bpp formats. By typing directly in the &lt;strong&gt;RGBA bits&lt;/strong&gt; field we can try most of the out (i.e. 4.4.4.4, 5.5.5.1 or 5.6.5.0).&lt;/p&gt;
&lt;p&gt;Next image shows the data stream interpreted as 5.6.5.0 image. No alpha is set and only 16 bpp are used for each pixel. We can clearly see an image appearing now but yet still in a wrong color set.&lt;/p&gt;
&lt;p&gt;&lt;img src="./attachment/4_Pixelformat565.png" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;5. Shifting the data&lt;/strong&gt;&lt;br /&gt;
The image in the archive seems to be stored as 16 bpp and 640 width because it perfectly fits into the displayed image on the right side. To get the final image might need to remove couple of bytes in the &lt;strong&gt;data&lt;/strong&gt; field as this will move the 16 bpp pixels to correct pixel boundary.&lt;/p&gt;
&lt;p&gt;Following image shows the displayed image when some byte are removed from the &lt;strong&gt;data&lt;/strong&gt; field. We now have a clear image of something.&lt;/p&gt;
&lt;p&gt;&lt;img src="./attachment/5_RemovedData.png" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;6. Setting correct file offset&lt;/strong&gt;&lt;br /&gt;
The image looks correct except that we would like it to be aligned properly to the &lt;strong&gt;top-left&lt;/strong&gt; corner. To do this we simply need to specify the correct file offset where the pixels are located and re-load the file. To find the correct file offset press &lt;strong&gt;CTRL-key&lt;/strong&gt; and navigate to the image position that should be displayed at the &lt;strong&gt;top-left&lt;/strong&gt; corner. When this happens the &lt;strong&gt;offset&lt;/strong&gt; field becomes yellow and the mouse cursors turns into a cross.&lt;/p&gt;
&lt;p&gt;Next image shows where we want our cursor to be in order to move that position to the &lt;strong&gt;top-left&lt;/strong&gt; corner of our image. After picking an offset the file must be reloaded. This can be done automatically if the &lt;strong&gt;Auto&lt;/strong&gt; checkbox is checked. If &lt;strong&gt;Auto&lt;/strong&gt; mode is enabled the file is reloaded every time an offset is picked and &lt;strong&gt;CTRL-key&lt;/strong&gt; released.&lt;br /&gt;
&lt;em&gt;Note: It can happen that after picking an offset the loaded data might land on a wrong pixel boundary again. To fix that we just need to remove the appropriate amount of bytes in the &lt;strong&gt;data&lt;/strong&gt; field as described in &lt;strong&gt;5.&lt;/strong&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="./attachment/6_PickingOffset.png" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;7. Saving the image&lt;/strong&gt;&lt;br /&gt;
We have the image now properly aligned to &lt;strong&gt;top-left&lt;/strong&gt; corner and are ready to save it. The &lt;strong&gt;Save image&lt;/strong&gt; button will save everything that is currently visible on the right side. To avoid the next image that follows immediately in the archive we can simply change the height of the window.&lt;/p&gt;
&lt;p&gt;Next image shows the final result.&lt;/p&gt;
&lt;p&gt;&lt;img src="./attachment/7_FinalImage.png" /&gt;&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">n.kindt</dc:creator><pubDate>Wed, 20 Nov 2013 11:30:33 -0000</pubDate><guid>https://sourceforge.nete299bd1abd0998ed8134c59480171be0562fb0a0</guid></item><item><title>Home modified by n.kindt</title><link>https://sourceforge.net/p/pixeldbg/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Welcome to your wiki!&lt;/p&gt;
&lt;p&gt;This is the default page, edit it as you see fit. To add a new page simply reference it within brackets, e.g.: &lt;span&gt;[SamplePage]&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;The wiki uses &lt;a class="" href="/p/pixeldbg/wiki/markdown_syntax/"&gt;Markdown&lt;/a&gt; syntax.&lt;/p&gt;
&lt;p&gt;&lt;h6&gt;Project Members:&lt;/h6&gt;
&lt;ul class="md-users-list"&gt;
&lt;li&gt;&lt;a href="/u/cigkill/"&gt;Petar Cigularov&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="/u/n-kindt/"&gt;n.kindt&lt;/a&gt; (admin)&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;/p&gt;&lt;p&gt;&lt;span class="download-button-5278e6b87929e52bab7f8d4d" style="margin-bottom: 1em; display: block;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">n.kindt</dc:creator><pubDate>Wed, 20 Nov 2013 10:04:14 -0000</pubDate><guid>https://sourceforge.net5c9f3bcb4fe76779729142920db6876f1695f37c</guid></item></channel></rss>