diff --git a/libhxcfe/sources/init.script b/libhxcfe/sources/init.script index 840f8a53..83fe38e7 100644 --- a/libhxcfe/sources/init.script +++ b/libhxcfe/sources/init.script @@ -336,6 +336,7 @@ set BMPEXPORT_ENABLE_VICTOR9000_GCR_ENCODING 0 set SCPEXPORT_NUMBER_OF_REVOLUTIONS 3 # Number of revolutions generated to the exported SCP file set KFRAWEXPORT_NUMBER_OF_REVOLUTIONS 3 # Number of revolutions generated to the exported KF raw files set KFRAWEXPORT_DOUBLE_STEP 0 # Generate 40 tracks dump for 80 tracks drives. +set KFRAWEXPORT_SAMPLE_FREQUENCY 24027428.57142857 # KF raw sample frequency #set SCPEXPORT_DISK_TYPE 0x15 # Uncomment to force/change the SCP Disk Type field # Please refer to the SCP documentation for more details diff --git a/libhxcfe/sources/init_script.h b/libhxcfe/sources/init_script.h index f2b313b3..d70f59f7 100644 --- a/libhxcfe/sources/init_script.h +++ b/libhxcfe/sources/init_script.h @@ -5,8 +5,8 @@ // // File: init.script // -// Original size: 14672 Bytes -// Packed size: 6910 Bytes +// Original size: 14751 Bytes +// Packed size: 6958 Bytes // #ifndef DATATYPEDEF @@ -364,102 +364,105 @@ static unsigned char data__init_script[] = 0x65,0xb9,0xf9,0xa3,0x73,0x46,0xdf,0xa2,0xcb,0xbd,0x98,0x3a,0x07,0xdb,0x7b,0xe6, 0xf8,0x71,0x28,0xde,0x85,0x78,0x3f,0xb9,0x99,0x31,0x71,0x39,0x35,0xaa,0xaf,0x21, 0xc5,0xa2,0x02,0xfc,0xe5,0x1b,0x10,0xec,0xa0,0x8c,0xcb,0x43,0x42,0xc8,0x50,0x2f, - 0x00,0x35,0xea,0x96,0x70,0xa2,0xac,0x86,0x7d,0xbb,0xda,0xc8,0x2e,0xe1,0xd2,0xb2, - 0x01,0x64,0x7a,0xa3,0x16,0x6f,0x21,0xd1,0xd7,0x6a,0x8c,0x20,0xbf,0x81,0xb4,0xf4, - 0xa2,0x22,0x40,0xda,0xed,0xc0,0x5e,0x4f,0x52,0x6f,0x8a,0x79,0x87,0xed,0xb5,0x08, - 0xf0,0x1e,0x44,0xb0,0x38,0x80,0x32,0x86,0x75,0x2c,0x2c,0xb2,0x5a,0x50,0xae,0x02, - 0xd2,0x72,0x11,0xcf,0x84,0x39,0x30,0xf0,0x22,0x15,0x08,0xcb,0x42,0x8d,0x01,0xb5, - 0x9f,0x40,0x18,0x35,0x62,0x84,0x5a,0xb8,0x18,0x42,0x56,0xdb,0x30,0x11,0xc0,0x35, - 0xff,0x30,0x10,0x01,0xc8,0x0d,0x80,0xa8,0x05,0x00,0x24,0x8c,0x55,0x52,0x10,0x17, - 0x26,0x20,0x83,0x20,0x36,0x7b,0x70,0xd6,0x87,0xf0,0x33,0x62,0x4c,0x19,0x70,0xee, - 0x45,0x76,0x31,0x11,0xba,0xa0,0x70,0xbf,0xe1,0x05,0x82,0x13,0x7d,0x5b,0x94,0x05, - 0xf2,0x1e,0x41,0x1e,0x09,0x23,0x14,0x82,0x5b,0x09,0x82,0x3d,0x04,0x80,0xc5,0x19, - 0x9c,0x0c,0xea,0x2f,0x31,0x60,0x11,0x9a,0xae,0x23,0x01,0x67,0x1c,0x0c,0x4c,0x4b, - 0x68,0x6b,0xd3,0xed,0x88,0x56,0xd4,0xe0,0x28,0x3e,0xfc,0xac,0x27,0x3b,0x80,0x7a, - 0xa2,0x8d,0x38,0x04,0xb4,0x18,0x8f,0x40,0x9b,0x44,0x3e,0x82,0x09,0x0a,0xc0,0xa6, - 0x73,0xb8,0x3d,0x9d,0xc5,0xc6,0xc0,0x42,0x3f,0x40,0xf2,0x08,0x47,0x08,0x90,0x24, - 0x81,0xb4,0x30,0x80,0x64,0x12,0x62,0x8b,0xda,0xb0,0x06,0x71,0x2d,0xa9,0xc4,0x2b, - 0x03,0x51,0x0c,0xf9,0x2a,0xd6,0x7e,0x38,0x96,0x7b,0xb2,0x49,0xb7,0x88,0x6a,0x1e, - 0x68,0x11,0xcc,0x3e,0xad,0x12,0x11,0x38,0xf5,0xd4,0x8a,0x57,0x18,0xa3,0xde,0x21, - 0x4b,0x0a,0x75,0x40,0xa8,0x42,0x15,0x30,0x81,0x54,0x4c,0x2b,0x00,0x66,0x48,0x68, - 0x57,0x95,0x86,0x16,0x20,0x59,0x85,0x98,0x14,0xd9,0xa6,0xa8,0xb6,0x32,0x91,0xfd, - 0x1d,0xa4,0x54,0x85,0xc0,0x13,0xe1,0x4d,0x0b,0xa4,0xf7,0xc2,0xcc,0xc3,0x24,0x73, - 0x74,0x69,0x07,0x5f,0x7c,0x04,0x63,0x9e,0x24,0x31,0x52,0x70,0xc5,0x86,0x3c,0x2a, - 0x07,0xcb,0x0c,0xb4,0x73,0xb7,0xe6,0x19,0xf0,0xd1,0x54,0x7c,0x35,0x21,0x61,0x0c, - 0x95,0xe4,0x3d,0xad,0xf4,0xb0,0x77,0x86,0x34,0x37,0xe1,0x64,0x3f,0xb6,0x58,0x2b, - 0x74,0x32,0x23,0xcb,0x83,0x78,0xa8,0xc0,0x40,0x2b,0x70,0x2b,0xb5,0xe1,0xb7,0x4c, - 0xf9,0x6b,0xda,0xeb,0x07,0x96,0x05,0xf0,0x2b,0x81,0x49,0x06,0x63,0xe5,0x87,0xcc, - 0x3e,0xc9,0xd4,0x47,0xb4,0xe9,0x01,0x15,0x3d,0x0d,0x94,0x6a,0xb1,0xb9,0x40,0x40, - 0x03,0xd5,0x85,0x11,0xa2,0x12,0x22,0x44,0x4b,0x32,0x32,0x0d,0x03,0x0f,0x26,0x9d, - 0x2d,0x60,0x29,0x02,0x76,0x81,0x5c,0x0b,0x12,0xc6,0x8f,0x00,0xd7,0x44,0x21,0x5f, - 0x83,0x1f,0x88,0x58,0x69,0x12,0xcc,0xfb,0x28,0x88,0x9d,0x59,0x60,0xd1,0x16,0x81, - 0x6c,0x41,0xa2,0x10,0x72,0xb2,0x34,0x26,0xf0,0x5f,0x02,0x86,0x40,0xe8,0xda,0xc4, - 0x11,0x11,0x03,0x86,0x44,0x48,0x55,0x6b,0x50,0x67,0x51,0x37,0x0a,0xbe,0x02,0x04, - 0x3b,0x01,0x2e,0x1d,0xa2,0x96,0x87,0x84,0x3c,0x97,0xc4,0xdb,0xb6,0xa4,0xa1,0xa8, - 0x54,0x00,0x43,0x89,0xcc,0x3e,0x21,0xf4,0x8a,0xd7,0x1b,0x24,0x0c,0x85,0xee,0xa2, - 0x6e,0x79,0x30,0x13,0xfc,0xd5,0x71,0x07,0x12,0x64,0x44,0x6e,0xba,0x0c,0xf8,0x19, - 0x02,0x96,0x4a,0x71,0xba,0x80,0xd8,0x06,0x20,0x34,0x2e,0xa3,0xb4,0x42,0x90,0xff, - 0x60,0x8a,0x45,0x0e,0x28,0xb0,0xfd,0x45,0x6b,0x6f,0xca,0xc2,0x05,0x26,0xfc,0xba, - 0x98,0x08,0xc3,0xd9,0x2b,0x38,0x15,0x0c,0x68,0xe2,0x36,0x2d,0x91,0x44,0x90,0xd1, - 0x62,0x31,0x54,0x51,0xa1,0xf6,0x3d,0x20,0x23,0x9c,0xe8,0x06,0x6e,0x34,0x22,0x6a, - 0x39,0x8a,0x90,0xa9,0x38,0xa7,0xa1,0xf8,0x40,0xa1,0x5d,0x1d,0xc0,0x85,0x42,0x81, - 0x17,0x91,0x50,0xbf,0x14,0x2d,0x87,0x26,0x17,0x3c,0x60,0x06,0xc8,0xbb,0xe0,0x37, - 0xb0,0xd4,0xe7,0x51,0x3b,0x87,0x9a,0xdf,0xa0,0xec,0x11,0x48,0x5f,0x34,0xad,0x6b, - 0xf1,0x88,0x8b,0xdb,0x8d,0x62,0xfc,0x78,0xf8,0xc0,0x23,0xbc,0xfa,0xd1,0x83,0x0b, - 0x50,0x1a,0x63,0x0c,0xde,0xc8,0xc9,0xc6,0x28,0xe4,0xa1,0xa5,0x0c,0xfc,0x63,0x85, - 0xcf,0x19,0x05,0x17,0xb9,0x7a,0x13,0x31,0x39,0x8c,0xa0,0x67,0xe2,0x7a,0xdb,0x98, - 0x9f,0xc3,0xd2,0x32,0xea,0x30,0x87,0xd4,0x51,0x22,0xea,0xb5,0xf1,0xe3,0x01,0x1d, - 0x1c,0xe3,0xd1,0x52,0x09,0x59,0x07,0xde,0x63,0x06,0x98,0x36,0x54,0x73,0x66,0xfb, - 0x61,0x58,0x7b,0x8d,0xe6,0x85,0x18,0xab,0x05,0x38,0x60,0x82,0x15,0x0d,0x23,0xfb, - 0x16,0xa1,0x11,0x58,0x92,0x36,0x18,0x40,0xa9,0xbe,0x0c,0xe1,0xba,0xcb,0x27,0x13, - 0x52,0x2c,0xa4,0x39,0x3f,0x40,0x42,0x0c,0x88,0xbd,0xd6,0x70,0x2e,0x20,0x10,0x01, - 0x14,0x0d,0xab,0x3d,0x56,0x24,0x28,0x9a,0x92,0x29,0x73,0xde,0x01,0x51,0x02,0x40, - 0x20,0x01,0x5c,0x4d,0x80,0x98,0x9e,0x81,0xb3,0xa5,0xfc,0x34,0x45,0x8d,0x0c,0xc0, - 0xa1,0x1d,0xbc,0x42,0xb8,0xf1,0xb7,0xf0,0x7b,0xc4,0xcf,0x02,0x7b,0xcc,0x00,0xb2, - 0xf0,0xd3,0x9c,0xb9,0x50,0x86,0x6d,0x7f,0x3f,0x51,0x5a,0x1b,0x96,0x42,0xf6,0xc1, - 0x11,0xfc,0xb9,0x6a,0x2f,0x59,0xac,0x15,0xc6,0x4d,0x1b,0xa1,0x58,0x8b,0x50,0x3a, - 0x60,0x2d,0x1d,0xe0,0x50,0x02,0x40,0x1d,0x34,0x4d,0x1a,0xb0,0x31,0xd1,0xe7,0x59, - 0xd0,0xb0,0x0b,0xf2,0x3b,0x88,0xf5,0x99,0x9d,0x58,0x82,0xb7,0x91,0x20,0x4f,0x10, - 0xd0,0xed,0xd5,0x1e,0x29,0x18,0x83,0x67,0xc9,0x40,0x63,0x70,0xca,0xb8,0xd2,0xb1, - 0xe7,0x81,0x10,0xfd,0x84,0x91,0x01,0x11,0x09,0xc0,0x64,0x02,0xe2,0x3f,0x80,0xe0, - 0x05,0xc4,0x53,0x01,0x70,0x0d,0xd2,0xde,0x34,0x61,0x59,0x84,0x38,0x0b,0xe2,0xe0, - 0x59,0xc8,0x1e,0x46,0x33,0x1c,0xf0,0x21,0x49,0x3a,0x2a,0x80,0x43,0x3a,0xe0,0x4f, - 0x16,0x2c,0x06,0x11,0x80,0x0b,0x9d,0x4f,0x85,0x8f,0x08,0x88,0x47,0x42,0xee,0x30, - 0xd1,0x35,0x08,0x2e,0x25,0x81,0xef,0x69,0x28,0xe7,0xc4,0x36,0x23,0x34,0xa8,0xc5, - 0x54,0x50,0xc3,0xb9,0x8a,0x9c,0x73,0xd5,0x4d,0x25,0x52,0x8f,0x80,0xf8,0x07,0xa5, - 0x04,0x17,0x98,0x10,0xe0,0x5e,0x1d,0x92,0xcd,0x85,0xa8,0x4c,0x10,0x39,0x8e,0x72, - 0xb1,0x0d,0xdc,0x26,0x81,0x02,0xb8,0xf0,0x08,0x44,0x37,0x74,0x49,0x2e,0x80,0xa0, - 0xe8,0x86,0xfd,0xa4,0xc5,0x26,0x64,0x4c,0x56,0xe4,0x62,0xcc,0xa8,0xa8,0xf1,0x79, - 0x17,0x6a,0x22,0x11,0xa4,0x0a,0x68,0x44,0x64,0xf9,0x15,0x45,0x02,0x1b,0xbd,0x2a, - 0x04,0xae,0x0c,0x68,0x99,0x16,0x46,0x65,0x71,0x89,0x80,0xb4,0xe5,0x62,0xf3,0x1d, - 0x68,0x1b,0x80,0x4f,0x10,0xf6,0xdc,0xc0,0x7c,0x9b,0xd1,0x1e,0x94,0xa4,0x9e,0xcf, - 0xff,0x27,0xd0,0xd4,0x9e,0xee,0x50,0x52,0x84,0x56,0xbc,0xa1,0xa5,0x10,0xe1,0x29, - 0x45,0x2b,0x60,0x08,0x2a,0xdc,0x86,0x99,0x8e,0x4d,0x22,0x72,0x40,0xd9,0x92,0x74, - 0xd2,0x61,0xa0,0x46,0x93,0x14,0x4c,0xf4,0x6c,0x35,0x1b,0x86,0x30,0x6d,0x62,0x73, - 0x1a,0xaa,0xba,0xc2,0x90,0x46,0xe4,0x8d,0x26,0xf8,0xbb,0x81,0xed,0x93,0x61,0x00, - 0xc2,0x96,0x6b,0x42,0x64,0x99,0x94,0x64,0x45,0x1f,0x10,0xda,0x53,0xc2,0xa8,0x2d, - 0x13,0xad,0x81,0xb8,0xcc,0xa9,0x1a,0x30,0x1b,0x39,0x85,0xe6,0x06,0xd0,0x3c,0x8d, - 0xf4,0x05,0xd2,0xdd,0x4b,0xe4,0xba,0x06,0xfa,0x05,0xf9,0x6e,0x80,0xb8,0x5a,0x32, - 0xbe,0x58,0x54,0x54,0xa0,0x3a,0x07,0x23,0x74,0x14,0xea,0x59,0x0b,0xf5,0x96,0x71, - 0xd8,0x47,0x70,0x22,0xa3,0xd4,0x4b,0xb0,0x6e,0xb2,0xe0,0x96,0xc8,0x76,0x25,0xc8, - 0x1f,0x73,0x02,0x14,0xd6,0x5d,0xc3,0x89,0x97,0x58,0x19,0x03,0x5c,0x46,0x89,0x85, - 0x85,0xa6,0x5e,0x41,0x0e,0x51,0xe3,0x94,0x40,0xa8,0x73,0xf5,0x7b,0x2b,0xe0,0x83, - 0xad,0xcb,0x5c,0x59,0x04,0xd5,0x0a,0x73,0xe5,0x21,0x29,0x6d,0x01,0x8a,0x81,0x22, - 0x83,0xc7,0x9b,0x3a,0x8e,0x72,0x10,0x1a,0x89,0x3b,0x61,0x1d,0x67,0x12,0x35,0x82, - 0xc5,0x2b,0x04,0x28,0xb6,0x24,0x5e,0x89,0xe8,0x10,0x79,0x4a,0xd6,0x85,0x14,0xc4, - 0xfc,0x29,0x68,0x79,0x8f,0x97,0x25,0xf4,0x4e,0x9d,0x54,0xa2,0xf9,0x96,0xb3,0x91, - 0x37,0x81,0x9f,0x69,0xa0,0x57,0xd0,0x3a,0x02,0x23,0x33,0xa9,0xc0,0xe2,0xa1,0x48, - 0x0c,0x49,0xb1,0xc6,0x21,0x1b,0xb0,0x2a,0xa7,0xc4,0x89,0x8a,0x59,0x85,0xf1,0xcd, - 0xd4,0xb4,0xa8,0xb0,0xbe,0xcd,0x25,0x0b,0x61,0x4e,0x41,0x30,0x89,0x24,0x8e,0x40, - 0xe3,0x9c,0x8f,0x11,0xee,0x2a,0x59,0x98,0xb4,0xc6,0x09,0x77,0x31,0xa1,0xf2,0x81, - 0x4c,0xe7,0xd0,0x0f,0x42,0x10,0x08,0x92,0xdf,0x36,0x04,0xd2,0x4d,0x8d,0x01,0x93, - 0x65,0x25,0xcc,0xd9,0xda,0xa0,0x3e,0x54,0x3b,0x37,0x08,0x09,0x33,0x6d,0x9b,0x7c, - 0x1d,0xe6,0xe3,0x35,0x39,0xb9,0xa6,0xae,0x6c,0xca,0xf7,0x9b,0xbc,0xae,0x9e,0xb2, - 0x69,0xf8,0xb5,0x81,0x4a,0x2d,0xa7,0xcd,0x9b,0x84,0xd8,0xa7,0x01,0x32,0x62,0x59, - 0x91,0x32,0x70,0xe0,0x54,0x9c,0x4c,0xe2,0xcb,0x7e,0x00,0x00,0x80,0x00 + 0x00,0x35,0xea,0x96,0x70,0xa2,0xab,0x98,0x7f,0xbb,0xf6,0x5b,0x98,0x05,0x36,0x69, + 0xae,0x7d,0x1c,0x6c,0xd7,0x47,0x42,0x98,0x4e,0x54,0x03,0x70,0x1a,0x00,0xc8,0x07, + 0x00,0x2e,0x01,0xa8,0x0d,0xc0,0x63,0x01,0x90,0x1c,0x40,0x74,0x62,0xa1,0x06,0x7f, + 0x92,0xc8,0x0c,0x80,0x60,0x40,0xcd,0x08,0x55,0x9d,0x01,0x59,0x08,0x2b,0xed,0xde, + 0xd6,0x41,0x77,0x0e,0x95,0x90,0x0b,0x23,0xd5,0x18,0xb3,0x79,0x0e,0x8e,0xbb,0x54, + 0x61,0x05,0xfc,0x0d,0xa7,0xa5,0x11,0x12,0x06,0xd7,0x6e,0x02,0xf2,0x7a,0x93,0x7c, + 0x53,0xcc,0x3f,0x6d,0xa8,0x47,0x80,0xf2,0x25,0x81,0xc4,0x01,0x94,0x33,0xa9,0x61, + 0x65,0x92,0xd2,0x85,0x70,0x16,0x93,0x90,0x8e,0x7c,0x21,0xc9,0x87,0x82,0x18,0xa8, + 0x46,0x5a,0x14,0x68,0x1e,0x2c,0xfa,0x00,0xc1,0xab,0x14,0x22,0xd5,0xc0,0xc2,0x12, + 0xb6,0xd9,0x80,0x8e,0x05,0xcf,0xf9,0x81,0x88,0x0e,0x40,0x6c,0x05,0x40,0x28,0x01, + 0x24,0x62,0xaa,0x90,0x81,0xc1,0x31,0x04,0x19,0x03,0xc3,0xdb,0x86,0xb4,0x3f,0x81, + 0x9b,0x12,0x60,0xcb,0x87,0x72,0x2b,0xb1,0x88,0x8d,0xd5,0x03,0x85,0xff,0x81,0x69, + 0x0a,0xc7,0x01,0x06,0x43,0x15,0x01,0x7c,0x87,0x90,0x68,0x83,0x50,0xc5,0x20,0xd8, + 0xc2,0x60,0x8f,0x41,0xa4,0x31,0x46,0x67,0x03,0x3a,0x8b,0xcc,0x58,0x04,0x66,0xab, + 0x88,0xc0,0x59,0xc7,0x03,0x13,0x12,0xda,0x1a,0xf4,0xfb,0x62,0x15,0xb5,0x38,0x0a, + 0x0f,0xbf,0x2b,0x09,0xce,0xe0,0x60,0xa8,0xa3,0x4e,0x01,0x2d,0x06,0x23,0xd0,0x26, + 0xd1,0x0f,0xa0,0xc5,0x07,0xe3,0x9d,0xc2,0x74,0xee,0x2e,0x36,0x02,0x11,0xfa,0x07, + 0x90,0x42,0x38,0x55,0x01,0x24,0x0d,0xa1,0x84,0x03,0x20,0x93,0x14,0x5e,0xd5,0x80, + 0x33,0x89,0x6d,0x4e,0x21,0x58,0x1a,0x88,0x67,0xc9,0x56,0xb3,0xf1,0xc4,0xb3,0xdd, + 0x92,0x4d,0xbc,0x43,0x50,0xf3,0x40,0x8e,0x61,0xf5,0x68,0x90,0x89,0xc7,0xae,0xa4, + 0x52,0xb8,0xc5,0x1e,0xf1,0x0c,0x68,0x64,0x2a,0x05,0x42,0x10,0xca,0x85,0x1a,0xa2, + 0x61,0x9a,0x03,0x32,0x43,0x43,0x40,0xac,0x30,0xd2,0x02,0xcc,0x35,0x20,0x20,0x39, + 0x95,0x45,0xb1,0x94,0x8f,0xe8,0xed,0x22,0xa4,0x36,0x40,0x9f,0x0c,0x78,0x6d,0xa7, + 0xbe,0x1a,0x86,0x19,0x23,0x9b,0xa3,0x48,0x3a,0xfb,0xe0,0x23,0x1c,0xf1,0x21,0x8a, + 0x93,0x87,0x34,0x3a,0x21,0x92,0x3e,0x58,0x76,0x23,0x9d,0xbf,0x30,0xf0,0x87,0x92, + 0xa3,0xe1,0xeb,0x0d,0x18,0x75,0x2f,0x21,0xed,0x6f,0xa5,0x84,0xcc,0x39,0xe2,0x01, + 0x0d,0x31,0xfd,0xb2,0xc1,0x5b,0xa1,0x91,0x1e,0x5c,0x24,0x45,0x46,0x02,0x01,0x5b, + 0x81,0x5d,0xaf,0x0d,0xba,0x67,0xcb,0x5e,0xd7,0x58,0x3c,0xb0,0x2f,0x81,0x5c,0x0a, + 0x48,0x33,0x1f,0x2c,0x46,0xa2,0x38,0x4e,0xa2,0x3d,0xa7,0x48,0x08,0xa9,0xe8,0x6c, + 0xa3,0x55,0x8d,0xca,0x02,0x00,0x1e,0xac,0x28,0x8d,0x10,0xb2,0x12,0x22,0x59,0x91, + 0x90,0x68,0x18,0x89,0xb4,0xe9,0x6b,0x01,0x48,0x13,0xb4,0x13,0x20,0x9a,0x96,0x34, + 0x78,0x06,0xba,0x25,0x2a,0xfc,0x18,0xfc,0x4b,0x03,0x48,0x96,0x67,0xd9,0x44,0xc8, + 0xea,0xcb,0x06,0x89,0xbc,0x13,0xa2,0x4f,0x12,0x93,0x95,0x91,0xa1,0x37,0x82,0xf8, + 0x14,0x32,0x07,0x46,0xd6,0x20,0x88,0x98,0x9c,0x32,0x26,0x62,0xab,0x5a,0x83,0x3a, + 0x89,0xb8,0x55,0xf0,0x10,0x21,0xd8,0x09,0x71,0x0e,0x14,0xb4,0x44,0x62,0x26,0xbe, + 0x26,0xdd,0xb5,0x25,0x0d,0x42,0xa0,0x02,0x1c,0x56,0xa2,0x33,0x11,0xb4,0x56,0xb8, + 0xd9,0x20,0x64,0x2f,0x75,0x13,0x73,0xc9,0x80,0x9f,0xe6,0xab,0x88,0x38,0x93,0x22, + 0x23,0x75,0xd0,0x67,0xc0,0xc8,0x14,0xb2,0x53,0x8d,0xd4,0x06,0xd0,0x1f,0x2e,0xa3, + 0xb4,0x42,0x90,0xff,0x60,0x8a,0x45,0x92,0x2c,0xd1,0x1e,0x45,0x6b,0x6f,0xca,0xc2, + 0x05,0x26,0xfc,0xba,0x98,0x08,0xc3,0xd9,0x2b,0x38,0x15,0x0c,0x68,0xe2,0x36,0x2d, + 0x91,0x44,0x90,0xd1,0x82,0x84,0x0c,0x61,0x07,0xca,0x04,0x73,0x9d,0x00,0xcd,0xc6, + 0x84,0x4d,0x47,0x31,0x52,0x15,0x27,0x17,0x04,0x3f,0x08,0x14,0x2b,0xa3,0xb8,0x10, + 0xa8,0x50,0x23,0x30,0x2a,0x17,0xe2,0x85,0xb0,0xe4,0xc2,0xe7,0x8c,0xf8,0xd9,0x17, + 0x7c,0x06,0xf6,0x1a,0x9c,0xea,0x2b,0x91,0x14,0x5b,0xf4,0x26,0x02,0x29,0x01,0x06, + 0x95,0xad,0x7e,0x34,0xf1,0x9a,0x71,0xac,0x67,0x4f,0x1f,0x19,0xf4,0x77,0x9f,0x5a, + 0x34,0x41,0x6a,0x03,0x4c,0x69,0x5b,0xd9,0x1b,0x28,0xd4,0x9c,0x94,0x34,0xa1,0x9f, + 0x8d,0x68,0xb9,0xe3,0x5e,0xa2,0xf7,0x2f,0x42,0xea,0x2b,0x51,0xb3,0x0c,0xfc,0x57, + 0x9b,0x73,0x16,0x08,0x8a,0xc6,0xd9,0x46,0x11,0x1b,0x8b,0x2c,0x20,0x56,0xbe,0x3c, + 0x60,0x23,0xa3,0x9c,0x7a,0x2a,0x41,0x2b,0x20,0xfb,0xcc,0x60,0xd3,0x06,0xca,0x8e, + 0x6c,0xdf,0x6c,0x2b,0x0f,0x71,0xbc,0xd0,0xa3,0x17,0x70,0xa7,0x0c,0x10,0x42,0xa1, + 0xa4,0x7f,0x62,0xd4,0x22,0x6d,0x14,0x56,0xc3,0x08,0x15,0x37,0xc1,0x9c,0x37,0x59, + 0x64,0xe2,0xac,0x45,0x94,0x87,0x27,0xe8,0x08,0x41,0x91,0x17,0xba,0xce,0x05,0xc4, + 0x02,0x00,0x22,0x81,0xb5,0x67,0xaa,0xc4,0x86,0x1b,0x52,0x45,0x2e,0x7b,0xc0,0x2a, + 0x20,0x48,0x04,0x00,0x2b,0x8a,0xb8,0x13,0x13,0xd0,0x36,0x74,0xbf,0x86,0x88,0xb1, + 0xa1,0x98,0x14,0x23,0xb7,0x88,0x57,0x20,0x26,0xfe,0x0f,0x78,0x99,0xe0,0x4f,0x79, + 0x80,0x16,0x5e,0x1a,0x73,0x97,0x2a,0x10,0xcd,0xaf,0xe7,0xea,0x2b,0x43,0x72,0xc8, + 0x5e,0xd8,0x22,0x3f,0x97,0x2d,0x45,0xeb,0x35,0x83,0xc0,0xc9,0xa3,0xb2,0x2b,0x11, + 0x6a,0x07,0x4c,0x05,0xa3,0xbc,0x0a,0x00,0x48,0x03,0xa6,0x89,0xa3,0x56,0x06,0x3a, + 0x40,0xcb,0x3a,0x16,0x01,0x7e,0x47,0x71,0x20,0xa3,0x33,0xab,0x10,0x56,0xf2,0x43, + 0x09,0xe2,0x1a,0x1d,0xba,0xa3,0xc5,0x23,0x10,0x6c,0xf9,0x28,0x0c,0x6e,0x19,0x57, + 0x1a,0x56,0x3c,0xf0,0x22,0x1f,0xb0,0x92,0x20,0x22,0x21,0x38,0x0c,0x80,0x5c,0x47, + 0xf8,0x0d,0x91,0x4c,0x05,0xc0,0x37,0x4b,0x78,0xd1,0x85,0x66,0x10,0xe0,0x2f,0x8b, + 0x81,0x67,0x20,0x79,0x18,0xcc,0x7b,0x80,0x85,0x26,0xc8,0xba,0x81,0x0c,0xeb,0x81, + 0x3c,0x58,0xb0,0x18,0x46,0x00,0x2e,0x75,0x3e,0x16,0x3c,0x22,0x21,0x1d,0x0b,0xb8, + 0xc3,0x44,0xd4,0x20,0xb8,0xa6,0x87,0xbd,0xa4,0xa3,0x9f,0x10,0xd8,0x8c,0xd2,0xa3, + 0x17,0x61,0x43,0x0e,0xe6,0x2e,0x91,0xee,0x55,0x34,0x9c,0xca,0x3e,0x03,0xe0,0x1e, + 0x94,0x10,0x5e,0x60,0x43,0x82,0x80,0x76,0x4b,0x36,0x16,0xa1,0x30,0x41,0x6a,0x3d, + 0xaa,0xc4,0x37,0x70,0x9a,0x04,0x0a,0xe3,0xc0,0x21,0x10,0xdd,0xd1,0x24,0xba,0x02, + 0x83,0xa2,0x1b,0xf6,0x93,0x14,0x99,0x91,0x31,0x5b,0x91,0xaa,0x32,0xa2,0xa3,0xc5, + 0xe4,0x5d,0xa8,0x98,0xc7,0x0c,0x29,0xa1,0x11,0x94,0xd4,0x5d,0x54,0x08,0x6e,0xf4, + 0xa8,0x12,0xb8,0x31,0xa2,0x64,0x59,0x19,0x95,0xc6,0x26,0x02,0xd3,0x95,0x8b,0xcc, + 0x75,0xa0,0x6e,0x01,0x3c,0x4c,0x1b,0x73,0x04,0x02,0x6f,0x44,0xfe,0x56,0x52,0x99, + 0x3f,0xfc,0xa6,0xc3,0x52,0x7b,0xb9,0x50,0x4a,0x89,0x5a,0xf2,0xa4,0x95,0x33,0x84, + 0xa5,0x50,0xad,0x80,0x20,0xab,0x72,0x1e,0x86,0x39,0x34,0x89,0xc9,0x03,0x66,0x49, + 0xd3,0x49,0x86,0x81,0x1a,0x4c,0x51,0x33,0xd1,0xb0,0xd4,0x6e,0x18,0xc1,0xb5,0x89, + 0xcc,0x6a,0xaa,0xeb,0x0a,0x41,0x1b,0x92,0x34,0x9b,0xe2,0xee,0x07,0xb6,0x51,0x44, + 0x03,0x0a,0x59,0xad,0x09,0x92,0x66,0x51,0x91,0x14,0x7c,0x43,0x69,0x4f,0x0a,0xa0, + 0xb4,0x4e,0xb6,0x06,0xe3,0x32,0xa4,0x68,0xc0,0x6c,0xe6,0x17,0x98,0x1b,0x40,0xf2, + 0x37,0xd0,0x17,0x4b,0xed,0x2f,0x93,0x06,0x1b,0xe8,0x17,0xe5,0xf6,0x02,0xe1,0x68, + 0xcb,0x71,0x61,0x51,0x73,0x81,0xf0,0x1c,0x8d,0xd0,0x53,0xa9,0x73,0x2f,0xd6,0x5d, + 0x87,0x61,0x1d,0xc0,0x8a,0x8f,0x51,0x30,0xa1,0xba,0xcb,0xfa,0x5e,0xe1,0xd8,0x98, + 0x10,0x7d,0xe0,0x51,0x2a,0xf9,0x86,0x0e,0x26,0x61,0x20,0x64,0x0d,0x71,0x1a,0x26, + 0x52,0x16,0x99,0x88,0x04,0x39,0x47,0x8e,0x51,0x02,0xa1,0xcf,0xd5,0xec,0xaf,0x82, + 0x0e,0xb7,0x2d,0x71,0x64,0x13,0x54,0x29,0xcf,0x94,0x84,0xa5,0xb4,0x06,0x2a,0x04, + 0x8a,0x0f,0x1e,0x6c,0xea,0x39,0xc8,0x40,0x6a,0x24,0xed,0x84,0x75,0x9c,0x48,0xd6, + 0x0b,0x14,0xb3,0x90,0xa2,0xd8,0x91,0x7a,0x27,0xa0,0x41,0xe5,0x2b,0x5a,0x14,0x5b, + 0x53,0xf0,0xa5,0xa1,0xe6,0x3e,0x5c,0x97,0xd1,0x5b,0x75,0x52,0x8b,0xe6,0x96,0xce, + 0x44,0xde,0x06,0x7d,0xa6,0x81,0x5f,0x40,0xe8,0x08,0x8c,0xce,0xa7,0x03,0x8a,0x85, + 0x20,0x31,0x26,0xc7,0x18,0x84,0x76,0x80,0xaa,0x9f,0x12,0x26,0x29,0x66,0x02,0x07, + 0x37,0x52,0xd2,0xa2,0xc2,0xfb,0x36,0x74,0x2d,0x85,0x39,0x04,0xc2,0x24,0x93,0x29, + 0x03,0x8e,0x72,0x3c,0x47,0xb8,0xa9,0x66,0x66,0x93,0x36,0x25,0xdc,0xce,0x07,0xca, + 0x05,0x33,0x9f,0x40,0xc1,0x08,0x40,0x22,0x4b,0x7c,0xdf,0x93,0x49,0x38,0x14,0x06, + 0x4e,0x0c,0x97,0x33,0x85,0x6a,0x80,0xf9,0x50,0xec,0xdc,0x20,0x24,0xce,0x2e,0x71, + 0xb0,0x99,0x9c,0x7c,0xdc,0x67,0x22,0x9a,0xb9,0xc2,0x2b,0xde,0x72,0xb2,0xd8,0x7a, + 0xc9,0xa7,0xe3,0x16,0x05,0x28,0xc6,0x9f,0x36,0x71,0xd3,0x80,0x9c,0xf4,0xd1,0x09, + 0x66,0x44,0xc9,0xd2,0x81,0x52,0x74,0xf3,0xa9,0x2d,0xf8,0x00,0x02,0x00 }; static datatype data_init_script[]= { - { 255, 14672, 6910, data__init_script, 0 } + { 255, 14751, 6958, data__init_script, 0 } }; diff --git a/libhxcfe/sources/loaders/kryofluxstream_loader/kryofluxstream_writer.c b/libhxcfe/sources/loaders/kryofluxstream_loader/kryofluxstream_writer.c index b6d0bcac..0cf4f281 100644 --- a/libhxcfe/sources/loaders/kryofluxstream_loader/kryofluxstream_writer.c +++ b/libhxcfe/sources/loaders/kryofluxstream_loader/kryofluxstream_writer.c @@ -43,12 +43,13 @@ // Change History (most recent first): /////////////////////////////////////////////////////////////////////////////////// -#include -#include -#include - -#include "types.h" - +#include +#include +#include +#include + +#include "types.h" + #include "internal_libhxcfe.h" #include "libhxcfe.h" @@ -119,13 +120,13 @@ int alignOOB(FILE * f) } }; - return j; -} - -uint32_t write_kf_stream_track(HXCFE_IMGLDR * imgldr_ctx,char * filepath,HXCFE_SIDE * track,int tracknum,int sidenum,unsigned int revolution) -{ - char fullp[512]; - char fullp2[512]; + return j; +} + +uint32_t write_kf_stream_track(HXCFE_IMGLDR * imgldr_ctx,char * filepath,HXCFE_SIDE * track,int tracknum,int sidenum,unsigned int revolution,double sck) +{ + char fullp[512]; + char fullp2[512]; char fileext[16]; unsigned char trackbuffer[256]; @@ -144,33 +145,66 @@ uint32_t write_kf_stream_track(HXCFE_IMGLDR * imgldr_ctx,char * filepath,HXCFE_S s_oob_StreamEnd oobse; s_oob_DiskIndex oobdi; - FILE *f; - streamconv * strconv; - - strconv = initStreamConvert(imgldr_ctx->hxcfe,track, 41619, 0x00FFFFFF,-1,-1,revolution+1,5000000); - if(!strconv) - return 0; - + FILE *f; + streamconv * strconv; + + char * envstr; + char kfinfobuffer[256]; + + time_t curtimecnt; + struct tm * curtime; + + strconv = initStreamConvert(imgldr_ctx->hxcfe,track, (float)(1E9/sck) * 1000.0, 0x00FFFFFF,-1,-1,revolution+1,5000000); + if(!strconv) + return 0; + hxc_getpathfolder(filepath,fullp,SYS_PATH_TYPE); hxc_getfilenamewext(filepath,fullp2,SYS_PATH_TYPE); strcat(fullp,fullp2); sprintf(fileext,"%.2d.%d.raw",tracknum,sidenum); strcat(fullp,fileext); - - imgldr_ctx->hxcfe->hxc_printf(MSG_DEBUG,"write_kf_stream_track : Creating %s (trk %d, side %d, rev %d)",fullp,tracknum,sidenum,revolution); - - f = hxc_fopen(fullp,"wb"); - if(f) - { + + imgldr_ctx->hxcfe->hxc_printf(MSG_DEBUG,"write_kf_stream_track : Creating %s (trk %d, side %d, rev %d)",fullp,tracknum,sidenum,revolution); + + time(&curtimecnt); + curtime = localtime(&curtimecnt); + + f = hxc_fopen(fullp,"wb"); + if(f) + { streamsize = 0; StreamConvert_getNextPulse(strconv); - - streampos = 0; - - memset(&oobh,0,sizeof(s_oob_header)); - oobh.Sign = 0xD; - oobh.Size = sizeof(s_oob_StreamRead); + + streampos = 0; + + // KFInfo : host datetime + snprintf(kfinfobuffer,sizeof(kfinfobuffer)-1,"host_date=%04d.%02d.%02d, host_time=%02d:%02d:%02d",curtime->tm_year+1900,curtime->tm_mon+1,curtime->tm_mday,curtime->tm_hour,curtime->tm_min,curtime->tm_sec); + kfinfobuffer[sizeof(kfinfobuffer)-1] = 0; + memset(&oobh,0,sizeof(s_oob_header)); + oobh.Sign = 0xD; + oobh.Size = strlen(kfinfobuffer)+1; + oobh.Type = OOBTYPE_String; + fwrite(&oobh,sizeof(s_oob_header),1,f); + fwrite(kfinfobuffer,1,oobh.Size,f); + + // KFInfo : software information and clocks + envstr = hxcfe_getEnvVar(imgldr_ctx->hxcfe,"LIBVERSION",0); + if(envstr) + { + snprintf(kfinfobuffer,sizeof(kfinfobuffer)-1,"name=%s, version=%s, sck=%.7f, ick=%.7f","libhxcfe",envstr,sck,(double)(sck/8)); + kfinfobuffer[sizeof(kfinfobuffer)-1] = 0; + memset(&oobh,0,sizeof(s_oob_header)); + oobh.Sign = 0xD; + oobh.Size = strlen(kfinfobuffer)+1; + oobh.Type = OOBTYPE_String; + fwrite(&oobh,sizeof(s_oob_header),1,f); + fwrite(kfinfobuffer,1,oobh.Size,f); + } + + memset(&oobh,0,sizeof(s_oob_header)); + oobh.Sign = 0xD; + oobh.Size = sizeof(s_oob_StreamRead); oobh.Type = OOBTYPE_Stream_Read; fwrite(&oobh,sizeof(s_oob_header),1,f); @@ -351,25 +385,39 @@ uint32_t write_kf_stream_track(HXCFE_IMGLDR * imgldr_ctx,char * filepath,HXCFE_S int KryoFluxStream_libWrite_DiskFile(HXCFE_IMGLDR* imgldr_ctx,HXCFE_FLOPPY * floppy,char * filename) { - int i,j, nbrevolutions; - int track_step; + int i,j, nbrevolutions; + int track_step; + + char * tmp_str; + double sck; + + nbrevolutions = hxcfe_getEnvVarValue( imgldr_ctx->hxcfe, "KFRAWEXPORT_NUMBER_OF_REVOLUTIONS" ); + + track_step = 1; - nbrevolutions = hxcfe_getEnvVarValue( imgldr_ctx->hxcfe, "KFRAWEXPORT_NUMBER_OF_REVOLUTIONS" ); - - track_step = 1; - - if( hxcfe_getEnvVarValue( imgldr_ctx->hxcfe, "KFRAWEXPORT_DOUBLE_STEP" ) == 1 ) - track_step = 2; - - for(j=0;jfloppyNumberOfSide;j++) + if( hxcfe_getEnvVarValue( imgldr_ctx->hxcfe, "KFRAWEXPORT_DOUBLE_STEP" ) == 1 ) + track_step = 2; + + sck = DEFAULT_KF_SCLOCK; + tmp_str = hxcfe_getEnvVar( imgldr_ctx->hxcfe, "KFRAWEXPORT_SAMPLE_FREQUENCY", NULL); + if( tmp_str ) { - for(i=0;ifloppyNumberOfTrack;i++) - { - hxcfe_imgCallProgressCallback(imgldr_ctx,i + (j*floppy->floppyNumberOfTrack),floppy->floppyNumberOfTrack*floppy->floppyNumberOfSide ); - - write_kf_stream_track(imgldr_ctx, filename,floppy->tracks[i]->sides[j],i*track_step,j,nbrevolutions); + sck = atof(tmp_str); + if( !( sck >= (4 * 1000000) && sck <= (250 * 1000000) ) ) + { + sck = (double)DEFAULT_KF_SCLOCK; } - } + } + for(j=0;jfloppyNumberOfSide;j++) + { + for(i=0;ifloppyNumberOfTrack;i++) + { + hxcfe_imgCallProgressCallback(imgldr_ctx,i + (j*floppy->floppyNumberOfTrack),floppy->floppyNumberOfTrack*floppy->floppyNumberOfSide ); + + write_kf_stream_track(imgldr_ctx, filename,floppy->tracks[i]->sides[j],i*track_step,j,nbrevolutions,sck); + } + } + return HXCFE_NOERROR; }