Оберон-клуб «ВЄДАsoft»

Твердыня модульных языков
Текущее время: 19 мар 2024, 13:03

Часовой пояс: UTC + 2 часа




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
СообщениеДобавлено: 25 авг 2019, 19:22 
Не в сети
Аватара пользователя

Сообщения: 1019
Откуда: Днепропетровская обл.
Реализован модуль Mem128 для поддержки страниц памяти 128 Кб и загрузки блоков кода с ленты и дискеты.

Код: "OBERON"
  1. DEFINITION Mem128;
  2.  
  3. CONST
  4. OK = 0;
  5. ErrTapeLoading = 1;
  6. ErrLoadingHeader = 2;
  7. ErrNameNotMatch = 3;
  8. ErrBreakPressed = 4;
  9.  
  10. VAR
  11. filesize-: SHORTINT;
  12.  
  13. PROCEDURE IsTRDOS (): BOOLEAN;
  14. PROCEDURE LoadDisk (filename: ARRAY OF SHORTCHAR; adr: INTEGER): BOOLEAN;
  15. PROCEDURE LoadTape (filename: ARRAY OF SHORTCHAR; adr: INTEGER): BYTE;
  16. PROCEDURE Page (n: BYTE);
  17.  
  18. END Mem128.

Пример работы со страницами:
Код: "OBERON"
  1. MODULE TestMem128; (*$MAIN*)
  2. IMPORT b := Basic, m := Mem128;
  3.  
  4. BEGIN
  5. b.Init;
  6. m.Page(0); b.POKE(65535, 111);
  7. m.Page(1); b.POKE(65535, 123);
  8. m.Page(2); b.POKE(65535, 132);
  9. m.Page(0); b.PRSTR("0 "); b.PRINT(b.PEEK(65535)); b.PRLN;
  10. m.Page(1); b.PRSTR("1 "); b.PRINT(b.PEEK(65535)); b.PRLN;
  11. m.Page(2); b.PRSTR("2 "); b.PRINT(b.PEEK(65535)); b.PRLN;
  12. b.Quit
  13. END TestMem128;
Изображение

Пример загрузки блока кода:

Изображение


Вложения:
TestMem128.tap [7.38 КБ]
Скачиваний: 565
TestMem128.trd [11.5 КБ]
Скачиваний: 585
Вернуться к началу
 Профиль  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC + 2 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
© VEDAsoft Oberon Club