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

Материал из Old-Games.RU Wiki
Перейти к навигации Перейти к поиску
(Содержимое страницы заменено на « Silmarils IO Structure (DOS)»)
 
(не показаны 3 промежуточные версии этого же участника)
Строка 1: Строка 1:
Черновик<br />
 
=Silmarils IO Structure=
 
{| class="wikitable"  style="text-align:center;" |
 
  
== Base Header ==
+
[[Участник:Dim568/Silmarils_IO_DOS|Silmarils IO Structure (DOS)]]
|-
 
| 0|| 1 || 2 || 3 || 4 || 5
 
|-
 
| colspan="2"  | H0 || colspan="2"  | H1 || colspan="2" | H2
 
|}
 
 
 
H2 - используется как флаг для определения алгоритма обработки файла<br />
 
 
 
===H2 равен 1===
 
<syntaxhighlight lang="cpp">
 
uint16_t VAL1 = H0 - 6
 
uint16_t _H1 = H1&0xFEFF;
 
int8_t Control_1 = (int8_t)(_H1>>8);
 
if(Control_1 > 0){
 
  _H1 &= 0xFF;
 
}else{
 
}
 
</syntaxhighlight>
 
 
 
===H2 равен 0===
 
Дочитываются дополнительные 16 байт заголовка
 
 
 
{| class="wikitable"  style="text-align:center;" |
 
|-
 
| 6 || 7 || 8 || 9 || 10 || 11 || 12 || 13 || 14 || 15 || 16 || 17 || 18 || 19 || 20 || 21
 
|-
 
| colspan="2" | H3 || colspan="2" | H4 ||
 
|}
 
 
 
<syntaxhighlight lang="cpp">
 
uint16_t VAL1 = ((H3/4)+1)*16;
 
VAL1 += 0; // Need check in time
 
</syntaxhighlight>
 

Текущая версия на 17:21, 9 сентября 2020