nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 18 Mar 2024 23:13



Reply to topic  [ 48 posts ]  Go to page Previous  1, 2, 3, 4  Next
БК0010-01 (тут же обсуждаем БК-0010 и БК-0011М) 
Author Message
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
DimkaM wrote:
они(демосценеры) щелкают палитру перед лучём.

Это, наверное, в БК-11. В БК0010-01 там ничем не пощелкаешь, насколько я знаю...

_________________
iLavr


15 Jan 2018 09:34
Profile
Maniac

Joined: 22 Jun 2005 04:35
Posts: 260
Location: МО Россия
Reply with quote
Точно, 11, значит наоффтопил.


15 Jan 2018 22:28
Profile ICQ
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
DimkaM wrote:
Точно, 11.
Эмулятор поддерживает БК-11 .

Мне подарили ДОС-эмулятор БК-0010 еще когда "Специалист" был у меня актуальной машинкой..
И я никак не мог понять вот такого странного формирования изображения:
Attachment:
BK0010_BW_colored.png
BK0010_BW_colored.png [ 1.03 KiB | Viewed 14207 times ]

Википедия пишет, что это "Чёрно-белый режим отображения через цветной разъём"
Но в эмуляторе он всё время был такой - работать просто невозможно... :-?
Я так понимаю, эту фичу еще и сэмулировали близко к оригиналу, что видимости
никак не улучшает.

Я с тех пор собрал большую коллекцию эмуляторов БК - многие работают в таком режиме.
Честно говоря подозревал, что так пытаются "смикшировать" белый цвет, которого нет в
цветной "палитре" БК0010-01, но, видимо, это не так. Просто фича такая...

_________________
iLavr


15 Jan 2018 22:55
Profile
Maniac

Joined: 22 Jun 2005 04:35
Posts: 260
Location: МО Россия
Reply with quote
да, буквально пару недель назад(на дихальте) наблюдал изображение с бк-11 на мониторе 32 втц-202
Оно действительно такое, но всё зависит от текущей палитры.
Как мне рассказали, инженер, придумывавший наборы цветов палитра, беспробудно пил. Но были моменты протрезвления и некоторые наборы цветов вышли вполне удачными.
Скорее всего этот рассказ был шуткой.


15 Jan 2018 23:27
Profile ICQ
Online
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22382
Location: Silicon Valley
Reply with quote
Lavr wrote:
DimkaM wrote:
они(демосценеры) щелкают палитру перед лучём.

Это, наверное, в БК-11. В БК0010-01 там ничем не пощелкаешь, насколько я знаю...

А как они обнаруживают "лучъ", если там негде состояние видео считать?

http://www.mailcom.com/bk0010/BK-0011M.html

_________________
:dj: https://mastodon.social/@Shaos


20 Feb 2018 20:04
Profile WWW
Junior

Joined: 29 May 2018 08:18
Posts: 1
Reply with quote
Shaos wrote:
Lavr wrote:
DimkaM wrote:
они(демосценеры) щелкают палитру перед лучём.

Это, наверное, в БК-11. В БК0010-01 там ничем не пощелкаешь, насколько я знаю...

А как они обнаруживают "лучъ", если там негде состояние видео считать?
http://www.mailcom.com/bk0010/BK-0011M.html

Насколько я понял, прерывание по вектору 100 (системный таймер) генерируется во кадровому синхроимпульсу. Ловим его, затем программируем программируемый таймер для ослеживания уже начала строк.


29 May 2018 08:24
Profile
Online
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22382
Location: Silicon Valley
Reply with quote
vicsoftware wrote:
Shaos wrote:
Lavr wrote:
DimkaM wrote:
они(демосценеры) щелкают палитру перед лучём.

Это, наверное, в БК-11. В БК0010-01 там ничем не пощелкаешь, насколько я знаю...

А как они обнаруживают "лучъ", если там негде состояние видео считать?
http://www.mailcom.com/bk0010/BK-0011M.html

Насколько я понял, прерывание по вектору 100 (системный таймер) генерируется во кадровому синхроимпульсу. Ловим его, затем программируем программируемый таймер для ослеживания уже начала строк.

А есть задокументированная инфа по точным растактовкам? Когда конкретно прерывание случается?

_________________
:dj: https://mastodon.social/@Shaos


29 May 2018 21:06
Profile WWW
Maniac

Joined: 22 Jun 2005 04:35
Posts: 260
Location: МО Россия
Reply with quote
DimkaM:
@AdamBazaroff народ интересуется viewtopic.php?p=144506#p144506

@Lasoft ^^^

Дамир "Адамыч" Насыров:
Начало строк никак не отследить, только подобрать. А отрисовка да, синхроимпульсом.

Alexander Lyovin:
Да

Дамир "Адамыч" Насыров:
Есть системный таймер, но он без прерывания. Просто инкрементится число.

Пока его прочитаешь и сравнишь с чем-нибудь луч уже убежит :)

Причём говорят, что на разных БК может работать по разному. И ещё были какие-то военные БК. У них было прерывание на этом таймере. Но может это байка.

Alexander Lyovin:
по таймеру не байка

Дамир "Адамыч" Насыров:
Там ещё фантомный косяк мы нашли при одновременном переключении страницы и палитры.

Дамир "Адамыч" Насыров:
Ну растактовка команд на БК есть в интернетах, но не совсем правильная. Мы как раз озаботились этим сейчас.

Да нет данных. Перебором делали.


30 May 2018 12:17
Profile ICQ
Online
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22382
Location: Silicon Valley
Reply with quote
хм, ничего не понял - так есть прерывание или нет?

_________________
:dj: https://mastodon.social/@Shaos


30 May 2018 13:35
Profile WWW
Online
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22382
Location: Silicon Valley
Reply with quote
Поправил заголовок темы, чтобы снаружи было понятно, что тут не только про БК-0010.01 :mrgreen:

Задумал я свести тут всю инфу по БК-0010 и БК-0011 из разных источников, чтобы разобраться кто есть кто...

_________________
:dj: https://mastodon.social/@Shaos


18 Mar 2019 19:18
Profile WWW
Online
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22382
Location: Silicon Valley
Reply with quote
Собрал в одну табличку инфу по памяти - ОЗУ/ПЗУ и регистры доступные как ячейки памяти:
Code:
                      BK-0010[.01]                  BK-0011[M]
----------------------------------------------------------------------------------
0..37777 (RAM)      : always here                  : always here (RAM page 0)
----------------------------------------------------------------------------------
40000..77777        : always here (VRAM)           : RAM pages 0..7
----------------------------------------------------------------------------------
100000..137777      : always ROM                   : RAM pages 0..7
                    :                              : ROM pages 8..11
                    :                              : or external ROM
----------------------------------------------------------------------------------
140000..177577(ROM) : always here                  : always here
----------------------------------------------------------------------------------
177130 (read/write) :                              : FDD controller
----------------------------------------------------------------------------------
177132 (read/write) :                              : FDD data
----------------------------------------------------------------------------------
177660 (read/write) : bit 6 - kbd interrupts disabled
Keyboard status     : bit 7 - keycode ready (read-only)   
                    : (set to 0 when keycode read from the next register)
----------------------------------------------------------------------------------
177662              : bits 0..6 - key (read-only)  : bits 0..6 - key (read-only)
Keyboard data       :                              : bit 8..11 - write palette id
(extra bits in 0011):                              : bit 14 - disable 48.5 Hz int.
                    :                              : bit 15 - disable STOP int.
----------------------------------------------------------------------------------
177664 (read/write) : bits 0..7 - offset (after boot it set to 0330)
Video offset        : bit 9 - full screen (1) or reduced 1/4 screen (0)
----------------------------------------------------------------------------------
177706 (read/write) : bits 0..15 - timer preset    :
Timer preset        :                              :
----------------------------------------------------------------------------------
177710 (read only)  : bits 0..15 - timer value     :
Timer value         : (1 tick is about 42.9 us)    :
----------------------------------------------------------------------------------
177712 (read/write) : bit 0 - disable and preset   :
Timer settings      : bit 1 - continous count      :
                    : bit 2 - set indicator if 0   :
                    : bit 3 - disable repeat       :
                    : bit 4 - enable count         :
                    : bit 5 - 4 times slower       :
                    : bit 6 - 16 times slower      :
                    :         if both set then 64  :
                    : bit 7 - indicator bit        :
----------------------------------------------------------------------------------
177714 (read/write) : bits 0..15 - inputs/outputs 
Inputs & Outputs    :                             
----------------------------------------------------------------------------------
177716 (read/write) :                              : bit 0 - write ROM 8 to 100000
System register     :                              : bit 1 - write ROM 9 to 100000
                    : bits 0..3 - read CPU mode    : bit 2 - read 1 sysreg written
                    : bit 4 - read/write line      :         write 1 for RAM 6 scr
                    :                              :         write 0 for RAM 5 scr
                    :                              : bit 3 - write ROM10 to 100000
                    :                              : bit 4 - write ROM11 to 100000
                    : bit 5 - read/write tape      : bit 5 - read/write tape
                    :         write line ready
                    : bit 6 - read keys released   : bit 6 - read keys released
                    :         write sound          :         write sound
                    : bit 7 - read line ready      : bit 7 - always 1
                    :         write stop motor     :
                    : bits 8..15 - read start adr  : read bits 8..15 - start adr
                    :                              : write 8..10 - RAM to 100000
                    :                              : write 11 - must be 1
                    :                              : write 12..14 - RAM to 40000
----------------------------------------------------------------------------------

причем страницы ОЗУ очень странно пронумерованы:
Code:
    1   1   0   страница 0 (постоянно отображена 0...40000)
    0   0   0   страница 1
    0   1   0   страница 2
    0   1   1   страница 3
    1   0   0   страница 4
    0   0   1   страница 5 (буфер экрана 0)
    1   1   1   страница 6 (буфер экрана 1)
    1   0   1   страница 7 (системная страница)


P.S. Странно, что нет регистра для переключения видеорежимов - ведь как то они в железо передают, что вместо черно-белых пикселов надо их парами в цвет превращать? Или для цветного выхода тупо другая дырка используется на компе?...

_________________
:dj: https://mastodon.social/@Shaos


18 Mar 2019 20:55
Profile WWW
Online
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22382
Location: Silicon Valley
Reply with quote
Сразу видно возможность для расширения - в БК-0011 страницы ПЗУ в третьем окне выбираются отдельными битами, а на самом деле эти биты сообща можно как номер страниц использовать:
Code:
4 3 2 1 0
0 0 x 0 0 - RAM to 100000
0 0 x 0 1 - ROM8 to 100000
0 0 x 1 0 - ROM9 to 100000
0 0 x 1 1 - ROM12 to 100000 <<<< NEW
0 1 x 0 0 - ROM10 to 100000
0 1 x 0 1 - ROM13 to 100000 <<<< NEW
0 1 x 1 0 - ROM14 to 100000 <<<< NEW
0 1 x 1 1 - ROM15 to 100000 <<<< NEW
1 0 x 0 0 - ROM11 to 100000
1 0 x 0 1 - ROM16 to 100000 <<<< NEW
1 0 x 1 0 - ROM17 to 100000 <<<< NEW
1 0 x 1 1 - ROM18 to 100000 <<<< NEW
1 1 x 0 0 - ROM19 to 100000 <<<< NEW
1 1 x 0 1 - ROM20 to 100000 <<<< NEW
1 1 x 1 0 - ROM21 to 100000 <<<< NEW
1 1 x 1 1 - ROM22 to 100000 <<<< NEW

изначально ROM8,ROM9 и ROM10 предполагались внутренними, а ROM11 - внешним
можно также считать ROM11 и идущие дальше ROM16-ROM22 внешним картриджем - это 8 окон по 16кб или одна 16-битная микросхема 27C1024
оставшиеся системный ROM,ROM8,ROM9,ROM10 а также 4 дополнительных ROM12,ROM13,ROM14,ROM15 - будем считать внутренними (бортовая микросхема 27C1024)

_________________
:dj: https://mastodon.social/@Shaos


18 Mar 2019 21:37
Profile WWW
Online
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22382
Location: Silicon Valley
Reply with quote
Shaos wrote:
Странно, что нет регистра для переключения видеорежимов - ведь как то они в железо передают, что вместо черно-белых пикселов надо их парами в цвет превращать? Или для цветного выхода тупо другая дырка используется на компе?...

Для поддержки БК-режимов в своей железяке (и своих расширеных режимов с полноценной палитрой) по видимому надо будет ряд новых регистров завести (177666 и т.д.):

http://www.nedopc.org/forum/viewtopic.php?p=150296#p150296

P.S. Оригинальная документация на БК-шки: http://gid.pdp-11.ru/doclist.html

_________________
:dj: https://mastodon.social/@Shaos


18 Mar 2019 22:55
Profile WWW
Online
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22382
Location: Silicon Valley
Reply with quote
Вот демка как пишут для 0011М аж 1996 года :o


https://youtu.be/BLCjzHAy9Ec

_________________
:dj: https://mastodon.social/@Shaos


30 Jun 2019 11:27
Profile WWW
Online
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22382
Location: Silicon Valley
Reply with quote
Есть БК-шка на FPGA: https://github.com/sorgelig/BK0011M_MIST

P.S. И чуть более развитая версия: https://github.com/MiSTer-devel/BK0011M_MiSTer

_________________
:dj: https://mastodon.social/@Shaos


30 Jun 2019 14:57
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 48 posts ]  Go to page Previous  1, 2, 3, 4  Next

Who is online

Users browsing this forum: No registered users and 5 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.