Joe Stack's website was taken down, but there's still some caches, so I thought I'd store some of them here before they're gone too
Home page
Embedded Art is a small independent software house, specializing in process control and automation. In its current form it represents the culmination of 20 years of experience in the software development consulting business. Founded by Joe Stack in 1983 (under the name of Prowess Engineering) in Southern California, the company thrived for 15 years until shifting focus to the Sacramento area to take advantage of growth in the Silicon Valley.
Now, 5 years later, the expertise of Embedded Art has landed in the Austin Area expecting to lend a hand to the growing high technology industry in South-Central Texas.
The concept behind the success of Embedded Art is that we provide the experience and muscle for addressing complex software engineering development tasks. Much of today's programming is a step-wise refinement of previous development projects. With 20 years of experience, we provide the expertise that can effectively navigate around many of the pitfalls that snare the unseasoned engineer (indeed, we've seen many of the same mistakes made again and again by the inexperienced).
Name:
Anonymous2010-02-18 19:39
In the engineering world one's past accomplishments are a good indicator of what might be expected in the future. We're justifiably proud of the company we keep and our contribution to the industry, and we think that our record speaks for itself. Here is a list of some of our customers, their projects and a brief description of part of our contribution to the effort.
Cylink Corporation
Project: The Cylink CY8300 IPSec high-performance security processor
Design the instruction set for the CY8300 internal CPUs (dual RISK processors)
Write and document the CY8000 Cross Assembler
(Hosted on Windows NT, Sun Solaris, and Linux)
Develop the CPU functional validation test suite using the CY8300 assembly language
Develop the CPU simulation environment using Verilog HDL & PLI
Perform validation simulation using both the Verilog "NCSim" environment and on prototype hardware
Write an IPSec Datagram generation/encryption utility for packet generation, encryption/decryption (using DES, TDES, & SHA-1) and authentication (using SHA-1, MD5, HMAC-SHA1, HMAC-MD5, & DES-MAC)
DMC Stratex Networks
Project: The Spectrum and Altium product lines, high-capacity wireless communication platforms (i.e., microwave radios)
Add SNMP Agent support to the highly successful Spectrum II radio
Design and implement the control algorithm for unit failure detection and recovery
Resolve numerous integration and configuration issues from legacy code
Port legacy code base to the new Altium hardware platform and map a maintenance path for the future
Integrate and resolve issues with HTTP Server and Network Management User Interface web page
Work with the QA team to characterize outstanding functionality issues
Occasionally, as experienced software engineering consultants a we are called on to provide more than firmware development services. For this particular client, for example, this involved providing department management and development team strategic advice for the Director of Software Engineering. It also meant serving as mentor and tutor for programmers of all experience levels.
Western Digital Corporation
Project: A high-performance multi-function ESDI/SCSI/Floppy controller for the Apollo networked workstations and high-end PCs.
Design and implement production firmware
Design and implement the host multi-tasking software test platform and implement other Apollo-based utilities to exercise the product for SQA
Serve as technical liaison between Apollo Computer (Chelmsford, MA) and WDC (Irvine, CA)
Equinox Industries/Warner Brothers Studio Stores
Project: Distribution Center Processing Automation
Architect data center automation processing
Implement PM-GUI functionality and complete initial distribution center management software integration effort
Define and design implement and integrate software for:
host merchandising control processing
automated sorting equipment
conveyer management equipment
hand-held RF data entry terminals
shipping dock merchandise management and tracking
Administrate the network equipment deployment and management effort
Interstate Electronics Corporation
Project: IEC 9002 GPS-based Flight Management System
Define and analyze requirements
Implement a flash file system for pilot-defined route storage management (based on the Linear File Storage standard for PCMCIA flash memory)
Project: The IEC 9002 Navigation Database Update Processor, a Windows-based, off-line data reduction tool
Complete and supervise upgrades and modifications
Supervise release cycle and CMS process for product release
Project: IEC 9002 MCDU, an ARINC-739 compatible Multi-purpose Control and Display Unit
Design and implement a Windows NT-hosted development environment for the embedded target's RTOS and operational firmware
Implement the production unit's Built-in-Test Manager and Bootstrap Program Loader (which allows the flash-based firmware to be updated)
Project: GPS Satellite Simulator (Military & Commercial unit)
Design and implement firmware/software for process control
Project: IEC Military Plasma Display, an 80186/82720-based "intelligent" terminal boasting multi-mode text graphics display, ANSI Standard compatibility, multiple virtual screens, and downloadable display generation capability
Design and implement firmware to manage the display, keyboard, and communications hardware
Everett Charles Technologies
Project: ECT 9090(tm) Bare Board Tester
Provide firmware support and update releases for AMD 2900-based measurement controller hardware
Provide user field support and problem tracking and resolution management
Provide software support for OS/2 PM-based test management control software
Implement Version 2 release for test management control software
MOST, Inc.
Project: 2.6GB SCSI II read/write CD-ROM (Magneto/Optical) drive
Design and implement cache algorithms and code featuring anticipatory pre-fetch and write-back cache allowing immediate write command completion with timed write data synchronization
Implement SCSI II compliant cache control command set
Performance analysis and tuning, and debugging
Emulex Corporation
Project: SCSI/ATA(IDE) chipset firmware base (early C++)
Design and implement hardware interface library components
Cable & Computer Technology, Inc.
Project: An AMD-2900 based bit-slice magnetic tape controller
Design and implement upgrades and enhancements
Prepare delivery components and complete end-user acceptance procedure
AEI Kongsberg
Project: AEI Container Maker (a Windows-based CAD package for designing specialized containers)
Design and implement GUI Dialogs and Components
Controlled Induction
Project: A DOS-based, commercial engine analysis & design tool
Design and implement the User Interface and develop processing algorithms
Write and produce the User Manual
Administer the first production run for the product
Taradactyl Technovation, Inc.
Project: The Mileage Elephant (vehicle usage tracker)
Design and implement prototype user interface for host database application.
Teledyne Systems Corporation
Project: An AMD-2900 based bit-slice emulation/simulation of IBM's 32-bit AP101-F floating-point processor
Design and implement fixed and floating-point math functions as well as SIN, COS, and ARC TAN trigonometric functions (using the Cordic Algorithm w/Taylor Series Expansion algorithm developed by IBM)
Design and implement instruction decode processing
Design and implement instruction execution time tracking
Hughes Aircraft, Fullerton
Project: A multi-processor control system composed of six 68000 processors, twenty-two 8085 processors and various dedicated interface hardware
Design and implement hardware fault monitoring processing
Sorrento Electronics, Inc.
Project: Process Control System
Design and implement an Alignment Parameter Entry API
Implement firmware for system Data Transmission Simulator product
Design and implement a Dynamic Link Data Control application to allow engineers to dynamically program and monitor the data being transmitted on multiple serial links
Implement a PL/M-to-DOS API for an engineering software validation test tool
Name:
Anonymous2010-02-18 19:42
Throughout our twenty-year history we have grown as the software industry has grown. Twenty years ago the industry largely regarded the development of end-user software to be an entirely different pursuit than that of an embedded controller application. The main reason being because the operating environments were vastly different. Firmware generally was associated with tight processing constraints in minimally capable hardware environments (and, of course, was burned into ROM).
In recent years, however because of the proliferation of low cost, abundantly capable microprocessors and support hardware, the difference between the embedded firmware operating environment and that of the typical end user application has become almost insignificant.
Name:
Anonymous2010-02-18 19:43
One of the most important aspects of communication is getting the quick view of the 'big picture', no web site is really complete with out the overview.
This page is also a demonstration of an interesting documentation paradox. In its current state, the design is very simple; so simple, that one wonders why even bother with a map. However, without the map it takes a visitor much longer to figure out just how simple the layout is.... ah, that all of life should be so simple.