WIP : Specific/special address mark support.

This commit is contained in:
Jean-François DEL NERO
2026-09-09 08:09:20 +02:00
parent 6a0fa6e6fe
commit 93bd23ec5f
6 changed files with 15 additions and 3 deletions
@@ -811,7 +811,8 @@ char * gen_info_txt(char * outbuf, int view_mode, int track, int side, int start
hxcfe_getSectorConfigSizeID(guicontext->hxcfe,sl->sectorconfig)
);
outbuf = hxc_dyn_sprintfcat(outbuf, (char*)"DataMark:0x%.2X\nHead CRC:0x%.4X (%s)\nData CRC:0x%.4X (%s)\n",
outbuf = hxc_dyn_sprintfcat(outbuf, (char*)"AddressMark:0x%.2X\nDataMark:0x%.2X\nHead CRC:0x%.4X (%s)\nData CRC:0x%.4X (%s)\n",
hxcfe_getSectorConfigAddressMark(guicontext->hxcfe,sl->sectorconfig),
hxcfe_getSectorConfigDataMark(guicontext->hxcfe,sl->sectorconfig),
hxcfe_getSectorConfigHCRC(guicontext->hxcfe,sl->sectorconfig),hxcfe_getSectorConfigHCRCStatus(guicontext->hxcfe,sl->sectorconfig)?"BAD CRC!":"Ok",
hxcfe_getSectorConfigDCRC(guicontext->hxcfe,sl->sectorconfig),hxcfe_getSectorConfigDCRCStatus(guicontext->hxcfe,sl->sectorconfig)?"BAD CRC!":"Ok");
+1
View File
@@ -639,6 +639,7 @@ int32_t hxcfe_getSectorConfigStartSectorIndex( HXCFE* floppyconte
int32_t hxcfe_getSectorConfigStartDataIndex( HXCFE* floppycontext, HXCFE_SECTCFG* sc );
int32_t hxcfe_getSectorConfigEndSectorIndex( HXCFE* floppycontext, HXCFE_SECTCFG* sc );
uint8_t * hxcfe_getSectorConfigInputData( HXCFE* floppycontext, HXCFE_SECTCFG* sc );
int32_t hxcfe_getSectorConfigAddressMark( HXCFE* floppycontext, HXCFE_SECTCFG* sc );
int32_t hxcfe_getSectorConfigDataMark( HXCFE* floppycontext, HXCFE_SECTCFG* sc );
int32_t hxcfe_getSectorConfigHCRCStatus( HXCFE* floppycontext, HXCFE_SECTCFG* sc );
int32_t hxcfe_getSectorConfigDCRCStatus( HXCFE* floppycontext, HXCFE_SECTCFG* sc );
@@ -870,6 +870,15 @@ int32_t hxcfe_getSectorConfigSectorID(HXCFE* floppycontext,HXCFE_SECTCFG* sc)
return 0;
}
int32_t hxcfe_getSectorConfigAddressMark(HXCFE* floppycontext,HXCFE_SECTCFG* sc)
{
if(sc)
{
return sc->alternate_addressmark;
}
return 0;
}
int32_t hxcfe_getSectorConfigDataMark(HXCFE* floppycontext,HXCFE_SECTCFG* sc)
{
if(sc)
@@ -128,7 +128,7 @@ int get_next_FM_sector(HXCFE* floppycontext,HXCFE_SIDE * track,HXCFE_SECTCFG * s
sector->startdataindex = sector->endsectorindex;
sector->use_alternate_addressmark = 0xFF;
sector->alternate_addressmark = 0xFE;
sector->alternate_addressmark = tmp_buffer[0];
sector->use_alternate_datamark = 0x00;
sector->alternate_datamark = 0x00;
@@ -142,7 +142,7 @@ int get_next_MFM_sector(HXCFE* floppycontext,HXCFE_SIDE * track,HXCFE_SECTCFG *
sector->trackencoding = ISOFORMAT_DD;
sector->alternate_datamark = 0x00;
sector->use_alternate_datamark = 0x00;
sector->alternate_addressmark = 0xFE;
sector->alternate_addressmark = tmp_buffer[3];
sector->use_alternate_addressmark = 0xFF;
sector->header_crc = ( tmp_buffer[SECT_HEADER_SIZE-2]<<8 ) | tmp_buffer[SECT_HEADER_SIZE-1] ;
sector->use_alternate_header_crc = 0xFF;
+1
View File
@@ -195,6 +195,7 @@ EXPORTS
hxcfe_getSectorConfigDataMark @462
hxcfe_getSectorConfigHCRCStatus @463
hxcfe_getSectorConfigDCRCStatus @464
hxcfe_getSectorConfigAddressMark @465
hxcfe_getSide @500
hxcfe_shiftTrackData @501