Участник:Dim568/Silmarils IO DOS: различия между версиями

Материал из Old-Games.RU Wiki
Перейти к навигации Перейти к поиску
Строка 21: Строка 21:
 
<syntaxhighlight lang="cpp">
 
<syntaxhighlight lang="cpp">
 
ReadBaseHeader();
 
ReadBaseHeader();
 +
int8_t control = (H1 >> 8) & 0xFE8; //старшие 7 бит
 
if( H2 != 0 ){
 
if( H2 != 0 ){
   if((int16_t)((H1&0xFE00)>>8) < 0){
+
   if( control < 0){
 +
    if( control == 0xA0 ){
 +
    }else{
 +
    }
 
   }else{
 
   }else{
 
   }
 
   }
 
}else{
 
}else{
 
   ReadExtendedPart();
 
   ReadExtendedPart();
   if((int16_t)((H1&0xFE00)>>8) < 0){
+
   if( control < 0){
 +
    if( control == 0xA0 ){
 +
    }else{
 +
    }
 
   }else{
 
   }else{
 
   }
 
   }
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>

Версия 17:09, 9 сентября 2020

Header

Base

0 1 2 3 4 5
H0 H1 H2

Extend

6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
H3 H4 H5 H6 H7 ?? H9


Logic

Base

ReadBaseHeader();
int8_t control = (H1 >> 8) & 0xFE8; //старшие 7 бит
if( H2 != 0 ){
  if( control < 0){
    if( control == 0xA0 ){
    }else{
    }
  }else{
  }
}else{
  ReadExtendedPart();
  if( control < 0){
    if( control == 0xA0 ){
    }else{
    }
  }else{
  }
}