Новые возможности БК

Группа разработчиков программного обеспечения персонального компьютера «Электроника БК-0010», объединяемая кооперативом «Информ», в течение уже трёх лет работает над системными программами, которые превращают этот бытовой компьютер в профессиональный. Каждый разработчик решал свою частную задачу, преследуя собственную цель. Эти разработки сформировались в некую систему, апробированную в многочисленных применениях. Конечно же, объективно цель была всеобщей, и очень скоро обнаружилось, что многие пользователи микрокомпьютеров БК-0010 ищут решения тех же проблем.

Кооператив «Информ» поставляет ряд программ, которые представляют собой набор «деталей», «узлов» и «инструментов». Этот набор дает возможность создавать прикладные системы - новые программные продукты - для различных областей применения (расчёты и математическое моделирование, автоматизация исследований и технологических процессов, образование и культурный досуг). Пользователи БК-0010 смогут эффективно заниматься этой работой, когда получат наши программы. С ними легко работать - все они снабжены исчерпывающими руководствами по использованию.

Ниже перечислены и кратко описаны предлагаемые в настоящий момент программные продукты.

Интерфейс Внешних Функций (ИВФ) интерпретатора Фокал-БК-0010 позволяет расширять язык Фокал новыми функциями (процедурами), приспосабливая компьютер к какому-либо классу прикладных задач. Внешние функции - это программы в кодах. Они работают быстро и экономят память компьютера. За счёт этого значительно повышается эффективность машины. Пользователь может сам создавать нужные ему системы внешних функций, имея только ИВФ, или наращивать готовые системы (системы-заготовки), добавляя необходимые процедуры.

Система Внешних Функций «МАССИВЫ 2» позволяет определять и использовать числовые массивы данных трёх типов: байт, целое и действительное (1, 2 и 4 байта на одно число). Фокал (без системы «МАССИВЫ 2») разрешает только действительные числа (в формате с плавающей точкой), выделяя для каждого данного 8 байт памяти. Ко всему ещё и время обращения к таким данным сильно зависит от их количества. Система «МАССИВЫ 2» снимает эти проблемы и в любом приложении оказывается эффективной.

Система Внешних Функций «Музыка-Цвет-Джойстик» (СВФМЦД) является набором процедур для организации программного интерфейса пользователя. Эта система обеспечивает прикладные программы средствами эффективного диалога с пользователем: окнами, музыкальными сообщениями, интерактивными операциями через указатель информации джойстик. СВФМЦД версии 01 позволяет создавать графические редакторы.

Система машинной графики PLOT (Фокал) реализует простой графический язык, создаёт удобства при программировании графического вывода. Она превосходно подходит к системе «Музыка-Цвет-Джойстик», при этом пользователь приобретает инструмент для полноценной оконной графики.

На основе двухлетнего опыта создания и эксплуатации разнообразных систем внешних функций разработчики пришли к новой версии ИВФ. Она получила название «Интерфейс Внешних Функций с режимом Расширения Памяти» (ИВФ-РП). ИВФ-РП поддерживает режим РП и является перемещаемым. Системы функций генерируются из библиотеки файлов на магнитной ленте с помощью диалоговой программы-компоновщика. Скомпонованные системы могут в свою очередь включаться в библиотеку файлов. Автоматическая генерация упрощает адаптацию машины к прикладным задачам пользователя.

На основе ИВФ-РП работает библиотечная Система Внешних Функций «МАРКА 2». Она позволяет создавать и использовать разнообразные шрифты и спрайты для выразительного оформления прикладных программ, обеспечивает мультипликацию, генерирует музыкальные сигналы. Для подготовки музыкального сопровождения к системе «МАРКА 2» придаётся музыкальный редактор «МЕЛОМАН-М».

Библиотечная Система Внешних Функций «ГРАФ 2» обеспечивает пользователя быстрой оконной графикой. Это удобный инструмент для представления результатов вычислений и обработки данных.

Система Внешних Функций «ПОИСК» служит для управления базами данных. «ПОИСК» - набор процедур-функций в кодах, обеспечивающих эффективное использование ОЗУ и высокую скорость работы. Прикладное содержание базы данных, её параметры и весь диалог с оператором могут быть выполнены пользователем самостоятельно (на Фокале), исходя из конкретной задачи. «ПОИСК» позволяет перераспределять ОЗУ между Фокал-программой и данными системы, задавать длину информационной карты в базе данных, записывать и считывать информацию в выбранном формате, проводить поиск информации по полной или сокращённой модели, записывать на магнитную ленту и считывать данные.

В библиотеку ИВФ-РП также включена система «МАССИВЫ 2», о которой говорилось выше.

Система Внешних Функций «FEDASP» позволяет преобразовывать тексты программ на Фокале в формат распространённого редактора текстов EDASP.

Имеется также библиотечная функция - драйвер принтера для распечатки программ на Фокале и данных из этих программ.

Разрабатывается функция создания на принтере «твёрдых» копий изображений с экрана дисплея.

ИВФ и ИВФ-РП являются мощными средствами расширения интерпретатора Фокал-БК-0010. Однако, если не используются готовые системы внешних функций (ИВФ) или библиотечные функции (ИВФ-РП), для подготовки новых функций нужны инструментальные программы разработки кодовых процедур-функций. Кооператив «Информ» может поставить два хорошо апробированных инструмента: программу-отладчик «ГРОТ» и систему ассемблера «МИКРО». Оба продукта снабжаются подробными руководствами пользователя.

Программа «ГРОТ» (версии 2.x) предназначена для отладки программ пользователя в машинных кодах. Коды могут быть получены с помощью какого-либо транслятора. «ГРОТ» также может создавать коды, транслируя вводимые построчно мнемокоды (команды языка ассемблера) или упаковывая строки текстовых сообщений. «ГРОТ» позволяет читать кодовую программу в мнемокодах (обратная трансляция), обеспечивает просмотр всех ячеек памяти, регистров общего назначения и флагов состояния процессора, пошаговое исполнение программы и автоматический прогон (разрешена одна точка останова). Обеспечивается работа с магнитофоном и принтером, поддерживается механизм мнемонического кодирования псевдокоманд арифметики чисел с плавающей точкой (запятой). «ГРОТ» может работать вместе с отлаживаемыми внешними функциями Фокала; внешние функции нормально работают одновременно с программой «ГРОТ».

Имеется также версия «ГРОТ» для ДВК.

Система ассемблера «МИКРО» включает одновременно присутствующие в памяти редактор текста, ассемблер и компоновщик объектных кодовых модулей (формат «МИКРО»). «МИКРО» нужен для подготовки исходных программ на языке ассемблера (разрешены символическое кодирование адресов, арифметические выражения, комментарии).

«МИКРО» также выполняет трансляцию исходных программ в объектные модули, компоновку загрузочных модулей из объектных. Таким образом можно легко создавать программы в кодах, внешние процедуры-функции интерпретатора. Фокал-БК-0010.

Для многих целей полезен отдельный пакет подпрограмм арифметики с плавающей точкой. «Информ» может поставлять и этот программный продукт. Программа-отладчик «ГРОТ» работает с пакетом так же, как и с арифметикой интерпретатора Фокал-БК-0010. Пакет снабжается руководством программиста, в котором детально описаны внутренние подпрограммы Фокала для арифметики с плавающей точкой.

«FOGROT», простой интерфейс кодовых программ для интерпретатора Фокал-БК-0010, позволяет осуществить связь кодовой программы пользователя с программой на Фокале, а также обеспечивает связь с программой-отладчиком «ГРОТ». В руководстве пользователя программы «FOGROT» содержится подробная информация о внутренних подпрограммах интерпретатора Фокала.

Если пользователь имеет в своём распоряжении принтер типа ROBOTRON К6311М или К6312М (СМ6329.01М, СМ6329.02М) или «Электроника МС6304» (УВВПЧ-30-04), то для распечатки исходных программ или других текстов ему будет безусловно необходима программа-форматер «UNIFORM». Она позволяет создавать печатные документы на много страниц (без ограничения по количеству, с нумерацией или без). Печатаются тексты, содержащие одновременно русские и латинские буквы, строчные и прописные.

Кооператив «Информ» может выполнить заказы на разработку любых программ в кодах, внешних функций интерпретатора Фокал-БК-0010 и систем внешних функций для получения наилучших решений задач создания эффективного программного обеспечения микрокомпьютера «Электроника БК-0010».

Адрес для переписки: 142292, Московская обл., г. Пущино, микрорайон В, д. 29, кв. 32, «Информ».

Телефоны (московские, с 19.00 до 21.00): 240-08-16, 497-86-52, 367-37-56; 923-74-67 (доб. 2-93), 923-96-68 (доб. 2-93).


 

Модем для ПЭВМ - реальность

Откликаясь на заметки во втором номере журнала за 1988 г., сообщаем, что специалистами нашего кооператива разработан модем для ПЭВМ. Он обеспечивает подключение ПЭВМ типа «Электроника БК-0010», «Микроша», РК-86 и других к коммутируемым телефонным каналам.

Скорость передачи - 300 бит/с.

Осуществляется защита от ошибок.

В состав программного обеспечения входят базовый драйвер модема, обеспечивающий работу с линией связи, и программа-меню RETRAN, обеспечивающая передачу имеющихся типов файлов, диалог с оператором и чтение-запись на магнитную ленту.

Испытания в пределах Ленинграда на дистанции 35 км показали устойчивую работу. Эксперименты на большем расстоянии не проводились.

Модем акустический, т.е. не требует электрического подключения к телефонной линии, передача информации осуществляется через телефонную трубку. Санкции Министерства связи СССР на его использование не нужно.

Отметим, что в упомянутой заметке А. Иглицкого технический аспект проблемы выглядит упрощённым в оценке как необходимой квалификации разработчика, так и габаритов и сложности устройства.

Кооператив принимает заказы от организаций и индивидуальных пользователей на изготовление и установку модемов, адаптацию программного обеспечения для конкретных применений и для ПЭВМ других типов, предложения от предприятий по организации крупносерийного производства, предложения по организации банков данных и сетей микро-ЭВМ.

Наш. адрес: 191014, Ленинград, а/я 129, кооператив «Компьютер».

Телефон: 274-71-60, с 20.00 до 22.00.


 

Как записать картинку

Проверить, хорошо ли БК-0010 стыкуется с магнитофоном, совсем нетрудно. Включите машину и переведите её в режим работы с тестами (ЗАГЛ П Т). Признаком того, что БК готов к работе, будет знак + на экране. Теперь можно выйти в режим «Директивы отладки» (РУС Т С). На экране появится знак денежной единицы - буква X с кружочком посередине. Можно начинать проверку.

В графическом режиме чертим рисунок из прямых линий. Когда он будет готов, запишем его в ОЗУ, начиная с 1000 адреса (40000 А 100000 Д 1000 П). Из ОЗУ данные скопируем на магнитную ленту (МЗ АДРЕС - 1000 ДЛИНА - 40000 ИМЯ - ПРОБА). Перемотав ленту к началу и очистив экран, считываем только что созданный файл в экранную память компьютера (МЧ АДРЕС - 40000 ДЛИНА - 40000 ИМЯ - ПРОБА). Пока идут запись и считывание данных, как раз и должны проявиться всевозможные ошибки, связанные с плохим качеством подключения кассеты или магнитофона. По мере загрузки экран, строка за строкой, начнёт заполняться исходным изображением. Любая ошибка немедленно проявится на экране как искажение картинки, а по их количеству можно будет судить и о качестве сопряжения.

Настроив магнитофон, вы сможете пользоваться этим способом для записи на ленту любых картинок, созданных на компьютере или самим компьютером.

А. ПОГАЕВСКИЙ (пос. Провидения)


 

Программная орбита

Этот выпуск программной орбиты для БК мы составили по материалам «Каталога - описания программ», изданного кооперативами «ЭВМ» (Ленинград) и «СБИС» (Сыктывкар).

  1. SPRINT (Г. Прис, Москва), Машинные коды. Новая подпрограмма Минифонда SPRINT - это многофункциональный драйвер печати. Программа проверена и отлажена с печатающим устройством ROBOTRON, СМ 6329.01/К 6311М. Программа управляет всеми функциями принтера: сменой шрифтов, установкой интервалов, табуляцией и т.п., печатает тексты, содержащие латинские и русские заглавные и строчные буквы, цифры и допустимые для БК-0010 символы, включая символы псевдографики. Печатает графическое изображение экрана или любой его части, программы в восьмеричном коде и программы на Фокале, печатает переменные Фокала в десятичной или восьмеричной системах счисления. Подпрограмму SPRINT можно включать в программы, написанные на Фокале.
  2. ПРОТ3.4, PROT3.4 (В. Прохоров) Машинные коды. Монитор-отладчик для создания программ в кодах процессора К1801ВМ1. Удобен также для изучения принципов работы процессора и системы команд, принятой в компьютерах типа БК-0010. Позволяет выводить информацию на любой принтер, причём, запуская программу из отладчика, можно переадресовать все обращения к дисплею на принтер. Всего 4К байт.
  3. АФИША (В Прохоров). Машинные коды. Набор описаний для системы ПРОТ3.4.
  4. DIPROT MONSTR4. AFP (В. Прохоров). Машинные коды. Позволяет распечатать любые тексты, созданные с помощью редактора, EDASP или тексты программ на ассемблере МИКРО на любом принтере, подключённом к БК к параллельному или последовательному интерфейсу. Ни редактор, ни ассемблер не требуются. С помощью этой программы можно создавать автономно работающие инструкции, письма и прочие тексты. Обеспечивает автоматическую загрузку, компоновку, запись и страничный просмотр.
  5. RPC3, USU, ORC (С. Камнев, Москва). Машинные коды. Программа RPC3 и набор модулей позволяют составлять, редактировать и отлаживать программы в кодах, записывать многостраничные тексты непосредственно с экрана, создавать картинки для компьютерной мультипликации и мелодии.
  6. Prez (Президент), Фокал. Одна из множества программ для БК, призванных имитировать деловые игры и развивать логическое мышление. Вас выбрали президентом острова. Останетесь ли вы у власти на следующий срок - зависит от вашего благосостояния. Оно складывается из доходов от сельскохозяйственного производства, от индустрии туризма и от сдачи в аренду земли иностранным компаниям. Появление промышленности вызывает приток туристов, разумеется, до определённых размеров, поскольку неудержимое развитие промышленности нарушает экологическую обстановку, снижается и объем сельскохозяйственной продукции. На борьбу с загрязнением можно выделить особые средства. Рост урожайности находится в зависимости от расходов на образование
  7. Wolk (Красная Шапочка), Фокал. Сюжет по мотивам «Красной Шапочки» Ш. Перро. Красная Шапочка с вашей помощью в очередной раз направляется к своей бабушке. На этот раз кроме пирожков она решила порадовать старушку цветами. Волк, как обычно, охотится на Красную Шапочку, но, как это ни странно, бегает медленнее её. Единственный шанс для волка - воспользоваться тем, что Красная Шапочка останавливается, чтобы сорвать цветок. Попробуйте помочь Красной Шапочке собрать как можно больше цветов, избежав встречи с волком.
  8. ПСП (Пакет стандартных программ), коды. Этот пакет разработан для всех поклонников Ассемблера из восьми модулей - он позволяет избавиться от рутинной работы. Каждый модуль является перемещаемым в памяти. Модули: упаковывает/распаковывает восьмеричные числа с обычной точностью без знака (1), умножает/делит целые числа с обычной точностью со знаком (2), упаковывает целое десятичное число с удвоенной точностью со знаком, распаковывает целое число с обычной/двойной точностью в десятичное целое число (3), умножает/делит целые числа с удвоенной точностью без знака (4), упаковывает десятичное число в нормализованное с плавающей запятой, распаковывает нормализованные числа в десятичные с удвоенной точностью со знаком, распаковывает нормализованные числа с плавающей запятой в десятичное в Е-формат (5), вычисляет сумму/разность/произведение/частное, изменяет знак нормализованного числа с плавающей запятой или нормализует число с плавающей запятой (6), пересылает числа с плавающей запятой, сравнивает их, преобразует в целые с обычной и удвоенной точностью, преобразует целые числа с обычной/удвоенной точностью в нормализованные с плавающей запятой (7), а также вычисляет функции sin, cos, atan, In, exp и sqrt (8).

 

Электромузыкальный инструмент с памятью

Одной из первых программ, превращавших БК-0010 в электромузыкальный инструмент, была программа П. Коноплева (Наука и жизнь, 1987. № 4.). К сожалению, для БК-0010.01 эта программа едва ли годилась - расположение клавиш в машинах различно. Был и ещё один дефект. Вычисленный по формуле звукоряд на практике не соответствовал истине - в программе не были учтены задержки, связанные с опросом клавиатуры.

Новая программа написана для БК-0010.01. Звучат клавиши от «;» до «/» (второй ряд) и от «ТАБ» до «ВС» (третий ряд), показанные на рисунке.

Программа написана в позиционно-независимом коде, то есть её можно загружать с любого свободного адресу ОЗУ, если предварительно зарезервировать память оператором CLEAR. Новая программа несколько модернизирована. Так, все данные о мелодии (частота и длительность нажатия очередной клавиши) записываются в ОЗУ. Это означает, что в любой момент можно отдать БК команду повторить фрагмент мелодии. После того как работа с программой завершена, данные легко записать на магнитофон, а с помощью вспомогательной программы преобразовать их в изображение партитуры.

Управляют программой тремя специальными клавишами:

С - очистка памяти и подготовка к записи нового фрагмента;

П - повтор записанного фрагмента;

Д - удаление данных о последнем записанном звуке (клавиша);

Ф - выход из программы в монитор (или Бейсик). Выход в Бейсик осуществляется тогда, когда программу «ЭМИ» запускают из Бейсика с помощью функции USR.

Адрес

0

2

4

6

0

2

4

6

1000

12737

100

177660

10700

62700

334

10067

416

1020

10700

62700

424

10067

406

10067

404

62767

1040

200

376

16767

370

372

32737

100

177716

1060

1374

13700

177662

16701

344

122100

1034

5046

1100

111116

12601

62701

25

5000

4767

174

5200

1120

32737

100

177716

1771

26767

306

306

101745

1140

10177

300

62767

2

272

10077

266

62767

1160

2

260

732

105721

1340

122100

1723

122100

1200

1014

26707

236

230

3715

162767

4

224

1220

32737

100

177716

1774

710

122100

1004

42737

1240

100

177660

207

122100

1017

16700

162

26700

1260

162

101673

12001

5201

12002

4767

14

77203

1300

12702

40000

77201

763

660

10103

12737

100

1320

177716

62703

5

77301

10103

12737

0

177716

1340

77301

207

177411

167473

160112

150461

142103

133525

1360

125463

120113

112464

105505

100465

74116

70107

64067

1400

60133

54470

51135

46132

43069

40110

35455

33072

1420

30457

26137

24023

0

42123

50106

20040

 


Программа на рисунке приведена в машинных кодах начиная с адреса 1000. Восьмеричная константа 200, записанная по адресу 1040, резервирует 128 байт - этого достаточно, чтобы хранить данные о 32 клавишах. Если вы захотите увеличить размер памяти для данных, достаточно увеличить константу по адресу 1040.

Чтобы ввести программу, напечатанную в журнале, рекомендую воспользоваться Бейсиком. Текст программы записывают в операторы ДАТА, при этом к каждому коду текста машинной программы не забудьте дописать признак восьмеричной константы «&O», например: 1000 ДАТА &O012737 &O000100, &O177660, &O010700 и т.д.

Основная программа, которая загружает машинную программу из операторов ДАТА, может выглядеть, например, так:

100 А%=&O34000 'начальный адрес загрузки
110 FOR I%=А% ТО А%+&O436 STEP 2
120 READ N%
130 POKE I%, N%
140 NEXT I%
150 DEF USR=A%
160 N%=USR(0) 'запуск программы

И. ЗАХРЕБЕТКОВ, г Владимир


 

Чего нет в описании

Работая на БК-0010 с Бейсиком 00001-01.35.02, я перенумеровывал строки в длинной программе и по ошибке набрал оператор RENUM не полностью. Однако БК выполнил приказание. Тогда я решил проверить и остальные служебные слова, и вот что получилось (в скобках - необязательная часть слова).

Набранные таким образом операторы при выводе по команде LIST читаются полностью.

Надеюсь, это поможет владельцам БК, набирающим большие программы.

COL(OR)

DEL(ETE)

REN(UME)

RET(URN)

RES(TORE)

GOS(UB)

DA(TA)

REA(D)

FO(R)

NEX(T)

IN(PUT)

DI(M)

CI(RCLE)

PA(INT)

PS(ET)

DR(AW)

LIN(E)

PRES(ET)

MO(NIT)

BE(EP)

ST(OP)

EN(D)

OP(EN)

CLOS(E)

SA(VE)

LOA(D)

FI(ND)

CLE(AR)

Алеша КОЗЛОВ

VIII класс СШ № 9, г. Пермь


 

Маленькие хитрости

Выбирая магнитофон для работы с БК, советую придерживаться принципа «чем ниже класс, тем лучше». Прежде всего, частотный диапазон таких магнитофонов существенно уже, на качество записи сигналов от БК это практически не влияет, а вот действие высокочастотной составляющей помехи существенно уменьшается. Кроме того, магнитофон 4-го класса стоит намного дешевле, чем 2-го или даже 3-го. Год назад я приобрёл «Протон-402». Вся доработка заключалась в том, что из схемы АРУ я удалил транзистор V12 (КТ3156), чтобы разорвать цепь АРУ. С тех пор у меня нет никаких проблем со считыванием программ с магнитофона.

И Гарячук

г. Балаково

 

Известно немало программ для БК, обрабатывающих прерывания от клавиатуры. Если речь идёт о Фокале, то все программы обладают общим недостатком: в тех случаях, когда необходимо различать несколько клавиш, конструкция из набора последовательных операторов IF очень замедляет работу программы. В то же время на Фокале можно реализовать структуру, напоминающую оператор ON GOTO Бейсика. Она основана на том, что аргументом операторов GO и DO может быть не только номер строки, но и имя переменной (но не арифметическое выражение)

1.10 S G(8)=10.25; S G(25)=10.3. S G(26)=10.35; SG (27)=10.4
10.10 S A=(FX(1,177662)); X FK (28,12) DO А
10.15 X FK(28,12); Т« »; G 10.10
10.20 R, С нажата клавиша, код которой не обрабатывается
10.25 Т «влево»; С клавиша с кодом 8
10.30 Т «вправо»; С клавиша с кодом 25
10.35 Т «вверх»; С клавиша с кодом 26
10.40 Т «вниз»: С клавиша с кодом 27

И. Лисицын, Ленинград

 

Счастливые обладатели принтера CRA-80 («Compute mate-100»). Если у вас полностью израсходован ресурс красящей ленты - не отчаивайтесь. К вашему аппарату подойдёт лента для распространённого принтера EPSON LQ800. Кассета, в которую уложена эта лента, больше по размеру, чем кассета SP-80, но её можно вместить в принтер так, что ведущий вал попадает точно в соответствующее отверстие кассеты. При этом левый край кассеты будет упираться в левую стенку принтера, а правый край окажется между металлическими фиксаторами и креплением двигателя.

А. Чипов,

Москва

 

Нередко, работая с Бейсик-программой, можно «выскочить» в пусковой монитор. Если попытаться вернуться в Бейсик командой G, то программа будет безвозвратно потеряна. В то же время, её можно сохранить, если в ответ на приглашение монитора «?» отдать команду? G 123222 (Ввод). После появления знакомого «ОК» нажмите клавишу СТОП. Программа будет спасена, но перестанут работать ключи «AR2+(0...9)». Этот способ годится для всех БК, у которых Бейсик хранится в ПЗУ.

Е. Романов, г. Воронеж

 

Транслятор Бейсика-БК различает переменные по двум первым символам. Тем не менее переменным можно присваивать одно и то же имя - Бейсик не спутает их, если переменные будут различаться типом, например S$, S%, S!, S#, S$(1), S%(1), S!(1), S#(1).

Д. Усенков, Москва

 

Как известно, Бейсик-Вильнюс, зашитый в ПЗУ БК-0010.01, требует для своей работы много памяти, поэтому большие программы не умещаются в ОЗУ. Из этой затруднительной ситуации можно выйти, если есть второй компьютер (для этого подойдёт БК-0010). Я соединяю компьютеры многопроводным кабелем и запуская программу, имитирующую принтер на БК-0010. На БК-0010.01 даю команды АР2/СБР АР2/СБР и CLEAR ,&O70000 и запускаю программу на Бейсике. Предварительно необходимо все операторы PRINT заменить на LPRINT. Есть только одно ограничение - способ хорош лишь для тех программ, которые не требуют ввода с клавиатуры.

А. Иванов, г. Свердловск

Performed by © gid, 2012-2022.