Skip to content
This repository was archived by the owner on Jan 7, 2018. It is now read-only.

DevNotes

DD~! edited this page Oct 7, 2016 · 5 revisions

Generic notes

  • Even if the using static feature is wonderful, I try to limit its use because I don't want to be confused with other methods and classes.
  • Parameters are expressed with a slashes (e.g. /w 16) in documents.
  • Eventually optimization will occur.

Source files

Files are divided into what role they fill.

File Description
AssemblyInfo.cs .NET Assembly information.
0xdd.cs Main part of the program.
DumperModule.cs Used for dumping data into a HEXDMP file.
FinderModule.cs Used to find information in a file.
InfoPanel.cs The information panel, shows positions and messages.
FilePanel.cs Main data panel, using the offset and data in bytes and ASCII characters.
MenuBarPanel.cs Menubar and MenuItem.
OffsetPanel.cs Top per-byte offset bar.
Program.cs Main starting point.
Utilities.cs Console and miscellaneous related tools.
WindowSystem.cs Window system.

Panels

In 0xdd, the UI is divided into multiple sections, of which I call panels.

The panels are in charge of what to render on screen. Their Draw() method places the heavy stuff while Update() updates only the live stuff.

Panel Description
MenuBarPanel Menu bar.
OffsetPanel Current offset base, and byte offsets.
MainPanel File data.
InfoPanel Messages and the current positions.

Stolen keys and shortcuts

The conhost, cmd, and other UNIX based terminals have their own set of shortcuts, which we are not allowed to use within 0xdd.

Windows 10

  • F11 : Fullscreen.
  • CTRL+F : Search DialogBox.
  • CTRL+HOME : Scroll all the way up.
  • CTRL+END : Scroll all the way down.
  • CTRL+A : Selects all output.
  • CTRL+C and CTRL+V : Copy and paste.

xfce4-terminal

  • CTRL+LEFT and CTRL+RIGHT : No idea.

Plugins

A planned feature.

User Manual

  1. Arguments
  2. Navigation
  3. Shortcuts

FAQ

Development

Notes

Porting

Clone this wiki locally