Compare commits

...

2 Commits

Author SHA1 Message Date
David Given
f2c6487d49 Add test-only TRS-80 formats. 2022-10-13 22:53:02 +02:00
David Given
4cece77bff Remove stray cout printing. 2022-10-13 22:52:47 +02:00
6 changed files with 156 additions and 2 deletions

View File

@@ -196,6 +196,10 @@ $(call do-encodedecodetest,mac800,scripts/mac800_test.textpb)
$(call do-encodedecodetest,n88basic)
$(call do-encodedecodetest,rx50)
$(call do-encodedecodetest,tids990)
$(call do-encodedecodetest,trs80_88,,--35)
$(call do-encodedecodetest,trs80_88,,--40)
$(call do-encodedecodetest,trs80_175,,--35)
$(call do-encodedecodetest,trs80_175,,--40)
$(call do-encodedecodetest,victor9k_ss)
$(call do-encodedecodetest,victor9k_ds)

View File

@@ -6,6 +6,7 @@
#include "fluxsource/fluxsource.h"
#include "scp.h"
#include "proto.h"
#include "lib/logger.h"
#include "fmt/format.h"
#include <fstream>
@@ -49,9 +50,9 @@ public:
if ((_header.cell_width != 0) && (_header.cell_width != 16))
Error() << "currently only 16-bit cells in SCP files are supported";
std::cout << fmt::format("SCP tracks {}-{}, heads {}-{}\n",
Logger() << fmt::format("SCP: tracks {}-{}, heads {}-{}",
trackno(_header.start_track), trackno(_header.end_track), startSide, endSide);
std::cout << fmt::format("SCP sample resolution: {} ns\n", _resolution);
Logger() << fmt::format("SCP sample resolution: {} ns\n", _resolution);
}
public:

View File

@@ -15,7 +15,9 @@ trap "rm -f $srcfile $fluxfile $destfile" EXIT
dd if=/dev/urandom of=$srcfile bs=1048576 count=2 2>&1
echo $fluxengine write $format -i $srcfile -d $fluxfile --drive.rotational_period_ms=200 "$@"
$fluxengine write $format -i $srcfile -d $fluxfile --drive.rotational_period_ms=200 "$@"
echo $fluxengine read $format -s $fluxfile -o $destfile --drive.rotational_period_ms=200 "$@"
$fluxengine read $format -s $fluxfile -o $destfile --drive.rotational_period_ms=200 "$@"
if [ ! -s $destfile ]; then
echo "Zero length output file!" >&2

View File

@@ -63,6 +63,8 @@ FORMATS = \
rx50 \
shugart_drive \
tids990 \
trs80_88 \
trs80_175 \
victor9k_ds \
victor9k_ss \
zilogmcz \

View File

@@ -0,0 +1,71 @@
comment: 'TRS-80 175kB 5.25" 35-track 10-sector SSDD'
image_reader {
filename: "trs80-175.img"
img {}
}
image_writer {
filename: "trs80-175.img"
img {}
}
layout {
tracks: 35
sides: 1
layoutdata {
sector_size: 512
physical {
start_sector: 0
count: 10
}
}
}
encoder {
ibm {
trackdata {
target_rotational_period_ms: 167
target_clock_period_us: 3.333
emit_iam: false
gap0: 80
gap2: 22
gap3: 34
}
trackdata {
track: 17
dam_byte: 0xf56e
}
}
}
decoder {
ibm {}
}
tpi: 48
option {
name: "35"
comment: "35-track variant (default)"
message: "using 35-track variant"
config {
layout {
tracks: 35
}
}
}
option {
name: "40"
comment: "40-track variant"
message: "using 40-track variant"
config {
layout {
tracks: 40
}
}
}

View File

@@ -0,0 +1,74 @@
comment: 'TRS-80 88kB 5.25" 35-track 10-sector SSSD'
image_reader {
filename: "trs80-88.img"
img {}
}
image_writer {
filename: "trs80-88.img"
img {}
}
layout {
tracks: 35
sides: 1
layoutdata {
sector_size: 256
physical {
start_sector: 0
count: 10
}
}
}
encoder {
ibm {
trackdata {
target_rotational_period_ms: 167
target_clock_period_us: 3.333
emit_iam: false
use_fm: true
gap0: 0x10
gap2: 0x09
gap3: 0x10
idam_byte: 0xf57e
dam_byte: 0xf56f
gap_fill_byte: 0xffff
}
trackdata {
track: 17
}
}
}
decoder {
ibm {}
}
tpi: 48
option {
name: "35"
comment: "35-track variant (default)"
message: "using 35-track variant"
config {
layout {
tracks: 35
}
}
}
option {
name: "40"
comment: "40-track variant"
message: "using 40-track variant"
config {
layout {
tracks: 40
}
}
}