Add Micropolis encoder

Has not been tested on a Micropolis machine.
This commit is contained in:
Eric Anderson
2021-01-10 15:18:00 -08:00
parent f6f6db913e
commit 8b71c0d737
6 changed files with 126 additions and 7 deletions

View File

@@ -1,11 +1,11 @@
#ifndef ZILOGMCZ_H
#define ZILOGMCZ_H
#ifndef MICROPOLIS_H
#define MICROPOLIS_H
#include "decoders/decoders.h"
#include "encoders/encoders.h"
#define MICROPOLIS_ENCODED_SECTOR_SIZE (1+2+266+6)
class Sector;
class Fluxmap;
class MicropolisDecoder : public AbstractDecoder
{
public:
@@ -15,4 +15,16 @@ public:
void decodeSectorRecord();
};
class MicropolisEncoder : public AbstractEncoder
{
public:
virtual ~MicropolisEncoder() {}
std::unique_ptr<Fluxmap> encode(int physicalTrack, int physicalSide, const SectorSet& allSectors);
};
extern FlagGroup micropolisEncoderFlags;
extern uint8_t micropolisChecksum(const Bytes& bytes);
#endif