Bineye

Windows tool to observe and manipulate integer numbers and color bits

June 30, 2020
In category Projects

One of the first programming challenges I’ve had when I started to understand how code works, was to convert integers to binary, octal and hexadecimal forms.

I created the first Visual Basic 6 project back in June of 1999 and it had 4 text boxes, one for each numeric base format. Each format can be converted to the corresponding bases and vise versa.

Numeric Systems 1.0

For some reason that I cannot recall, the version 1.5, also created with Visual Basic 6 in 2000, was more minimalistic than the v1.0:

Numeric Systems 1.5

Source code of DecToLit that stands for decimal to litigant (litigant was what I got back then from the translator for binary!):

Function DecToLit(DecNum1 As String)

Dim ValueFields1(1000) As Long, ValueFields2(1000) As Long

Metritis1 = 1: Metritis2 = 1
ValueFields1(1) = Val(DecNum1)
FinalData = ""

Do
  Metritis1 = Metritis1 + 1
  ValueFields1(Metritis1) = ValueFields1(Metritis1 - 1) \ 2
Loop Until ValueFields1(Metritis1) = 0

Do
  Metritis2 = Metritis2 + 1
  ValueFields2(Metritis2) = ValueFields1(Metritis2 - 1) Mod 2
Loop Until ValueFields1(Metritis2 - 1) = 0

Metritis2 = Metritis2 + 1

For i = 1 To Metritis1 - 1
   Metritis2 = Metritis2 - 1
   FinalData = FinalData + Wtrim$(Str$(ValueFields2(Metritis2 - 1)))
Next i

DecToLit = RemoveZero$(UCase$(FinalData))

Erase ValueFields1, ValueFields2

End Function

Then at the same year, I decided that I needed something more serious and translate properly 32bit integers to 16bit words and 8bit bytes along with base conversions and RGB color support. I started a new VB6 project with the name of BINxWAR. It was way more complicated and it had automatic bidirectional conversions and expansions of each number:

BINxWAR v1.0

I was very happy from the result and it served me well for more than 6 years.

After several years and with much better knowledge of C++, I decided that I wanted to have a proper multi-conversion tool that would translate bytes and colors in a more analytical way, so, at 2007 I started a VC++ MFC project with the name Bineye that stands for Binary Eye. It could convert 32bit integers, analyze low and high words and bytes, all the corresponding base conversions and translate to a full RGBA colors:

Bineye

It is an orgasm of C++ Object Oriented implementation! It also has advanced MFC and Win32 API painting and custom controls.

After several years at 2014, I branded it under the name Wiznet Bineye, a small startup that me and some friends created. The release article can be found here. Softpedia and Windows 7 Download published it as a freeware and I am now open sourcing the latest release C++ MFC code under BSD 2-Clause License. The Github repository can be found here.

Links

0 0

comments powered by Disqus