Skip to content

TandyColorComputer3/DriveWire-4-FX

 
 

Repository files navigation

DriveWire 4 FX

DriveWire 4 FX Main Window

Technical Fixes

  • ✅ Migrated UI from Eclipse SWT to JavaFX 21
  • ✅ Fixed threading issues: replaced Display.syncExec() with Platform.runLater() for JavaFX compatibility
  • ✅ Fixed NullPointerException crashes in addToServerLog(), applyMIDIStatus(), and doShutdown()
  • ✅ Implemented disk persistence: mounted disk images remembered across application restarts
  • ✅ File picker remembers last used directory
  • ✅ Fixed disk table updates: LED, reads, and writes now update in real-time
  • ✅ UI layout persistence: split pane divider position and column widths saved/restored
  • ✅ Fixed disk properties dialog: displays all disk parameters with dynamic updates
  • ✅ Connection management: disconnect/reconnect to different DriveWire servers
  • ✅ Fixed command console: dw command and subcommands now work correctly
  • ✅ Fixed port normalization: SyncThread uses default port (6800) when port is 0 or invalid
  • ✅ HDB-DOS translation mode persistence
  • ✅ View mode toggle (Dashboard/Advanced) with persistence
  • ✅ Fixed status bar display: shows "Client: IP:port" when connected
  • ✅ Fixed file column display: shows only filename, full path in status bar
  • ✅ Center-justified table columns (LED, Drive, File, Reads, Writes)
  • ✅ Fixed TCP device connection blocking: added timeout to ServerSocket.accept()
  • ✅ Fixed connection pool management: improved reuse of closed/stale connections
  • ✅ Fixed NullPointerException in connection announcement when porthandler is null

Requirements

  • Java 21 (with JavaFX included)
  • Apache Ant (for building)

Quick Start

  1. Build the project:

    cd drivewire4_from_source/drivewireserver-git/DriveWireUI
    ant create_run_jar
  2. Run the JavaFX UI:

    .\run-javafx.bat    # Windows
    # or
    .\run-javafx.ps1   # PowerShell

Building

The project uses Apache Ant for building. Ensure you have Java 21 installed, then:

cd drivewire4_from_source/drivewireserver-git/DriveWireUI
ant create_run_jar

This will create DriveWireUI.jar in the DriveWireUI directory.

Project Structure

  • drivewire4_from_source/drivewireserver-git/DriveWireUI/src/ - JavaFX UI source code
  • drivewire4_from_source/drivewireserver-git/DriveWireUI/src/com/groupunix/drivewireui/fxml/ - FXML layouts
  • drivewire4_from_source/drivewireserver-git/DriveWireUI/src/com/groupunix/drivewireui/css/ - Stylesheets
  • drivewire4_from_source/drivewireserver-git/java/src/ - DriveWire server core

About

DriveWire 4 JavaFX version

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 89.6%
  • Objective-C 5.0%
  • Pascal 2.1%
  • TeX 0.8%
  • CSS 0.7%
  • HTML 0.7%
  • Other 1.1%