asm mov bx,[headptr] // back to the head node for next bit\r
\r
asm cmp di,ax // done?\r
-asm jne expandshort\r
+ jne expandshort\r
}\r
}\r
else\r
\r
__asm\r
{\r
-asm mov bx,[headptr]\r
-asm mov cl,1\r
+ mov bx,[headptr]\r
+ mov cl,1\r
\r
-asm mov si,[sourceoff]\r
-asm mov di,[destoff]\r
-asm mov es,[destseg]\r
-asm mov ds,[sourceseg]\r
+ mov si,[sourceoff]\r
+ mov di,[destoff]\r
+ mov es,[destseg]\r
+ mov ds,[sourceseg]\r
\r
-asm lodsb // load first byte\r
+ lodsb // load first byte\r
\r
expand:\r
-asm test al,cl // bit set?\r
-asm jnz bit1\r
-asm mov dx,[ss:bx] // take bit0 path from node\r
-asm jmp gotcode\r
+ test al,cl // bit set?\r
+ jnz bit1\r
+ mov dx,[ss:bx] // take bit0 path from node\r
+ jmp gotcode\r
bit1:\r
-asm mov dx,[ss:bx+2] // take bit1 path\r
+ mov dx,[ss:bx+2] // take bit1 path\r
\r
gotcode:\r
-asm shl cl,1 // advance to next bit position\r
-asm jnc sourceup\r
-asm lodsb\r
-asm cmp si,0x10 // normalize ds:si\r
+ shl cl,1 // advance to next bit position\r
+ jnc sourceup\r
+ lodsb\r
+ cmp si,0x10 // normalize ds:si\r
asm jb sinorm\r
-asm mov cx,ds\r
-asm inc cx\r
-asm mov ds,cx\r
-asm xor si,si\r
+ mov cx,ds\r
+ inc cx\r
+ mov ds,cx\r
+ xor si,si\r
sinorm:\r
-asm mov cl,1 // back to first bit\r
+ mov cl,1 // back to first bit\r
\r
sourceup:\r
-asm or dh,dh // if dx<256 its a byte, else move node\r
-asm jz storebyte\r
-asm mov bx,dx // next node = (huffnode *)code\r
-asm jmp expand\r
+ or dh,dh // if dx<256 its a byte, else move node\r
+ jz storebyte\r
+ mov bx,dx // next node = (huffnode *)code\r
+ jmp expand\r
\r
storebyte:\r
-asm mov [es:di],dl\r
-asm inc di // write a decopmpressed byte out\r
-asm mov bx,[headptr] // back to the head node for next bit\r
+ mov [es:di],dl\r
+ inc di // write a decopmpressed byte out\r
+ mov bx,[headptr] // back to the head node for next bit\r
\r
-asm cmp di,0x10 // normalize es:di\r
+ cmp di,0x10 // normalize es:di\r
asm jb dinorm\r
-asm mov dx,es\r
-asm inc dx\r
-asm mov es,dx\r
-asm xor di,di\r
+ mov dx,es\r
+ inc dx\r
+ mov es,dx\r
+ xor di,di\r
dinorm:\r
\r
-asm sub [WORD PTR ss:length],1\r
-asm jnc expand\r
-asm dec [WORD PTR ss:length+2]\r
-asm jns expand // when length = ffff ffff, done\r
+ sub [WORD PTR ss:length],1\r
+ jnc expand\r
+ dec [WORD PTR ss:length+2]\r
+ jns expand // when length = ffff ffff, done\r
}\r
}\r
\r
=\r
======================\r
*/\r
+\r
void CA_ClearMarks (global_game_variables_t *gvar)\r
{\r
int i;\r
=\r
======================\r
*/\r
+\r
void CA_ClearAllMarks (global_game_variables_t *gvar)\r
{\r
_fmemset (gvar->video.grneeded,0,sizeof(gvar->video.grneeded));\r