Firmware (PIC)

LED Toy main page Hardware design files Host software Images

 ledtoy-fw-10 (31-JAN-2006)
ledtoy-fw-10.tar.gz (30 kB)

Changes:

  • lt24merge.pl: usage now contains detailed syntax description
  • lt24merge.pl: usage confused $ARGV[0] with $0
  • lt24merge.pl: added option -A to produce assembler output for an image file
  • pgm.asm, Makefile: build default image on the fly instead of using a hard-coded version

 ledtoy-fw-9 (29-JAN-2006)
ledtoy-fw-9.tar.gz (30 kB)

Changes:

  • monitor.inc: wait 1 ms before checking online status to let line settle
  • ui.inc: moved illumination sensor experiment into new file xp_ia.inc
  • xp_cc.inc, xp_ca.inc: added experimental code for capacitive sensor
  • Makefile: experimental modules can now be selected
  • object type is now implicit, indicated by image width (item is a sequence if the width is zero)
  • the gap can now be extended by adding an image-specific flyback interval
  • lt24merge.pl: image specification can now contain flyback gap, as trailing number of pixels separated with two slashes (e.g., //100)
  • display of gap and wide image is now interrupted if there is a pending button down change
  • ui.inc: don't turn off pull-ups if not reading the button (revert to version 3 behaviour)
  • added support for V4 hardware
  • hex2bin.pl: new option "-c 0x" to cut the firmware at address 0x
  • pgm.asm: hard-coded a smiley, such that there is something to see even with only the initial programming

 ledtoy-fw-8 (26-DEC-2005)
ledtoy-fw-8.tar.gz (28 kB)

Changes:

  • ui.inc: made display loop show 4*80% light, instead of 3*70%+90%
  • ui.inc: correctly adjusted the delays in the read-from-Flash display loop
  • lt24merge.pl: display memory usage statistics
  • lt24merge.pl: use "wide" image format if the image has white lateral borders
  • ui.inc: load "wide" images into RAM if they are less than 24 pixels wide
  • type 0 objects (regular images) now have the width in the lower word of the header, just like "wide" images
  • lt24merge.pl:load_xbm: "open" used $_ instead of $_[0], which worked by sheer coincidence
  • ui.inc: recalculated nap ramp to range from 80-2680 us instead of 20-2000 us
  • pgm.asm: changed default nap from 600 us to 940 us
  • cntab.pl: new script to calculate the nap ramp
  • Makefile: clean up after failed build with "rm -f" instead of "rm -rf"
  • lt24merge.pl: changed file mode from 644 to 755
  • dumpfw.pl: new script to make a debugging dump of a compound firmware binary
  • lt24merge.pl: images can now be combined with the bit operators & (and), | (or), ^ (xor), and ~ (not)
  • si*.xbm: redesigned the symbols and removed entries above three
  • ui.inc: changed timeout in "run" when button is never released from T_CONFIG to T_IDLE
  • Makefile: made pgm.bin "phony", so that "make download" will always rebuild the compound firmware
  • README: described how to replace dead firmware
  • added support for image sequences (see README and faces.seq)

 ledtoy-fw-7 (25-DEC-2005)
ledtoy-fw-7.tar.gz (24 kB)

Changes:

  • Makefile: added $(IMAGES) to "dist" dependencies
  • pgm.asm: removed tovec[hl] left over from earlier versions
  • added environment variable LEDTOY_IMAGES to set user-provided list of images
  • ui.inc: modified display loop to never activate unwanted pixels

 ledtoy-fw-6 (23-DEC-2005)
ledtoy-fw-6.tar.gz (23 kB)

Changes:

  • renamed "*_image*" and "*_IMAGE" to "*_select*" and "*_SELECT", respectively
  • added support for "wide" images
  • lt24merge.pl: xbm parser now also accepts xv's "X11 bitmap" format
  • ufo.xbm: example "wide" images

 ledtoy-fw-5 (20-DEC-2005)
ledtoy-fw-5.tar.gz (21 kB)

Changes:

  • lt24merge.pl now directly converts X bitmaps to binary data
  • removed bitmap2asm.c
  • Makefile: removed rule for images.inc
  • pgm.asm: fixed LLB24V1 typos (should be only one L)
  • moved image conversion (pin swapping and polarity inversion) from ui.inc to lt24merge.pl

 ledtoy-fw-4 (19-DEC-2005)
ledtoy-fw-4.tar.gz (22 kB)

Changes:

  • ui.inc: turn off pull-ups if not reading the button
  • pgm.asm: removed some unused constants
  • pgm.asm: removed padding before the image
  • ui.inc: use image number instead of pointer position to detect last image
  • bitmap2asm.c: added option -b to produce binary output
  • lt24merge.pl: new script to merge firmware with images
  • README: added step-by-step instructions for downloading new firmware and images
  • added support for V3 boards (software is identical to V2)

 ledtoy-fw-3 (4-DEC-2005)
ledtoy-fw-3.tar.gz (20 kB)

Changes:

  • cleaned up hardware property handling
  • added support for V2 boards
  • Makefile: clarified warning why we pretend to use an 16F819
  • Makefile: added -bp option for recent versions of picp (using 0.6.7)
  • README: user should no longer configure IMAGES
  • Makefile: made pgm.hex depend on "Makefile"
  • timeout 0 is now infinite
  • to avoid ambiguities, menu items are now indicated with two adjacent LEDs instead of one
  • pgm.asm, ui.inc: did a bit of cleanup

 ledtoy-fw-2 (25-NOV-2005)
ledtoy-fw-2.tar.gz (20 kB)

Changes:

  • initial public release
  • moved cover.fig to the hardware package

Last update: 31-JAN-2006   Werner Almesberger