FOSSPicks
hx
Even if you're not a developer or a "hacker," sooner or later you'll need to use a hex editor. This is primarily because a hex editor is a bridge between the worlds of code, binary, and content, allowing you to open and view a file regardless of its format or whether the file is corrupt or complete or not. The file could be an executable binary, or it could be a LibreOffice document corrupted whilst saving. Either way, a hex editor will gladly ignore the context of a file and happily display its contents. Because the context has been lost, that display usually defaults to hexadecimal values, or base 16, representing the raw binary contents of a file. Thanks to your computers' binary logic, this single hex value is a "nibble" of data, usually grouped into pairs to form a "byte." Bytes are also turned into ASCII text, so you can read raw data if necessary, and those bytes in turn are grouped into columns containing 64 bits per column. This makes finding a specific location or offset much easier, whether that's in your computer's raw memory or within a file.
As a new project, hx is the beginnings of just such a hex editor that runs from the command line. It's tiny and compiles almost instantly thanks to a single dependency on the ordinary C POSIX libraries. This is exactly what you need because you often use hex editors for trawling through large dump files, virtual devices, or executables, and you need great memory management and performance. Its editor is vim-like, where you can switch between normal mode and command mode. Navigation keys are also the same as vim, and you should be able to start editing without referring to the excellent man page if you're already familiar with vim. This means you can search, update, edit, insert, and replace right from the command line, working with binary just as you can with text.
Project Website
Audio visualizer
Oscilloscope 1.0.7
The first audio I saw visualized on a computer screen was via a cheap digital audio sampler on the Commodore Amiga running Aegis Audiomaster II. Audiomaster had a function that would monitor the (stereo, 8-bit) live input on the sampler and use the audio signal just like source voltages for a software oscilloscope. Most of us think of an oscilloscope as a small, square CRT screen housed within a large brick-like box, typically found within a laboratory. The CRT would display the measured values from a couple of inputs mapped across the x and y axes in bright green, and while Audiomaster's oscilloscope also tracked the x and y (left and right inputs) in green, it couldn't be used to reverse engineer circuits. But you could see the effects of frequency modulation on a low-frequency sine wave, and the results were fascinating.
Over the years, there haven't been many purely software oscilloscopes. When they are developed, they're usually designed to go with hardware that's better equipped for high-frequency changes in voltage rather than changes in audio. But audio oscilloscopes also have a long tradition and are still used by modular synthesis geeks and audio engineers, and this software, called Oscilloscope, is the best one I've seen for years. What's brilliant about Oscilloscope is that it faithfully recreates the 1970s characteristics of those CRT oscilloscopes, particularly with the way it renders the waveforms and the persistence of the screen. And because Oscilloscope is designed for audio, it supports high sample rates (e.g., 19,200), it will load audio files for playback, and recent versions will monitor audio input, too. With some clever audio routing, you can also use it to visualize real-time software synthesis and other software audio sources. Give it a try.
Project Website
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
So Long Neofetch and Thanks for the Info
Today is a day that every Linux user who enjoys bragging about their system(s) will mourn, as Neofetch has come to an end.
-
Ubuntu 24.04 Comes with a “Flaw"
If you're thinking you might want to upgrade from your current Ubuntu release to the latest, there's something you might want to consider before doing so.
-
Canonical Releases Ubuntu 24.04
After a brief pause because of the XZ vulnerability, Ubuntu 24.04 is now available for install.
-
Linux Servers Targeted by Akira Ransomware
A group of bad actors who have already extorted $42 million have their sights set on the Linux platform.
-
TUXEDO Computers Unveils Linux Laptop Featuring AMD Ryzen CPU
This latest release is the first laptop to include the new CPU from Ryzen and Linux preinstalled.
-
XZ Gets the All-Clear
The back door xz vulnerability has been officially reverted for Fedora 40 and versions 38 and 39 were never affected.
-
Canonical Collaborates with Qualcomm on New Venture
This new joint effort is geared toward bringing Ubuntu and Ubuntu Core to Qualcomm-powered devices.
-
Kodi 21.0 Open-Source Entertainment Hub Released
After a year of development, the award-winning Kodi cross-platform, media center software is now available with many new additions and improvements.
-
Linux Usage Increases in Two Key Areas
If market share is your thing, you'll be happy to know that Linux is on the rise in two areas that, if they keep climbing, could have serious meaning for Linux's future.
-
Vulnerability Discovered in xz Libraries
An urgent alert for Fedora 40 has been posted and users should pay attention.