mirror of
https://github.com/davidgiven/fluxengine.git
synced 2025-10-31 11:17:01 -07:00
Consolidate the Apple II formats together.
This commit is contained in:
2
Makefile
2
Makefile
@@ -177,7 +177,7 @@ endef
|
||||
|
||||
$(call do-encodedecodetest,agat840)
|
||||
$(call do-encodedecodetest,amiga)
|
||||
$(call do-encodedecodetest,appleii140)
|
||||
$(call do-encodedecodetest,apple2,,--140)
|
||||
$(call do-encodedecodetest,atarist,,--360)
|
||||
$(call do-encodedecodetest,atarist,,--370)
|
||||
$(call do-encodedecodetest,atarist,,--400)
|
||||
|
||||
@@ -30,7 +30,8 @@ FluxEngine can remap the sectors from physical to logical using modifiers. If
|
||||
you don't specify a remapping modifier, you get the sectors in the order they
|
||||
appear on the disk.
|
||||
|
||||
If you don't want an image in physical sector order, specify one of these options:
|
||||
If you don't want an image in physical sector order, specify one of these
|
||||
options:
|
||||
|
||||
- `--appledos` Selects AppleDOS sector translation
|
||||
- `--prodos` Selects ProDOS sector translation
|
||||
@@ -40,15 +41,21 @@ These options also select the appropriate file system; FluxEngine has read-only
|
||||
support for all of these. For example:
|
||||
|
||||
```
|
||||
fluxengine ls appleii140 --appledos -f image.flux
|
||||
fluxengine ls apple2 --appledos -f image.flux
|
||||
```
|
||||
|
||||
In addition, some third-party systems use 80-track double sides drives, with
|
||||
the same underlying disk format. These are supported with the `appleii640`
|
||||
profile. The complication here is that the AppleDOS filesystem only supports up
|
||||
the same underlying disk format. The full list of formats supported is:
|
||||
|
||||
- `--140` 35-track single-sided (the normal Apple II format)
|
||||
- `--640` 80-track double-sided
|
||||
|
||||
`--140` is the default.
|
||||
|
||||
The complication here is that the AppleDOS filesystem only supports up
|
||||
to 50 tracks, so it needs tweaking to support larger disks. It treats the
|
||||
second side of the disk as a completely different volume. To access these
|
||||
files, use `--appledos --side1`.
|
||||
files, use `--640 --appledos --side1`.
|
||||
|
||||
[^1]: CP/M disks use the ProDOS translation for the first three tracks and a
|
||||
different translation for all the tracks thereafter.
|
||||
@@ -65,12 +72,12 @@ Reading discs
|
||||
Just do:
|
||||
|
||||
```
|
||||
fluxengine read appleii140
|
||||
fluxengine read apple2
|
||||
```
|
||||
|
||||
(or `appleii640`)
|
||||
(or `apple2 --640`)
|
||||
|
||||
You should end up with an `appleii140.img` which is 143360 bytes long. It will
|
||||
You should end up with an `apple2.img` which is 143360 bytes long. It will
|
||||
be in physical sector ordering if you don't specify a file system format as
|
||||
described above.
|
||||
|
||||
@@ -79,7 +86,7 @@ Writing discs
|
||||
|
||||
Just do:
|
||||
```
|
||||
fluxengine write appleii140 -i appleii140.img
|
||||
fluxengine write apple2 -i apple2.img
|
||||
```
|
||||
|
||||
The image will be expected to be in physical sector ordering if you don't
|
||||
|
||||
@@ -1,10 +1,5 @@
|
||||
comment: 'Apple II generic settings'
|
||||
is_extension: true
|
||||
comment: 'Apple II family'
|
||||
|
||||
drive {
|
||||
high_density: false
|
||||
}
|
||||
|
||||
decoder {
|
||||
apple2 {}
|
||||
}
|
||||
@@ -13,6 +8,66 @@ encoder {
|
||||
apple2 {}
|
||||
}
|
||||
|
||||
|
||||
option_group {
|
||||
comment: "Format variant"
|
||||
|
||||
option {
|
||||
name: "140"
|
||||
comment: '140kB 5.25" 35-track SS'
|
||||
set_by_default: true
|
||||
|
||||
config {
|
||||
layout {
|
||||
tracks: 35
|
||||
sides: 1
|
||||
layoutdata {
|
||||
sector_size: 256
|
||||
physical {
|
||||
start_sector: 0
|
||||
count: 16
|
||||
}
|
||||
}
|
||||
}
|
||||
tpi: 48
|
||||
}
|
||||
}
|
||||
|
||||
option {
|
||||
name: "640"
|
||||
comment: '640kB 5.25" 80-track DS'
|
||||
|
||||
config {
|
||||
layout {
|
||||
tracks: 80
|
||||
sides: 2
|
||||
order: HCS
|
||||
layoutdata {
|
||||
sector_size: 256
|
||||
physical {
|
||||
start_sector: 0
|
||||
count: 16
|
||||
}
|
||||
}
|
||||
}
|
||||
tpi: 96
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
option {
|
||||
name: "side1"
|
||||
comment: "for AppleDOS file system access, read the volume on side 1 of a disk"
|
||||
|
||||
config {
|
||||
filesystem {
|
||||
appledos {
|
||||
filesystem_offset_sectors: 0x500
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
option_group {
|
||||
comment: "Filesystem and sector skew"
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
comment: 'Apple II 140kB 5.25" 35 track SSDD'
|
||||
include: '_apple2'
|
||||
|
||||
image_reader {
|
||||
filename: "appleii140.img"
|
||||
type: IMG
|
||||
}
|
||||
|
||||
image_writer {
|
||||
filename: "appleii140.img"
|
||||
type: IMG
|
||||
}
|
||||
|
||||
layout {
|
||||
tracks: 35
|
||||
sides: 1
|
||||
layoutdata {
|
||||
sector_size: 256
|
||||
physical {
|
||||
start_sector: 0
|
||||
count: 16
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
tpi: 48
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
comment: 'Apple II 640kB 5.25" 80 track DSDD'
|
||||
include: '_apple2'
|
||||
|
||||
image_reader {
|
||||
filename: "appleii640.img"
|
||||
type: IMG
|
||||
}
|
||||
|
||||
image_writer {
|
||||
filename: "appleii640.img"
|
||||
type: IMG
|
||||
}
|
||||
|
||||
layout {
|
||||
tracks: 80
|
||||
sides: 2
|
||||
order: HCS
|
||||
layoutdata {
|
||||
sector_size: 256
|
||||
physical {
|
||||
start_sector: 0
|
||||
count: 16
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
tpi: 96
|
||||
|
||||
option {
|
||||
name: "side1"
|
||||
comment: "read the volume on side 1 of a disk (AppleDOS only)"
|
||||
message: "accessing volume on side 1"
|
||||
|
||||
config {
|
||||
filesystem {
|
||||
appledos {
|
||||
filesystem_offset_sectors: 0x500
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
FORMATS = \
|
||||
_apple2 \
|
||||
_atari \
|
||||
_mx \
|
||||
40track_drive \
|
||||
@@ -11,8 +10,7 @@ FORMATS = \
|
||||
ampro400 \
|
||||
ampro800 \
|
||||
apple2_drive \
|
||||
appleii140 \
|
||||
appleii640 \
|
||||
apple2 \
|
||||
atarist \
|
||||
bk800 \
|
||||
brother120 \
|
||||
|
||||
Reference in New Issue
Block a user