откуда растут уши у советских бейсиков

Советские программируемые калькуляторы, микрокомпьютеры и большие ЭВМ, не попавшие в другие разделы

Moderator: Shaos

Sergei Frolov
Novelist
Posts: 33
Joined: 03 Oct 2001 17:00
Location: Питер

Re: откуда растут уши у советских бейсиков

Post by Sergei Frolov »

rw6hrm wrote:Так вот, возвращаясь к пикопоканью - такая адресация была только для 8080? А для 6502 потом поправили?
В Бейсике-АГАТ - обращение по отрицательным числам после 32К
mos6502
Junior
Posts: 3
Joined: 21 Jul 2018 01:18

Re: откуда растут уши у советских бейсиков

Post by mos6502 »

rw6hrm wrote:Так вот, возвращаясь к пикопоканью - такая адресация была только для 8080? А для 6502 потом поправили?
В бейсике для Вектор-06ц для адресов выше 32К использовались положительные числа. Думаю, адресация отрицательными - это особенность не столько архитектуры процессора, сколько логики работы самого Бейсика со знаковыми / беззнаковыми целыми числами.
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Re: откуда растут уши у советских бейсиков

Post by Lavr »

mos6502 wrote:Думаю, адресация отрицательными - это особенность не столько архитектуры процессора,
сколько логики работы самого Бейсика со знаковыми / беззнаковыми целыми числами.
Я тоже придерживаюсь этого мнения, что где-то коррекцию адреса внесли в код Васика,
а где-то оставили как "зогатку" для пользователя.
Меня почему-то это никогда не смущало, хотя я и работал на Васиках "Специалиста", и сам
декомпилировал их, но меня другое интересовало - как заставить их считать быстрее...
Выход был только один - вынести критическую часть в подпрограмму на ассемблере.

Но сейчас-то можно точно увидеть, что, почему и как - исходники всех Васиков имеются.
Я, когда делал модель 6502 в Proteus, компилировал Васик от Гранта Сирла многократно,
поскольку мне не Васик нужен был, а тесты на ассемблере - ну я их и приписывал в хвост
Васика... :wink:
iLavr
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Re: откуда растут уши у советских бейсиков

Post by Lavr »

Ну вы обычно сами всё знаете, и давать вам советы - только портить... :lol:


P.S. А если по существу, то Сирловский Васик великолепно прокомментирован в исходниках
на английском, так что где и что находится - там просто очевидно...
iLavr
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Re:

Post by Lavr »

Lavr wrote:Прочитал вот тут, что Вильнусский Васик был полностью доморощенным...
Есть еще один весьма знаменитый и по сей день BASIC, к которому Билли Г. не имел никакого отношения.
Более того этот BASIC и расточили коллективно с открытым кодом в пику Билли Г., когда он написал
своё знаменитое письмо.
Tiny BASIC

Прочитать о Tiny BASIC и взять исходники на ассемблере i8080 можно здесь:
http://cpuville.com/Code/Tiny-BASIC.html

А знаменит и по сей день Tiny BASIC, потому как благодаря простому и открытому коду его к чему
только не адапировали и на чем только не переписывали... :o
http://www.ittybittycomputers.com/IttyBitty/TinyBasic/index.htm
iLavr
User avatar
Shaos
Admin
Posts: 24083
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re:

Post by Shaos »

Да - тут Tiny BASIC упоминался уже - на третьей странице:
Shaos wrote:
Shaos wrote:
Lavr wrote:Интересно, а альтернативные i8080 ВАСИКИ есть, если код посмотреть?
Не все же прародил БГ?
вот это вот басик (RDK PROMPT BASIC V3.2 3K) не похож на гейтсовский (хотя позже выяснилось, что таки похож - на басик LEVEL1 для TRS-80):

Code: Select all

-rw-r--r-- 1 shaos users 3334 Mar 28  1999 BAS-RDK.RKS
а у всех остальных таблица токенов (находящяяся где-то вначале, где-то в конце, где-то меньше, где-то больше) говорит о том, что их оригинальный автор - биллогейц...
последние раскопки в интернете показали, что TRS-80 Level1 это не микрософтовский бейсик, т.к. микрософтовский начался только с TRS-80 Level II...
Level I Basic was based on Li-Chen Wang's free Tiny BASIC, additional functions added by Radio Shack.[8] It achieved a measure of noteworthiness due in large part to its outstanding manual,[5] written by David Lien, which presented lessons on programming with text and humorous graphics, making the subjects very easy to understand. It had only two string variables (A$ and B$), 26 numeric variables (A - Z) and one array, A(). Code for functions like SIN(), COS() and TAN() was not included in ROM but printed at the end of the book. The only error messages were: "WHAT?" for syntax errors, "HOW?" for arithmetic errors such as division by zero, and "SORRY" for out of memory errors.
http://en.wikipedia.org/wiki/TRS-80

т.е. BAS-RDK.RKS - это в каком-то смысле единственный легальный советский бейсик для любительских компов, т.к. только он основан на фришном продукте (хоть и тормозном), а все остальные - на коммерческом...
P.S. На самом деле было несколько тини-бейсиков, написанных по одной и той же спецификации:
For some implementations, including the first Tiny BASIC and Tom Pittman's Tiny BASIC,[8] a virtual machine was used, others such as Palo Alto Tiny BASIC and 6800 Tiny BASIC, were direct interpreters. In a virtual machine implementation, the Tiny BASIC interpreter is itself run on a virtual machine interpreter. The designer's idea to use an application virtual machine goes back to Val Schorre (with META II, 1964) and Glennie (Syntax Machine).[9]
в TRS-80 Level1 использовался "Palo Alto Tiny BASIC" (от которого произошёл советский BAS-RDK), а то, что чуть выше приводит Лавр - это про "Tom Pittman's Tiny BASIC", у которого даже есть сишный вариант (менее полутора тысяч сишных строк - см. http://www.ittybittycomputers.com/IttyBitty/TinyBasic/TinyBasic.c)
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 24083
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: откуда растут уши у советских бейсиков

Post by Shaos »

в честь 50-летия фирмы Микрософт Билл Гейц выпустил исходный код альтаир-бейсика :roll:

https://www.thurrott.com/microsoft/319244/bill-gates-celebrates-microsofts-50th-by-releasing-altair-basic-source-code

вот собственно сам прямой линк на PDF с листингом:

https://images.gatesnotes.com/12514eb8-7b51-008e-41a9-512542cf683b/34d561c8-cf5c-4e69-af47-3782ea11482e/Original-Microsoft-Source-Code.pdf
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
FizikS
Maniac
Posts: 264
Joined: 11 Oct 2018 00:52
Location: г. Клинцы, Брянская обл.

Re: откуда растут уши у советских бейсиков

Post by FizikS »

Shaos wrote: 06 Apr 2025 17:24 в честь 50-летия фирмы Микрософт Билл Гейц выпустил исходный код альтаир-бейсика :roll:
Энтузиаст с ником LuciOfStars решил вручную набрать весь исходный текст интерпретатора Altair BASIC с открытой копии распечатки кода от Билла Гейтса.

Подробности здесь: https://habr.com/ru/news/898504/