Martin Hauke
mnhauke
Involved Projects and Packages
CRC RevEng is a portable, arbitrary-precision CRC calculator and
algorithm finder. It calculates CRCs using any of the 72 preset
algorithms, or a user-specified algorithm to any width. It calculates
reversed CRCs to give the bit pattern that produces a desired forward
CRC. CRC RevEng also reverse-engineers any CRC algorithm from
sufficient correctly formatted message-CRC pairs and optional known
parameters. It comprises powerful input interpretation options.
Compliant with Ross Williams' Rocksoft(tm) model of parametrised CRC
algorithms.
Collection of Python scripts for reading information about and extracting
data from UBI and UBIFS images.
The following tools are included:
- ubireader_display_info:
Show information about UBI or UBIFS image.
- ubireader_extract_files:
Extract contents of a UBI or UBIFS image.
- ubireader_extract_images:
Extract UBI or UBIFS images from file containing UBI data in it.
- ubireader_list_files:
List and Extract files of a UBI or UBIFS image.
- ubireader_utils_info:
Determine settings for recreating UBI image.
This is a LD_PRELOAD wrapper library which can be used to trace the
data sent and/or received via unix domain sockets.
Unlike IP based communication that can be captured/traced with pcap
programs like tcpdump or wireshark, there is no similar mechanism
available for unix domain sockets.
This LD_PRELOAD library intercepts the C library function calls of
dynamically linked programs. It will detect all file descriptors
representing unix domain sockets and will then print traces of all
data sent/received via the socket.
uhubctl is utility to control USB power per-port on smart USB hubs. Smart hub is defined as one that implements per-port power switching.
xa is a high-speed, two-pass portable cross-assembler for the 6502 CPU
with a C-like preprocessor. One of several popular 65xx assemblers, xa
is written in C and released under the GPL-2. It has been in continuous
development since 1989.
Other tools in the xa package are:
* file65 - a tool for printing information about o65 object files.
* ldo65 - a linker for o65 object files.
* printcbm - a simple CBM BASIC detokenizer similar to the far more
powerful petcat proviced by VICE.
* reloc65 - a relocator for o65 object files.
* uncpk - a c64 cpk archive manager.
A YAFFS file system parser and extractor writte in pure python.
Features:
- List and/or extract regular files, folders, symlinks, hard
links, and special device files
- Automatic detection and/or brute force of YAFFS build parameters
(page size, spare size, endianess, etc)
- Support for both big and little endian YAFFS file systems
A utility for running arbitrary commands when files change.
Compiles ASN.1 data structures into C source structures that can be
simply marshalled to/unmarshalled from: BER, DER, CER, BASIC-XER,
CXER, EXTENDED-XER, PER.
hub is a command line tool that wraps git in order to extend it with extra features and commands that make working with GitHub easier.
A command line interface for Redmine.
dhex is an ncurses-based hex-editor with a diff mode. It makes heavy use of
colors, but is also themeable to work on monochrome monitors. It includes the
good old Action Cartridge Search Algorithm to find specific changes.
hexyl is a simple hex viewer for the terminal. It uses a colored output
to distinguish different categories of bytes (NUL bytes, printable
ASCII characters, ASCII whitespace characters, other ASCII characters
and non-ASCII).
The Common Open Research Emulator provides Python modules and a GUI for
building virtual networks using Linux network namespace containers and bridging.
Dynagen is a text-based front end for Dynamips, that uses the
Hypervisor mode for communication with Dynamips. Dynagen simplifies
building and working with virtual networks:
* Uses a simple, easy to understand configuration file for specifying
virtual router hardware configurations
* Simple syntax for interconnecting routers, bridges, frame-relay and
ATM switches. No need to deal with NetIOs
* Can work in a client / server mode, with Dynagen running on your
workstation communicating to Dynamips running on a back-end server.
Dynagen can also control multiple Dynamips servers simultaneously for
distributing large virtual networks across several machines.
* Provides a management CLI for listing devices, starting, stopping,
reloading, suspending, and resuming virtual routers.
Software for viewing PCB/Laptop/Motherboard Layouts.
* Dynamic part outline rendering, including complex connectors
* Annotations, for leaving notes about parts, nets, pins or location
* Configurable colour themes
* Configurable DPI to facilitate usage on 4K monitors
* Tablet usage with OSD controls
* Slower CPU systems through adjustable features
* Reads FZ (with key), BRD, BRD2, BDV and BV* formats
* Combined search system finds parts, pins and nets all within single
search
WireViz is a tool for easily documenting cables, wiring harnesses
and connector pinouts. It takes plain text, YAML-formatted files
as input and produces beautiful graphical output (SVG, PNG, ...)
It handles automatic BOM (Bill of Materials) creation and has a lot
of extra features.
Features
* WireViz input files are fully text based
+ No special editor required
+ Human readable
+ Easy version control
+ YAML syntax
+ UTF-8 input and output files for special character support
* Understands and uses color abbreviations as per IEC 60757
(black=BK, red=RD, ...)
* Auto-generates standard wire color schemes and allows custom
ones if needed
+ DIN 47100 (WT/BN/GN/YE/GY/PK/BU/RD/BK/VT/...)
+ IEC 60757 (BN/RD/OR/YE/GN/BU/VT/GY/WT/BK/...)
+ 25 Pair Color Code (BUWH/WHBU/OGWH/WHOG/GNWH/WHGN/BNWH/...)
+ TIA/EIA 568 A/B (Subset of 25-Pair, used in CAT-5/6/...)
* Understands wire gauge in mm² or AWG
+ Optionally auto-calculates equivalent gauge between mm²
and AWG
* Is suitable for both very simple cables, and more complex
harnesses.
* Allows for easy-autorouting for 1-to-1 wiring
* Generates BOM (Bill of Materials)
Note:
WireViz is not designed to represent the complete wiring of a system.
Its main aim is to document the construction of individual wires and
harnesses.
DBGL is a Java front-end for DOSBox, based largely upon the
proven interface of D-Fend.
FCEUX is a cross platform, NTSC and PAL Famicom/NES emulator that is an
evolution of the original FCE Ultra emulator. Over time FCE Ultra had
separated into many separate branches.
The concept behind FCEUX is to merge elements from FCE Ultra, FCEU
rerecording, FCEUXD, FCEUXDSP, and FCEU-mm into a single branch of FCEU. As
the X implies, it is an all-encompassing FCEU emulator that gives the best
of all worlds for the casual player, the ROM-hacking community, Lua
Scripters, and the Tool-Assisted Speedrun Community.
FS-UAE is an Amiga emulator for Windows, Linux and Mac OS X
based on UAE/WinUAE, with a focus on emulating games.
Features include emulation of Amiga 500, 1200, 4000, CD32
and CDTV, perfectly smooth scrolling on 50Hz displays, support
for floppy images in ADF and IPF formats, CD-ROM images in ISO
or BIN/CUE format, mounting folders on your computer as Amiga
hard drives, support for Picasso 96 drivers for high-color and
high-resolution Workbench displays, and more.
A unique feature is support for cross-platform online play. You
can now play Amiga games against (or with) friends over the
Internet.
The emulator uses the latest Amiga emulation code from the
WinUAE project and requires a moderately fast computer with
accelerated graphics (OpenGL) to work. A game pad or joystick is
recommended, but not required (FS-UAE can emulate a joystick
using the cursor keys and right ctrl/alt keys).
FS-UAE Arcade is a fullscreen Amiga game browser for FS-UAE.
FS-UAE Launcher is a graphical configuration program and launcher for FS-UAE.
This library is intended to be used by applications that need to communicate with (or at least identify) devices that are attached via a parallel port. For Linux, there are some wrinkles in communicating with devices on parallel ports (see /usr/share/doc/packages/libieee1284/README). The aim of this library is to take all the worry about these wrinkles from the application. It figures out which method is appropriate for the currently running kernel. For instance, if the application wants to know the device ID of a device on a particular port, it asks the library for the the device ID. The library then figures out if it is available via /proc (in any of the possible locations) and, if not, tries asking the device itself. If /dev/parport0 is not available for use, it tries ioperm; if that fails, it tries /dev/port. The application does not have to care.