﻿Новая концепция сохранений.

Разделяем блоки на блоки эмулятора и блоки БК определённой конфигурации.

Блоки эмулятора
1. Preview      скриншот экрана на момент сохранения  (опциональный)
2. ConfigINI    текущий набор опций и настроек  (опциональный)
3. FrameData    данные текущего фрейма (опциональный, без него фрейм начнётся сначала и будет сбой синхронизации)
4. Platform     тип конфигурации БК, и список устройств (обязательный)
5. CPU Regs     содержимое РОН процессора

Блоки устройств.

Блоки БК10, БК11(М):
1. RAM Set      содержимое ОЗУ
2. ROM Set      содержимое одного модуля ПЗУ (8кБ или 4кБ)
3. ROM Map      карта ПЗУ, количество, размеры, какое конкретно, и флаг - есть его ROM Set или нет.
5. Port_Regs    содержимое портов и регистров ВУ платы БК11, для БК10 - такое же. неиспользуемые регистры =0
6. Mem Map      карта памяти, где ОЗУ, где ПЗУ.
7. Кастомный блок опциональный, для каждого устройства там хранится что-то своё, индивидуальное.

Блоки МСТД:
То же самое, но Ram Set может не быть

Блоки КНГМД:
То же самое, но Ram Set может не быть


Rom Params {
    nID,        // ID, по которому будем искать нужный блок Rom Set
    nBank,      // номер банка, куда грузить
    nSize,      // размер ПЗУ, возможно его можно брать из Rom Set
    !!! Вот пока непонятно как определять, стандартное это ПЗУ или кастомное.
}