Skip to content

About

Research and practical toolkit for preserving, understanding and modernizing FoxPro, dBase, DBF and other long-lived business software.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

7 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

JASS Legacy Software Lab

A practical retro-computing and legacy-software modernization laboratory built with 86Box.

Status Platform Focus

Overview

JASS Legacy Software Lab is a personal laboratory for preserving, exploring, testing, and modernizing classic DOS and Windows business software.

The lab keeps historically appropriate virtual machines available so that legacy applications, databases, development tools, file formats, and workflows can be studied in their original environment.

The purpose is both software preservation and legacy-system modernization: understand the original system first, then build a safe path toward Python, SQL, SQLite, PostgreSQL, and PySide6.

Current Lab


Virtual Machine Operating System Primary Purpose Status


MS-DOS 6.22 MS-DOS 6.22 DOS software, ✅ Working xBase, Clipper,
DBF tools

Windows 3.1 Microsoft Windows Early Windows ✅ Working 3.1 applications

Windows 3.11 Microsoft Windows Windows 3.x ✅ Working 3.11 compatibility

Windows 95 Windows 95 OSR2.5 Late DOS/Windows ✅ Working OSR2.5 software

Windows 98 Windows 98 FoxPro, Office ✅ Working 97, late-1990s
software

The machines are maintained independently so experiments do not disturb another environment.

Lab Timeline

MS-DOS 6.22
    ↓
Windows 3.1
    ↓
Windows 3.11
    ↓
Windows 95 OSR2.5
    ↓
Windows 98
    ↓
Modern Python / SQL / PySide6

Hardware Profiles

MS-DOS 6.22

  • 86Box
  • Alaris Cougar 486BL platform
  • Intel 486-class CPU
  • 50 MHz
  • 16 MB RAM
  • Tseng ET4000AX graphics
  • Sound Blaster Pro v2
  • IDE hard disk
  • 3.5-inch 1.44 MB floppy

Windows 3.1 / Windows 3.11

  • 86Box
  • Alaris Cougar 486BL platform
  • IBM 486BL2 / 50 MHz
  • 16 MB RAM
  • Tseng ET4000AX graphics
  • Sound Blaster Pro v2
  • approximately 159 MiB IDE disk
  • 3.5-inch 1.44 MB floppy
  • ATAPI CD-ROM

Windows 95 OSR2.5

  • 86Box
  • Intel 440LX-era platform
  • Pentium-class CPU
  • 32 MB RAM
  • S3 Trio64 graphics
  • Sound Blaster Pro v2
  • IDE hard disk
  • ATAPI CD-ROM

Windows 98

  • 86Box
  • Isolated late-1990s environment
  • FoxPro
  • Office 97
  • Legacy application compatibility testing

Legacy Technologies

The laboratory is intended for work with:

  • dBASE
  • Clipper
  • FoxPro
  • Visual FoxPro
  • DBF / xBase databases
  • DOS batch files
  • Windows 3.x applications
  • Windows 95/98 applications
  • Paradox
  • Borland Database Engine (BDE)
  • Delphi-era database applications
  • Classic business applications
  • Accounting and inventory systems
  • Administrative and land-record systems
  • Industrial and oil-field legacy applications

Modernization Workflow

Legacy Application
       ↓
Original DOS / Windows Environment
       ↓
Identify Files & Database Formats
       ↓
DBF / xBase / Proprietary Data
       ↓
Schema & Data Analysis
       ↓
Clean / Validate / Transform
       ↓
SQLite / PostgreSQL
       ↓
Python Services
       ↓
PySide6 Application
       ↓
Modernized Legacy System

The original application remains available as a reference implementation while modernization work is performed on copies.

Suggested Experiments

DOS 6.22

  • Install Clipper
  • Install dBASE
  • Create classic .DBF databases
  • Study .DBF, .DBT, and index files
  • Write DOS batch utilities
  • Compile and run xBase applications

Windows 3.1

  • Explore Program Manager
  • Test Windows 3.x applications
  • Study early Windows development environments
  • Test classic database applications

Windows 3.11

  • Explore the Windows 3.x networking era
  • Test networking-era applications
  • Compare Windows 3.11 with Windows 3.1
  • Study early-1990s business software

Windows 95 OSR2.5

  • Study the transition toward 32-bit Windows
  • Test late DOS/Windows applications
  • Explore legacy installers and drivers
  • Test early networking and database applications

Windows 98

  • Study late-1990s business software
  • Run FoxPro
  • Run Office 97
  • Examine DOS/Win9x application compatibility

Modern Toolkit

The retro environments are complemented by:

  • Python
  • PySide6
  • SQLite
  • PostgreSQL
  • SQL
  • DBF readers/writers
  • CSV/Excel conversion
  • OCR and document processing
  • RAG and knowledge-management tools
  • Git/GitHub

Preservation Rules

  1. Keep legacy VMs isolated from the Internet where practical.
  2. Maintain clean backups of working machines.
  3. Clone a VM before risky experiments.
  4. Preserve original installation media.
  5. Do not modify a known-good baseline unnecessarily.
  6. Document hardware and disk geometry.
  7. Preserve original database files before conversion.
  8. Perform migration work on copies of legacy data.

Golden Master Principle

             GOLDEN MASTER
                  │
          ┌───────┴───────┐
          ↓               ↓
     Experiment A    Experiment B
          ↓               ↓
       Keep/Discard    Keep/Discard

A working baseline remains untouched.

Suggested Repository Structure

JASS-Legacy-Software-Lab/
│
├── README.md
├── docs/
│   ├── lab-architecture.md
│   ├── vm-inventory.md
│   ├── legacy-software.md
│   ├── dbf-modernization.md
│   └── troubleshooting.md
│
├── dos/
│   ├── ms-dos-6.22/
│   ├── dbase/
│   └── clipper/
│
├── windows-3x/
│   ├── windows-3.1/
│   └── windows-3.11/
│
├── windows-9x/
│   ├── windows-95/
│   └── windows-98/
│
├── databases/
│   ├── dbf/
│   ├── sqlite/
│   └── postgres/
│
├── modernization/
│   ├── extraction/
│   ├── transformation/
│   ├── validation/
│   └── migration/
│
└── tools/
    ├── dbf-inspector/
    ├── dbf-converter/
    └── legacy-data-tools/

JASS-Legacy-Software-Lab

image

Long-Term Objectives

Phase 1 --- Preservation

  • Maintain working DOS and Windows environments.
  • Archive installation media and configuration information.
  • Document significant legacy software.

Phase 2 --- Exploration

  • Install Clipper and dBASE.
  • Build sample DBF applications.
  • Explore FoxPro and Visual FoxPro.
  • Investigate BDE and Paradox-era systems.

Phase 3 --- Modernization

  • Extract DBF data.
  • Analyze legacy schemas.
  • Convert data to SQLite/PostgreSQL.
  • Recreate business logic in Python.
  • Build modern PySide6 interfaces.

Phase 4 --- Demonstration

Build complete modernization examples:

1990s DOS Application
        ↓
       DBF
        ↓
Data Extraction
        ↓
     SQLite
        ↓
     Python
        ↓
     PySide6
        ↓
Modern Desktop Application

Why This Lab Matters

Large amounts of business software created in the 1980s, 1990s, and early 2000s were built around DOS, dBASE, Clipper, FoxPro, DBF, Paradox, BDE, Visual Basic, and Delphi.

Organizations can still encounter these systems because they contain years of accumulated business rules and historical data.

Understanding the original environment helps answer:

  • What did the original application actually do?
  • Where is the business logic?
  • Which database format does it use?
  • Which fields are authoritative?
  • Which calculations are embedded in the application?
  • What can be migrated safely?
  • What should be preserved?
  • What should be rewritten?

The lab bridges legacy software archaeology and modern software engineering.

Repository Name

JASS-Legacy-Software-Lab

This name is deliberately broad enough to cover DOS, Windows 3.x, Windows 9x, DBF/xBase, FoxPro, Clipper, and future modernization tooling.

Status

Core laboratory environments: OPERATIONAL ✅

DOS 6.22 → Windows 3.1 → Windows 3.11 → Windows 95 OSR2.5 → Windows 98

The complete foundation is now in place for legacy software exploration, DBF/xBase research, and modernization work.

License

This repository is intended for documentation, configuration, scripts, research notes, and modernization tooling.

Operating-system installation media and commercial legacy software are not included unless redistribution is explicitly permitted by the applicable license.

Author

JASS

Independent software development, legacy-system research, database modernization, Python, and PySide6.

About

Research and practical toolkit for preserving, understanding and modernizing FoxPro, dBase, DBF and other long-lived business software.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages