Программистам - обмен опытом: "Подсчет мозгов" - AUTOconfig v5.03.

ZX Format #05
AUTOconfig v5.03

music by DNK

(C) CREATOR CODE
________________________________

          "... И ТОГО И ДРУГОГО,
              И МОЖНО БЕЗ ХЛЕБА"
                       (В.ПУХ)

 Данная процедура при её запуске
определяет  тип компютера, и со-
ответственно объём памяти.
 Определяются :

Sinclair 48/128/512k
TURBO 2+ 128/1024k v6.00-v7.1
ATM turbo 1 128/512k v4.10-v5.20
Scorpion 128/512k
PROFI 128/1024k

 После  определения типа начина-
ется  определение объёма свобод-
ной  памяти.  Результаты  данных
изысканий заносятся в переменные
 TYPE - тип компютера.
 PAGE   -  количество  листаемых
страниц.

 Переключение  страниц  по физи-
ческому номеру - процедура
 EX_RAM  по логическому - ONPAGE
номер  страницы  в аккумуляторе.
пример:
      ...
       LD A,8 ;ВОСЬМАЯ СТРАНИЦА
       CALL EX_RAM
      ...
 Подключить  восьмую  старницу в
разъём.  В  данном примере будет
подключена    реальная   восьмая
страница.
      ...
       LD A,8
       CALL ONPAGE
      ...
 В  этом  примере в разъём будет
подключена  восьмая  по  счёту в
таблице  присутствующих страниц.
( с начала  там  исключены 2 и 5
страницы).



 Если нужно исключить из оборота
какие-то  страницы (как например
в  SCORPION 8 страница) то в ак-
кумуляторе номер удаляемой стра-
ницы и вызвать процедуру
 DEBUG,пример:
       ...
        LD A,8
        CALL DEBUG
       ...
 Исключить страницу 8 из обраще-
ния.


 распределение  битов  в  ячейке
TYPE :

 0 - SPECTRUM 128K порт #7FFD
 1 - SCORPION/KAY порт #1FFD
 2 - PROFI порт #FDFD
 3 - TURBO 2+ порт #FFF7
 4 - ATM-TURBO порт #FDFD
 5 - SPECTRUM 256/512K
 6 -
 7 - по адресу 8,#C3 (SCORPION)

 Естественно тип компютера опре-
деляется несколькоми битами.
  Например при определении TURBO
2+ в ячейке TYPE будет - 9 (най-
дены  #7FFD и #FFF7),если проце-
дура запушена из 128кб и 8 - ес-
ли процедура запущена из 48кб.

(C) CREATOR CODE 1996 MCMXCVI
 ZF>  ентот прог тоже в приложе-
нии, в виде TASM4'го исходника.