User Tag List

Страница 2 из 4 ПерваяПервая 1234 ПоследняяПоследняя
Показано с 11 по 20 из 35

Тема: Многообразие океанских бейсиков

  1. #11

    Регистрация
    28.03.2006
    Адрес
    Санкт-Петербург
    Сообщений
    2,777
    Спасибо Благодарностей отдано 
    555
    Спасибо Благодарностей получено 
    200
    Поблагодарили
    138 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    ivagor, монументально. А chr или эквивалента для вывода не-ASCII кодов нет?

    В том, другом бейсике, вроде был оператор PLOT, и еще, кажется, оператор переключения видеорежимов.

  2. #12

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,391
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от tnt23 Посмотреть сообщение
    А chr или эквивалента для вывода не-ASCII кодов нет?
    В IBASIC нет, поэтому я предложил использовать машиннокодовую процедуру.

    Кратко про графические возможности MB.COM
    CLS режим. Младший полубайт. 0 - "обычный" режим 256; 8-15 - режим 256 "early scroll"; 1-7 - режим 512.
    SCRN палитра,цвет_фона
    COLOR цвет изображения
    CURS x,y - перемещение графического курсора (режим 256)
    PLOT x,y - рисование линии из текущей точки до x,y (режим 256)
    Наличие пробела после ключевого слова обязательно

  3. #13

    Регистрация
    28.03.2006
    Адрес
    Санкт-Петербург
    Сообщений
    2,777
    Спасибо Благодарностей отдано 
    555
    Спасибо Благодарностей получено 
    200
    Поблагодарили
    138 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    режим 256 "early scroll"
    Что бы это могло быть? некоторый бит в служебной ячейке BIOS запрещает скроллинг совсем.

  4. #14

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,391
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от tnt23 Посмотреть сообщение
    Что бы это могло быть? некоторый бит в служебной ячейке BIOS запрещает скроллинг совсем.
    И так можно сказать. При CLS 8-15 будут скроллится только 2 верхние строки, а основной экран останется неподвижным.
    Бит 3 (маска 00001000) ячеек BFDC и BFE6. 0 - можно скроллить, 1 - нельзя.

  5. #15

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,391
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Завершение эпопеи с IBASIC. Все же решил пробежать по служебным директивам (здесь три из них под номерами 1, 2, 5)
    1. Служебные директивы (только те, которые необычные, RUN и LIST не вижу смысла комментировать)
    1.1 SCR - просто стирает текущую программу в памяти (в других бейсиках это часто NEW)
    1.2 NEW[имя] - как SCR, но с заданием имени.
    1.3 SAVE[имя] - выгрузка программы
    1.4 OLD[имя] - загрузка программы
    1.5 SYS - выход в дос
    1.6.1 NAME - показывает текущее имя программы
    1.6.2 NAMEимя - задает новое имя программы
    1.7 UNSAVE[имя.BSC] или ERA[имя.BSC] - удаление программы с диска
    1.8 LLIST - в данном бейсике синоним LIST, такие дела
    1.9 NULLаргумент. Аргумент от 0 до 255. Задание задержки при переходе к новой строке или при скролле.

    Замечание по поводу директив с именем в квадратных скобках. Это значит, что имя можно указывать, а можно не указывать, и тогда будет использовано имя заданное при старте программы или через NAME (или запрошено в случае OLD).

    Дополнение про GRAF - это не просто очистка экрана, этот оператор установит 3й бит в BFDC и BFE6 и получится аналог CLS 8-15 в MB.COM. Выйти из этого режима можно по директиве LIST

    И мне все же интересно, какой бейсик был прототипом. Это явно не микрософт.

    - - - Добавлено - - -

    Свел заметки по IBASIC в один файл и исправил ошибки.
    Вложения Вложения
    • Тип файла: zip IBASIC.zip (1.8 Кб, Просмотров: 134)
    Последний раз редактировалось ivagor; 02.02.2019 в 14:35. Причина: исправил про NULL и дополнил про GRAF и LIST

  6. #16

    Регистрация
    28.03.2006
    Адрес
    Санкт-Петербург
    Сообщений
    2,777
    Спасибо Благодарностей отдано 
    555
    Спасибо Благодарностей получено 
    200
    Поблагодарили
    138 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Дополнение про GRAF - это не просто очистка экрана, этот оператор установит 3й бит в BFDC и BFE6 и получится аналог CLS 8-15 в MB.COM. Выйти из этого режима можно по директиве LIST
    Существует как минимум два разных BIOS для "Океана", с разными адресами рабочих ячеек. BFDC и BFE6 (занятно, что сразу в двух местах устанавливается бит), похоже, относятся ко второй версии BIOS, в которой добавлены процедуры работы с НГМД и поддержка клавиатуры изменена в сторону "матричных" вариантов.

  7. #16
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #17

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,303
    Спасибо Благодарностей отдано 
    1,030
    Спасибо Благодарностей получено 
    813
    Поблагодарили
    484 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    OLD и UNSAVE это прям BASIC-PLUS-2 для PDP-11. UNTRAP тоже, но из фортрана откуда-то.
    Больше игр нет

  9. #18

    Регистрация
    28.03.2006
    Адрес
    Санкт-Петербург
    Сообщений
    2,777
    Спасибо Благодарностей отдано 
    555
    Спасибо Благодарностей получено 
    200
    Поблагодарили
    138 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    И мне все же интересно, какой бейсик был прототипом. Это явно не микрософт.
    Спросить уже не у кого https://ocean.ru/index.php/novosti-l...eevich-tilinin

    Можно предположить, что перепиливали с чего-то доступного в период с 82 по 86 год. Не считая совсем экзотики, доступны тогда были СМ ЭВМ, клоны PDP-11, а из восьмибитных даже не сообразить сходу.

  10. #19

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,391
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от tnt23 Посмотреть сообщение
    Существует как минимум два разных BIOS для "Океана", с разными адресами рабочих ячеек. BFDC и BFE6 (занятно, что сразу в двух местах устанавливается бит), похоже, относятся ко второй версии BIOS, в которой добавлены процедуры работы с НГМД и поддержка клавиатуры изменена в сторону "матричных" вариантов.
    Пользуюсь конфигом emu Okean-240 fdd, соответственно там используются образы пзу monitorfdd.bin и cpm80fdd.bin

    Цитата Сообщение от tnt23 Посмотреть сообщение
    Спросить уже не у кого
    Очень жаль

  11. #20

    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,926
    Спасибо Благодарностей отдано 
    105
    Спасибо Благодарностей получено 
    291
    Поблагодарили
    217 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    По поводу IBASIC - порядок токенов напоминает xybasic (на котором был основан бейсик для Баширии-2м), но как будто специально изменён порядок оставшихся токенов. Однако первый токен LET на своём месте, больше вроде нигде такого не было. Вот список токенов из исходников:

    Скрытый текст

    Код:
    ;branch addresses for command execution, in order of table position
    cmdta:	dw	let
    	dw	ifcom
    	dw	for
    	dw	next
    	dw	goto
    	dw	gosub
    	dw	print
    	dw	input
    	dw	read
    	dw	retrn
    	dw	def
    	dw	dim
    	dw	gtdel
    	dw	restr
    	dw	stop
    	dw	endcm
    	if	not wild
    	dw	null
    	endif
    	dw	calcm
    	dw	scall
    	if	not wild
    	dw	put
    	dw	poke
    	dw	wait
    	endif
    	dw	tcoff
    	dw	tcon
    	dw	tpoff
    	dw	tpon
    	dw	break
    	dw	unbrk
    	if	not wild
    	dw	enabl
    	dw	dsabl
    	dw	rndiz
    	endif
    	dw	rem
    	dw	delay
    	dw	save
    	dw	load
    	dw	list
    	dw	clear
    	dw	newcm
    	dw	run
    	dw	cont
    	if	not camac
    	dw	auto
    	dw	delet
    	dw	edit
    	dw	renum
    	endif
    	if	not wild
    	dw	move
    	endif
    	dw	exec
    	if	epstn
    	dw	plot
    	endif
    	if	sdisk and not c3885
    	dw	open
    	dw	close
    	dw	linpt
    	dw	margn
    	if	bendx
    	dw	bmsos
    	dw	bname
    	dw	bzap
    	else
    	dw	dircm
    	dw	scrat
    	endif
    	endif
    	if	bendx
    	dw	bfils
    	endif
    	if	camac
    	dw	camcd
    	dw	declr
    	dw	drivr
    	dw	xenab
    	dw	rstat
    	dw	camcl
    	dw	cinit
    	dw	cinhi
    	dw	loopc
    	dw	bypas
    	dw	onlin
    	dw	pulse
    	dw	open
    	dw	close
    	if	not c3885
    	dw	creat
    	endif
    	dw	lampa
    	dw	bkset
    	dw	block
    	dw	cenab
    	dw	cdsab
    	dw	sttim
    	else
    	if	wild
    	dw	wgbuf
    	else
    	dw	assig
    	endif
    	if	realt
    	dw	sttim
    	else
    	dw	time
    	endif
    	endif
    	if	packi
    	dw	onlin
    	dw	oflin
    	dw	field
    	endif
    	dw	on			;must follow ONLINE
    [свернуть]

Страница 2 из 4 ПерваяПервая 1234 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Родословная бейсиков для 580ВМ80
    от esl в разделе Разное
    Ответов: 103
    Последнее: 04.10.2025, 13:00

Ваши права

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