Skip to content

August 2021 Release

Compare
Choose a tag to compare
@dmcnaugh dmcnaugh released this 06 Aug 04:41
280c333

THESE PACKAGES MAY NOT BE UPLOADED OR HOSTED ANYWHERE ELSE.​

Release Notes

This is a minor release that:

  • flushes the printer cache file to disk periodically to allow access when the printer is not busy
  • responds to the IMSAI PTR-300 printer initialisation command to reset the printer
  • adds 132 column paper options to the printer, LPT: device on the web UI
  • performs a printer initialisation command to reset the printer when Reset pressed in LPT: device on the web UI
  • adds support for a hardware parallel printer interface for LPT:
  • adds support for a printer initialisation string for a hardware printer connected to the parallel port

Firmware updates:

  • the ESP-IDF libraries for file handling are not thread aware:
    • so the printer cache file is now closed after a timeout period of 0.5-1 second after print activity ceases
    • this allows other processes to access the content of the printer cache file when the printer is not busy
  • this firmware now supports a hardware parallel printer via a hardware parallel printer interface connected to the 16-pin Patch header on the back of the IMSAI8008esp
    • details for building your own hardware parallel printer interface will be published soon
    • to use the hardware parallel printer interface an environment variable must set set in boot.conf as follows:
      • LPT.device=PARALLEL
      • when this interface is active, both the printer cache file and the web UI virtual printer are disabled
  • the imsaisim printer "device" is strictly 7-bit ASCII, modelled on the IMSAI PTR-300 line printer:
    • original IMSAI software also sends a value of 0x80 to initialise the printer
      • the CP/M BIOS's (both 2.2 and 3) both send this initialisation code when CP/M boots
      • however the imsaisim printer driver has previously ignored this initialisation code
    • the IMSAI8080esp now responds to a value of 0x80 to initialise the printer as follows:
      • the printer cache file is closed and truncated to clear the cache
      • if the hardware parallel printer interface is being used, a printer initialisation string can be sent to the printer
        • the printer initialisation string LPT.init is set in boot.conf and can contain the following escaped control codes:
          • ^[ to represent ASCII <ESC>
          • ^L to represent ASCII <FF>
          • ^J to represent ASCII <LF>
          • ^M to represent ASCII <CR>
          • ^^ to represent ASCII ^

For example:

LPT.init=^[E

will send <ESC>E to initialise an HP PCL5 compatible printer.

Desktop UI updates:

  • Updated GUI Version to webfrontend-v1.8.0
  • Updates to LPT: device
    • adds 132 column paper options
      • the Paper button now cycles through 6 paper options:
        • 8.5" , 80-column - blue-line; green-bar; white, followed by
        • 14" , 132-column - blue-line; green-bar; white
    • the Reset button now signals to the IMSAI8080esp to perform a printer initialisation (see above)
    • the LPT: device is reset when the IMSAI8080esp performs a printer initialisation (see above)
    • the Line Feed button now correctly advances the line count and does not corrupt subsequent form feeds

The bundle is made of three parts:

  • The FIRMWARE for the ESP32-PICO-KIT
  • The IMAGE for the microSD card
  • An update.bin file for updating the desktop GUI

You only need the imsaisim_esp32.bin file from the FIRMWARE bundle if upgrading from v1.7.x
and the update.bin file to update the desktop GUI to v1.8.0

You can simply drag-and-drop the update.bin file onto the SYS: icon on the desktop GUI. When the upload is complete, reboot the ESP32 and the update will be identified, unpacked and installed. Watch the output on the boot console (typically via USB port @ 115200 8N1) to see the process proceed.

FIRMWARE

The FIRMWARE package is a ZIP file containing 6 files

COPYRIGHT.txt
FLASHING.md
bootloader.bin        22K 
imsai_part_table.bin  3.0K 
imsaisim_esp32.bin    979K 
ota_data_initial.bin  8.0K 

Instructions for flashing the firmware to an existing system are included in the Updating Software guide

The FLASHING.md file contains instructions for flashing the firmware to a new ESP32-PICO-KIT

IMAGE

The IMAGE package is a ZIP file of the complete contents of the microSD card and can simply be unzipped onto a newly formatted (FAT32) microSD card with a capacity of 128MB or greater.

Known Issues

  1. There is no UI for changing hard disk images, the required image must be set using the environment variable HARDDISK in the boot.conf file and then the ESP32 hard reset to reload the environment.
  2. The boot.conf file can't include a # in PASSWORD. The occurrence of # at any point on any line indicates the start of a comment.
  3. A race condition can occur when the 'AT' Modem is used as the CP/M console device CON:. This will cause a buffer overflow and the IMSAI8080esp will reboot. To avoid this race condition, always use the new AT&A1 "daemon" (silent) mode described above.