О! Спасибо за подсказку, поправил настройку в браузере сразу загрузил в папку "Загрузок" !
Это фигово ( Но всё равно интересно посмотреть, под какой из бейсиков без переделок и адаптации пойдут?
Вид для печати
Ха! Там даже графика есть )
http://savepic.org/3034464.png
---------- Post added at 23:13 ---------- Previous post was at 23:11 ----------
Залью его в библиотеку в таком виде, а там посмотрим )
Обновленная программа для распознавания терминала.
Теперь в TSX-Plus программа устанавливает правильный режим терминала, а не зависает в вечном ожидании пока .TTINR завершится.
Для сборки программы вручную требуется RSXLIB.OBJ.
Попробовал откомпилировать тест DHRYSTONE в компиляторе РАФОС Си и с удивлением обнаружил, что всё работает:
Код:.AS HD4 DK
.AS HD4 C
.RU CC
# DHRY -JKZX
.LINK DHRY,SPEIS,CXLIB
.RU DHRY
Dhrystone(1.1) time for 5000 passes = 51
This machine benchmarks at 98 dhrystones/second
.
в какой теме ты Бейсики RT-шные выкладывал? Я в то время забил, а надо бы пособирать их в одну папку и к архиву прилепить вместе с такой шикарной книжкой)
Спасибо за рабочий образ компилятора, оно возможно и повтор (я не уточнял даже), просто прилепил в раздел ДВК весь архив из сообщения, вот сюда <__>
Вроде в этой и выкладывал.
...V02.03, мелкие косметические правки, опция выбора основания чисел
В качестве входного и/или выходного файла может быть указано устройство. Если выходной файл не указан, используется терминал.Код:*[oufile[.LST]=]infile[.SAV][/B:base][/N:count][/O:offset][/R:radix]
/B:base - базовый адрес [0]
/N:count - количество блоков [все]
/O:offset - стартовый блок [0]
/R:radix - основание чисел (OCT, DEC, HEX) [OCT]
Код:.DISASM SY:/O:2/N:1
000000 012737 003146 000100 MOV #3146,@#100
000006 005037 000102 CLR @#102
000012 005003 CLR R3
000014 011367 003714 MOV @R3,3734
Код:.DISASM SY:/O:2/N:1/R:DEC
00000 05599 01638 00064 MOV #1638,@#64
00006 02591 00066 CLR @#66
00010 02563 CLR R3
00012 04855 01996 MOV @R3,2012
Код:.DISASM SY:/O:2/N:1/R:HEX
0000 15DF 0666 0040 MOV #666,@#40
0006 0A1F 0042 CLR @#42
000A 0A03 CLR R3
000C 12F7 07CC MOV @R3,7DC
Добавим в копилку немного бесполезного софта ;)
Восьмеричный секундомер на панели индикатора KDJ11-B.
Валялась без дела панель от 11/84, решил приспособить к делу :)
К слову, неплохая тренировка по обжиму разрозненных проводков в IDC разъем. Теперь мне не страшен шлейф на 4 флопа для УКНЦ :)
Код:.TITLE DISP
.MCALL .CMKT,.EXIT,.MRKT
.MCALL .RSUM,.SCCA,.SPND
BDR = 177524 ;РЕГИСТР ИНДИКАТОРОВ
DISP: .SCCA #AREA,#FLAG ;ОТЛАВЛИВАЕМ CTRL/C
10$: CALL CRTN ;РИСУЕМ НОЛЬ И ЗАПУСКАЕМ СЧЕТ
.SPND ;ОСТАНАВЛИВАЕМ ПРОГРАММУ
;СЮДА ПОПАДАЕМ ЕСЛИ ДВА РАЗА НАЖАЛИ CTRL/C
.CMKT #AREA,#CRTN ;ОСТАНАВЛИВАЕМ ТАЙМЕР
MOV #77,@#BDR ;ОЧИЩАЕМ ИНДИКАТОР
.EXIT ;ВЫХОД
CRTN: TST FLAG ;НАЖИМАЛИ CTRL/C ДВА РАЗА?
BNE 10$ ;ДА
MOV LEDS,@#BDR ;ОБНОВЛЯЕМ ИНДИКАТОР
DEC LEDS ;ОБНОВЛЯЕМ ЗНАЧЕНИЕ
BIC #^C77,LEDS ;ОЧИЩАЕМ ЛИШНИЕ БИТЫ
;ВОБЩЕМ-ТО ПРОСТО ТАК
.MRKT #AREA,#TIME,#CRTN,#CRTN ;ЗАПУСКАЕМ ТАЙМЕР
RETURN ;ВОЗВРАТ
10$: .RSUM ;ЗАПУСКАЕМ ПРОГРАММУ
RETURN ;ВОЗВРАТ
TIME: .WORD 0,50. ;ТАЙМАУТ 50 ТИКОВ
LEDS: .WORD 77 ;ЗНАЧЕНИЕ "00" ДЛЯ ИНДИКАТОРА
FLAG: .WORD 0 ;ФЛАГ НАЖАТИЯ CTRL/C
AREA: .BLKW 4 ;ОБЛАСТЬ EMT
.END DISP