Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 7 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@

# Release version: YYYYMMDD package date + optional in-progress suffix
# (-dev, -rc1, ...). Empty suffix for a final release.
RELEASE_DATE = 20260609
VERSION_SUFFIX =
RELEASE_DATE = 20260612
VERSION_SUFFIX = -dev

# fat95 filesystem handler version
FAT95_MAJOR = 3
Expand All @@ -21,9 +21,9 @@ INSTALL95_VERSION_SUFFIX =
INSTALL95_DATE = 25.01.2026

DD_MAJOR = 2
DD_MINOR = 0
DD_MINOR = 1
DD_VERSION_SUFFIX =
DD_DATE = 01.06.2026
DD_DATE = 12.06.2026

DEBUG95_MAJOR = 3
DEBUG95_MINOR = 19
Expand Down Expand Up @@ -225,6 +225,9 @@ define gen_version_inc
$(Q)echo "$(6) macro" >> $(1)
$(Q)echo " dc.b \"\$$VER: $(2) $(5) ($(7))\"$(if $(8),$(COMMA) LF$(COMMA) 0)" >> $(1)
$(Q)echo " endm" >> $(1)
$(Q)echo "VER_NUMBER macro" >> $(1)
$(Q)echo " dc.b \"$(5)\"" >> $(1)
$(Q)echo " endm" >> $(1)
endef

# Generate version include files
Expand Down
38 changes: 33 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,14 +49,44 @@ Improvements to this handler are developed in my free time. If you'd like to sup

## What's New in

### 20260612-dev

<!-- COMPONENTS:BEGIN -->
#### Components in this release

- `fat95 3.24 (07.06.2026)`
- `install95 3.19 (25.01.2026)`
- `dd 2.1 (12.06.2026)` _(new)_
- `debug95 3.19 (25.01.2026)`
- `SetFileSize 1.1 (25.01.2026)`
- `boot95 3.19 (25.01.2026)`
- `lsfsres 1.0 (16.05.2026)`
<!-- COMPONENTS:END -->

#### Changes

##### fat95 handler

* TBD

##### Tools

**dd 2.1**

* On Kickstart older than 2.0 (V36), `dd` now prints a short message saying it needs Kickstart 2.0+ and exits, instead of failing silently.
* Console output now uses `VFPrintf`.

<details>
<summary>Older releases</summary>

### 20260609

<!-- COMPONENTS:BEGIN -->
#### Components in this release

- `fat95 3.24 (07.06.2026)` _(new)_
- `fat95 3.24 (07.06.2026)`
- `install95 3.19 (25.01.2026)`
- `dd 2.0 (01.06.2026)` _(new)_
- `dd 2.1 (12.06.2026)` _(new)_
- `debug95 3.19 (25.01.2026)`
- `SetFileSize 1.1 (25.01.2026)`
- `boot95 3.19 (25.01.2026)`
Expand Down Expand Up @@ -84,9 +114,6 @@ Improvements to this handler are developed in my free time. If you'd like to sup

* **Archive version is now a date (YYYYMMDD).** The release bundle ships several independently-versioned pieces (`fat95`, `install95`, `dd`, `debug95`, `SetFileSize`, `boot95`, `lsfsres`), each on its own cadence, so a single `v3.x` number for the whole archive never matched what was actually inside.

<details>
<summary>Older releases</summary>

### 3.23 (19.05.2026)

This release brings several reliability fixes, contributed by Stefan Reinauer (@reinauer). Thanks!
Expand Down Expand Up @@ -596,6 +623,7 @@ GNU LGPL v2.1

| Version | Date | Changes |
|---------|------|---------|
| - | 12/06/2026 | 'dd v2.1' |
| v3.24 | 07/06/2026 | New second way to pick a FAT partition via DosType 0x464154FF plus a 0-based number on the device name (CF0: first, CF1: second, ...). *dd 2.0* adds NSD I/O dispatch + INSPECT mode + refactored CLI parsing (breaking change) |
| v3.23 | 05/2026 | Reliability fixes contributed by Stefan Reinauer (@reinauer) |
| v3.22 | 05/2026 | Improved ROM resident handling and microoptimizations for both 68000+ and 68020+ cpu tiers |
Expand Down
43 changes: 4 additions & 39 deletions dist.readme.in
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Author: jaroslav.pulchart@gmail.com (Jaroslav Pulchart), based on work by
Type: disk/misc
Version: @VERSION@
Architecture: m68k-amigaos
Replaces: disk/misc/fat95.v3.23.lha
Replaces: disk/misc/fat95.v20260609.lha
Kurz: Win95/98-kompatibles Dateisystem

fat95 - Win95/98 compatible FAT filesystem handler for AmigaOS. Fork of disk/misc/fat95.lha.
Expand All @@ -16,46 +16,11 @@ COMPONENTS IN THIS RELEASE
WHAT'S NEW (@DATE@)
=======================

fat95 handler:

* 'fat95 3.24' adds a second way to pick which FAT partition a
mountlist mounts. Both ways work and you can mix them.

The new way uses DosType 0x464154FF for every FAT mount and
takes the partition from the number at the end of the device name.
The number is 0-based, like DF0: and HD0: (CF0: is the first, CF1:
the second, and so on, 0 to 254).

This way it uses one FileSystem.resource entry instead of one
per partition. The old way is unchanged. See fat95.guide "Partition
Selection" for details.

tools:

* 'dd 2.0' major update with breaking change in argument positioning
and parsing. 'dd' now uses the standard AmigaOS argument parser, type
`dd ?` for the new usage banner.

The unit number moved from between SRC and DST to a single positional
slot after DST; for device-to-device copies use the keyword form
`US <n>` / `UD <n>`. `FILL:`, `RSPEED:`, `RWSPEED:` are unchanged.
See fat95.guide for more details.

NSD 64-bit I/O support: dd now probes NSD at device open and uses
NSCMD_TD_READ64/WRITE64 when the driver advertises them. This is
an additional dispatch path next to the existing HD_SCSICMD (SCSI
READ10/WRITE10).

INSPECT mode: `dd INSPECT device.name [UNIT n]` prints device
geometry, NSD support, and which command set dd would use.

packaging:

* Archive version is now a date (YYYYMMDD). The release bundle ships
several independently-versioned pieces (fat95, install95, dd, debug95,
SetFileSize, boot95, lsfsres), each on its own cadence, so a single
v3.x number for the whole archive never matched what was actually
inside.
* On Kickstart older than 2.0 (V36), dd now prints a short message
saying it needs Kickstart 2.0+ and exits, instead of failing silently.
* Console output now uses VFPrintf.

Purpose
=======
Expand Down
46 changes: 41 additions & 5 deletions dist/docs/fat95.guide
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@database "fat95"
@$VER: fat95 guide 20260609 (09.06.2026)
@$VER: fat95 guide 20260612-dev (12.06.2026)
@author "Generated by md2guide.py v1.5 (20.05.2026)"
@(c) "See LICENSE"
@font topaz.font 8
Expand All @@ -13,6 +13,7 @@
@{"Win95/98 compatible FAT filesystem handler for AmigaOS." link Win95_98_compatible_FAT_filesystem_handler_for_AmigaOS_}
@{"fat95 handler" link fat95_handler}
@{"What's New in" link What_s_New_in}
@{"20260612-dev" link 20260612_dev}
@{"20260609" link 20260609}
@{"3.23 (19.05.2026)" link 3_23__19_05_2026_}
@{"3.22 (16.05.2026)" link 3_22__16_05_2026_}
Expand Down Expand Up @@ -53,6 +54,7 @@
@{b}Index@{ub}

@{"20260609" link 20260609}
@{"20260612-dev" link 20260612_dev}
@{"3.19 (01.02.2026)" link 3_19__01_02_2026_}
@{"3.20 (16.03.2026)" link 3_20__16_03_2026_}
@{"3.21 (18.04.2026)" link 3_21__18_04_2026_}
Expand Down Expand Up @@ -176,6 +178,7 @@ on Ko-fi (https://ko-fi.com/jaroslavpulchart).
@node What_s_New_in "What's New in"
@{b}What's New in@{ub}
@{i}Subsections:@{ui}
@{" 20260612-dev " link 20260612_dev}
@{" 20260609 " link 20260609}
@{" 3.23 (19.05.2026) " link 3_23__19_05_2026_}
@{" 3.22 (16.05.2026) " link 3_22__16_05_2026_}
Expand All @@ -184,7 +187,39 @@ on Ko-fi (https://ko-fi.com/jaroslavpulchart).
@{" 3.19 (01.02.2026) " link 3_19__01_02_2026_}

----------------------------------------
@{"<< Prev" link fat95_handler} @{"Contents" link Main} @{"Next >>" link 20260609}
@{"<< Prev" link fat95_handler} @{"Contents" link Main} @{"Next >>" link 20260612_dev}

@endnode

@node 20260612_dev "20260612-dev"
@{i}20260612-dev@{ui}

@{b}Components in this release@{ub}

* @{fg shine}fat95 3.24 (07.06.2026)@{fg text}
* @{fg shine}install95 3.19 (25.01.2026)@{fg text}
* @{fg shine}dd 2.1 (12.06.2026)@{fg text} @{i}(new)@{ui}
* @{fg shine}debug95 3.19 (25.01.2026)@{fg text}
* @{fg shine}SetFileSize 1.1 (25.01.2026)@{fg text}
* @{fg shine}boot95 3.19 (25.01.2026)@{fg text}
* @{fg shine}lsfsres 1.0 (16.05.2026)@{fg text}

@{b}Changes@{ub}

@{b}fat95 handler@{ub}

* TBD

@{b}Tools@{ub}

@{b}dd 2.1@{ub}

* On Kickstart older than 2.0 (V36), @{fg shine}dd@{fg text} now prints a short message saying it
needs Kickstart 2.0+ and exits, instead of failing silently.
* Console output now uses @{fg shine}VFPrintf@{fg text}.

----------------------------------------
@{"<< Prev" link What_s_New_in} @{"Contents" link Main} @{"Next >>" link 20260609}

@endnode

Expand All @@ -193,9 +228,9 @@ on Ko-fi (https://ko-fi.com/jaroslavpulchart).

@{b}Components in this release@{ub}

* @{fg shine}fat95 3.24 (07.06.2026)@{fg text} @{i}(new)@{ui}
* @{fg shine}fat95 3.24 (07.06.2026)@{fg text}
* @{fg shine}install95 3.19 (25.01.2026)@{fg text}
* @{fg shine}dd 2.0 (01.06.2026)@{fg text} @{i}(new)@{ui}
* @{fg shine}dd 2.1 (12.06.2026)@{fg text} @{i}(new)@{ui}
* @{fg shine}debug95 3.19 (25.01.2026)@{fg text}
* @{fg shine}SetFileSize 1.1 (25.01.2026)@{fg text}
* @{fg shine}boot95 3.19 (25.01.2026)@{fg text}
Expand Down Expand Up @@ -241,7 +276,7 @@ fallback that already handles >4 GiB I/O on drivers without NSD.
number for the whole archive never matched what was actually inside.

----------------------------------------
@{"<< Prev" link What_s_New_in} @{"Contents" link Main} @{"Next >>" link 3_23__19_05_2026_}
@{"<< Prev" link 20260612_dev} @{"Contents" link Main} @{"Next >>" link 3_23__19_05_2026_}

@endnode

Expand Down Expand Up @@ -1081,6 +1116,7 @@ GNU LGPL v2.1

@{b}Version@{ub} @{b}Date@{ub} @{b}Changes@{ub}
------- ---------- -------------------------
- 12/06/2026 'dd v2.1'
v3.24 07/06/2026 New second way to pick a
FAT partition via DosType
0x464154FF plus a 0-based
Expand Down
3 changes: 3 additions & 0 deletions src/boot95_version.i
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,6 @@ FILE_REVISION = 19
VER_STRING macro
dc.b "$VER: boot95 3.19 (25.01.2026)", LF, 0
endm
VER_NUMBER macro
dc.b "3.19"
endm
Loading