"П.Нортон "Программно-аппаратная организация компьютера IBM PC"" - читать интересную книгу автора



Приложение 1.1 Текст программы визуализации всех символов на экране
дисплея (Бейсик).

1000 REM Листинг 1.1 -- Программа для отображения всех
1010 REM символов экрана. (С) Авторское право 1983,
1020 REM Питер Нортон
1030 GOSUB 2000 'ЗАГОЛОВОК
1040 GOSUB 3000 'ОПРЕДЕЛЕНИЕ ТИПА ДИСПЛЕЯ И УСТАНОВКА АДРЕСА
1050 GOSUB 2000 'СНОВА УСТАНОВИТЬ ЗАГОЛОВОК
1060 GOSUB 4000 'ФОРМИРОВАНИЕ ОКРУЖАЮЩИХ КОММЕНТАРИЕВ
1070 GOSUB 5000 'ФОРМИРОВАНИЕ МАССИВА ЭКРАНА
1080 GOSUB 6000 'ЗАВЕРШЕНИЕ РАБОТЫ И ВОЗВРАТ В ДОС
2000 REM Подпрограмма вывода заголовка
2010 KEY OFF : CLS : WIDTH 80
2020 REM
2030 PRINT " Программы для книги "Персональный компьютер"
2040 PRINT " фирмы "IBM".(С) Авторское право 1983"
2050 PRINT " Питер Нортон"
2060 PRINT
2070 PRINT "Программа 1-1: Демонстрация всех символов экрана"
2999 RETURN
3000 REM Подпрограмма проверки типа дисплея
3010 PRINT
3020 PRINT "Прежде чем продолжить работу сообщите,"
3025 PRINT "дисплей цветной-графический?";
3030 GOTO 3060
3040 PRINT
3050 PRINT "(ответ Д или Н)";
3060 ANSWER$ = INKEY$
3070 IF LEN(ANSWER$) < 1 THEN 3060
3080 IF LEN(ANSWER$) > 1 THEN 3040
3090 SEGVAL! = 0
3100 IF MID$(ANSWER$,1,1) = "Y" THEN SEGVAL! = &HB800 'Цветной
3110 IF MID$(ANSWER$,1,1) = "y" THEN SEGVAL! = &HB800 'Цветной
3120 IF MID$(ANSWER$,1,1) = "N" THEN SEGVAL! = &HB000 'Монохр.
3130 IF MID$(ANSWER$,1,1) = "n" THEN SEGVAL! = &HB000 'Монохр.
3140 IF SEGVAL! = 0 THEN 3040
3150 DEF SEG = SEGVAL!
3999 RETURN
4000 REM подпрограмма для формирования сопроводительных
4005 REM сообщений
4010 FOR HEX.DIGIT% = 0 TO 15
4020 LOCATE 6,HEX.DIGIT% * 3 + 1
4030 PRINT HEX$(HEX.DIGIT%)
4040 LOCATE HEX.DIGIT% + 8,8
4050 PRINT HEX$(HEX.DIGIT%)
4060 NEXT HEX.DIGIT%
4070 LOCATE ,,0