The TeensyROM Firmware Update 0.6.7, released on June 14, 2025, brings noticeable performance and stability improvements to the cartridge. Most notably, NFC tag detection has been enhanced, offering faster response times and better accuracy across large libraries. In addition, the TeensyROM Firmware Update includes minor bug fixes for USB-MIDI and Ethernet/Telnet features, resulting in smoother music playback and remote connections. Updating is quick—just copy the file to your SD card or USB drive and use the built in firmware updater.

Here’s a full listing of the changes in 0.6.7 Release 2025/06/14

  • Note: EEPROM settings will be reset with this FW version (color settings added)
  • TeensyROM UI Customizable color scheme
    • Color setting page addition/features:
      • ‘C’ (capital C) from any Directory Menu to enter page
      • Choose any of the 16 available colors for 7 different color parameters.
      • 6 presets available, or create your own scheme
    • Color scheme saved in TR EEPROM for recollection after power down/reboot
    • Some general color consolidation/standardization so all are customizable
  • Very Large CRT file support: (Beta)
    • Example files in this category “A Pig Quest”, “Eye of the Beholder” and “SNK vs Capcom”
    • CRT Files >850Kb employ a bank swapping from SD card (only) mechanism
      • First 850Kb stored in TR RAM as usual, remainder are marked for swapping
      • Uses the DMA signal to halt the CPU for ~3mS during an un-cached bank swap.
        • No actual DMA (bus mastering) takes place
      • Swaps are fast and typically only take place during “scene changes” in games.
        • Should be imperceptible to user experience.
    • 8ea 8K bank RAM cache with lookup to re-use already cached banks without pausing
    • Uses “old school” REU type of DMA assertion for fast pausing and no additional CPU execution
      • Not reliable on some systems (Most C128s and a low percentage of NTSC systems)
      • DMA Pause check utility included in Test+Diags dir to test specific system DMA reliability
        • Written in BASIC with test hooks in TR BASIC commands IO Handler
    • Many large CRT files have been tested with this scheme, all are working smoothly (as long as host C64 passes DMA check)
    • File sizes of <850KB continue to work as they do today, all served directly out of RAM.
    • See full CRT implementation details here.
    • Thank yous:
      • @Boris Schneider-Johne for the general idea behind this capability, very much appreciate the brainstorming!
      • @DigitalMan, @Hexx, @William Manganaro, and @JTHonn for the testing and feedback!
  • ASID Player: (rev to 1.3)
    • New ASID packet types decoding/application:
      • Write Order: Ability to customize the order in which regs are written to the SID
        • ‘w’ to Stop Forced Reg Write Order
      • Framerate: Expected Vid, Speed Mult, Buffering requested, Frame Delta uS
        • Parameters printed to screen, Frame rate applied to buffer/timer.
      • Expected SID types: Chip index & chip type printed to screen
      • Thank you @tubesockor for the new packet specification, SFII builds, and general guidance/reviews!
        • Tested with SID Factory II advance build, supporting release coming soon.
    • 2nd/3rd SID address defaults from $d420/$d440 to $df00/None (for commonality with Cynthcart 2nd SID address)
    • Fix: Start/Stop Message Tokens used incorrect addressing
  • Serial/Remote interface:
    • GetDirectoryCommand now checks for directory existence and returns error codes for specific issues.
    • GetFileCommand now checks for storage availability and returns error codes for specific issues.
    • Fix: Remote CopyFile() now properly overwrites instead of appending.
      • Thank you @Hexx for these updates/pushes
    • ‘v’ version check available in minimal mode (as well as normal)
    • Print name of remote launched file/path to USB serial
    • Remote tokens to control DMA system pause via USB serial
    • Remote token to set TR UI colors remotely
  • Swiftlink compatibility updates:
    • Improved compatibility with the Hayes Modem standard and C64OS
      • Thank you to @Greg Nacu for all your guidance/support/feedback!
      • TR can now be used for C64OS Networking beginning w/ C64OS v1.08
    • AT Command updates/additions:
      • ATEx Turn Echo on/off (1/0)
      • ATVx Verbose mode on/off (1/0)
        • impacts response codes for all commands (keywords vs numeric)
          • also text suppression for atdt, atc, ate, and atv commands
      • ATI Host Info: “TeensyROM” and “Firmware v<version #>”
      • ATDT<:Port>
        • Ethernet init here instead of on SwiftLink startup
        • Allow quotes before/after server name or port
      • ATZ (soft reset) restores echo and verbose mode, regardless of argument
      • ATH (Hook) Dummy function to return OK, +++ command already disconnects
      • AT? help list update
      • All AT commands now use standard response codes when complete
        • Key word or Number depending on Verbose setting
          • Key words sent as upper case ASCII (aka lower case PETSCII)
        • Followed by a single carriage return
    • Hardware handshaking
      • Status register DCD (Carrier Detect) bit now readable for connect status
  • SID Player:
    • Fix: Correctly initialize timer for multi-speed (2x/4x/6x/8x) SIDs
      • Thank you @DivertigO for the find and testing
    • Fix: Corrected row# for set background SID “Done” message
  • TR BASIC Commands:
    • Allow TLOAD to non-$0801 locations
      • Will error if conflict with TR BASIC Ext code ($c000-d000)
    • Thank you @RMR for the find and fix
  • General
    • CIA TimeOfDay clock check BASIC program added to TR Test+Diags directory
    • Build option to force NTSC & skip auto check (DbgForceNTSC)
    • Build option in assy prints init status on TR menu/CRT start (DbgVerbose)
    • IO1 check now in CRT, but only if DbgVerbose enabled
    • Debug and Swiftlink messages indicated at startup when enabled
Subscribe
Notify of
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments