TempleOSCD_150216.ISO
This commit is contained in:
1 parent
64f679eeb9
commit
401601816c
531 files changed
+23341
-22071
No files matched your search
@@ -15,9 +15,9 @@ typedef unsigned char BOOL;
|
||||
#define ARC_MAX_BITS 12
|
||||
#define ARC_MAX_TABLE_ENTRY ((1<<ARC_MAX_BITS)-1)
|
||||
|
||||
#define CT_NONE 0
|
||||
#define CT_7_BIT 1
|
||||
#define CT_8_BIT 2
|
||||
#define CT_NONE 1
|
||||
#define CT_7_BIT 2
|
||||
#define CT_8_BIT 3
|
||||
|
||||
class ArcTableEntry
|
||||
{ public:
|
||||
@@ -55,7 +55,7 @@ class ArcCompressStruct
|
||||
{ public:
|
||||
DWORD compressed_size,compressed_size_hi,
|
||||
expanded_size,expanded_size_hi;
|
||||
WORD compression_type,flags;
|
||||
BYTE compression_type;
|
||||
BYTE body[1];
|
||||
};
|
||||
|
||||
@@ -175,7 +175,7 @@ void ArcExpandBuf(ArcCs *c)
|
||||
c->dst_pos=dst_ptr-c->dst_buf;
|
||||
}
|
||||
|
||||
ArcCs *NewArcCs(DWORD expand,DWORD seven_bit)
|
||||
ArcCs *NewArcCs(DWORD expand,DWORD compression_type)
|
||||
{
|
||||
ArcCs *c;
|
||||
c=(ArcCs *)malloc(sizeof(ArcCs));
|
||||
@@ -184,7 +184,7 @@ ArcCs *NewArcCs(DWORD expand,DWORD seven_bit)
|
||||
c->stack_base=(BYTE *)malloc(ARC_MAX_TABLE_ENTRY+1);
|
||||
c->stack_ptr=c->stack_base;
|
||||
}
|
||||
if (seven_bit)
|
||||
if (compression_type==CT_7_BIT)
|
||||
c->min_bits=7;
|
||||
else
|
||||
c->min_bits=8;
|
||||
@@ -210,7 +210,6 @@ BYTE *ExpandBuf(ArcCompressStruct *r)
|
||||
ArcCs *c;
|
||||
ArcCompressStruct *r2=r;
|
||||
BYTE *result;
|
||||
DWORD seven_bit;
|
||||
|
||||
if (r->compression_type>CT_8_BIT)
|
||||
return NULL;
|
||||
@@ -220,12 +219,11 @@ BYTE *ExpandBuf(ArcCompressStruct *r)
|
||||
result=(BYTE *)malloc(r2->expanded_size+1);
|
||||
result[r2->expanded_size]=0; //terminate
|
||||
|
||||
seven_bit=(r2->compression_type==CT_7_BIT);
|
||||
if (r2->compression_type==CT_NONE) {
|
||||
memcpy(result,r2->body,r2->expanded_size);
|
||||
goto expand_end;
|
||||
}
|
||||
c=NewArcCs(TRUE,seven_bit);
|
||||
c=NewArcCs(TRUE,r2->compression_type);
|
||||
c->src_size=r2->compressed_size*8;
|
||||
c->src_pos=(sizeof(ArcCompressStruct)-1)*8;
|
||||
c->src_buf=(BYTE *)r2;
|
||||
@@ -303,8 +301,8 @@ int main(int argc, char* argv[])
|
||||
if (okay)
|
||||
convert(name,cvt_ascii);
|
||||
else
|
||||
puts("TSZ [-ascii] filename\r\n\r\n"
|
||||
"TSZ expands a single TempleOS file.\r\n"
|
||||
puts("TOSZ [-ascii] filename\r\n\r\n"
|
||||
"TOSZ expands a single TempleOS file.\r\n"
|
||||
"The -ascii flag will convert nonstandard TempleOS\r\n"
|
||||
"ASCII characters to regular ASCII.\r\n"
|
||||
);
|
||||
Reference in new issue
Block a user