Are you totally MAD?


“I perform Bare Metal Engineering by programming microprocessors & their associated hardware directly in Machine Code via an Assembler and Forth - DH

Are you out of your mind?   Why do it this way?

Then…

Originally this was how it was done, and it was the ONLY way to do it1

I was inspired by one man and one sentence he uttered during a talk…

And this is how I got started2

In those days, computing resources were very limited… 2

  • 1k bytes of Eprom (2708, needed +5v, -5v & +12v to operate and additionally +12 V on the +5v rail and a +25 V pulse on a particular pin in Programming mode)
  • Processors that ran @ 1MHz or 2MHz giving MIPS of under one million instructions per second (< 1.0 MIPS)
  • 1k bytes of Static RAM. 2102’s were common then, and they were ONLY 1 BIT wide, so you needed to wire 8 of them together (in the right way!!) to get 1k bytes of RAM…
  • No Hard Discs  • No Networks  • No PC’s  • No USB, etc  • No computer magazines  • No Internet 2

And now…

https://en.wikipedia.org/wiki/Arduino “an open-source hardware and software company, project, and user community that designs and manufactures single-board microcontrollers and microcontroller kits for building digital devices. Its hardware products are licensed under a CC BY-SA license, while software is licensed under the GNU Lesser General Public License (LGPL) or the GNU General Public License (GPL),[1] permitting the manufacture of Arduino boards and software distribution by anyone. Arduino boards are available commercially from the official website or through authorized distributors”

“Arduino board designs use a variety of microprocessors and controllers. The boards are equipped with sets of digital and analog input/output (I/O) pins that may be interfaced to various expansion boards (‘shields’) or breadboards (for prototyping) and other circuits. The boards feature serial communications interfaces, including Universal Serial Bus (USB) on some models, which are also used for loading programs. The microcontrollers can be programmed using the C and C++ programming languages, using a standard API which is also known as the Arduino language, inspired by the Processing language and used with a modified version of the Processing IDE. In addition to using traditional compiler toolchains, the Arduino project provides an integrated development environment (IDE) and a command line tool developed in Go”

https://en.wikipedia.org/wiki/List_of_open-source_hardware “Open-source hardware comprises computers and computer components with an open design. They are designed as open-source hardware using open-source principles”

https://en.wikipedia.org/wiki/List_of_open-source_hardware_projects “This is a list of open-source hardware projects, including computer systems and components, cameras, radio, telephony, science education, machines and tools, robotics, renewable energy, home automation, medical and biotech, automotive, prototyping, test equipment, and musical instruments”

A Tribute to MAD & Alfred E Neuman

MAD Magazine

Alfred E. Neuman

  1. And very few people had the ability/knowledge and/or the sheer determination (grit) to be able to do this… I WAS ONE OF THEM !! 

  2. You youngsters have NEVER HAD IT SO GOOD !!  2 3


Updated: 29th April 2022 by David Husband
© 11th September 2021, David Husband a.k.a. Baremetal Engineer Extraordinaire
All Rights Reserved – All Trademarks & Copyrights Acknowledged
All personal information is subject to the Data Protection Act 2018 & the UK GDPR
“ad auxilium aliis ad auxilium sibi”