РК-86 в Proteus

Советский компьютер Радио-86РК (1986) и его клоны

Moderator: Shaos

b2m
Devil
Posts: 905
Joined: 26 May 2003 06:57

Re: РК-86 в Proteus

Post by b2m »

В эмуляторе тоже работает :)

Вот конфиг:

 

Code: Select all

main.CPUClock=1777777Hz
main.Caption="Радио-86РК + sdos64"

CPU : K580wm80a {
  debug=cas
  mem=mm
  pc=F800
  port.maptomem=1
}

mem1 : Memory {
  size=8000
}

font : Memory {
  rom="symgen.bin"
}

bios : Memory {
  rom="Radio\radiorom.rom"
}

romdisk : Memory {
  rom="Radio\sdos64.bin"
}

sys : K580ww55 {
  portA=kbd.~mask
  portB=kbd.~data
  portC[0]=cas.record
  portC[4]=cas.playback
  portC[5-7]=kbd.~data2
}

miso : Register {
  read[0]=sdcard.miso
  read[1]=sdcard.miso
  read[2]=sdcard.miso
  read[3]=sdcard.miso
  read[4]=sdcard.miso
  read[5]=sdcard.miso
  read[6]=sdcard.miso
  read[7]=sdcard.miso
}

appmx : MemMap2 {
  map[0]=romdisk.data
  map[1]=miso
}

app : K580ww55 {
  portA=appmx
  portB=romdisk.lsb
  portC=romdisk.msb
  portC[0]=sdcard.mosi
  portC[5]=sdcard.sclk
  portC[E]=sdcard.ss
  portC[7]=appmx.offset
}

crt : K580wg75 {
  dma=dma[2]
  font=font[0C00]
  hilight=crt.ggh
}

dma : K580wt57 {
  mem=mem1
}

mm : MemMap {
  map[0][0000-7FFF]=mem1[0000]
  map[0][8000-9FFF]=sys.data
  map[0][A000-BFFF]=app.data
  map[0][C000-DFFF]=crt.data
  map[0][E000-FFFF].wo=dma.data
  map[0][F000-F7FF].ro=bios[0000]
  map[0][F800-FFFF].ro=bios[0000]
}

kbd : Keyboard {
  layout="Radio\layout.kbd"
}

beep : beep {
  input=cpu.int
  input2=sys.portC[0]
}

cas : tape-recorder {
  biproc[FB98-FCA4]=rk
  boproc[FC46-FCA4]=rk
}

sdcard : sd-mmc {
  image="Radio\SD.img"
}

Страничка эмулятора наших компьютеров
http://bashkiria-2m.narod.ru/
PVV
Doomed
Posts: 463
Joined: 12 Feb 2016 13:39

Re: РК-86 в Proteus

Post by PVV »

b2m wrote:В эмуляторе тоже работает :)
Красота! я и не знал, что так можно :), спасибо!
Нашел не критическую ошибку у себя, обновил архив выше.
b2m
Devil
Posts: 905
Joined: 26 May 2003 06:57

Re: РК-86 в Proteus

Post by b2m »

PVV wrote:Нашел не критическую ошибку у себя, обновил архив выше.
А ещё ошибок случайно нет? Вроде только первый килобайт грузит, а потом мусор.
Страничка эмулятора наших компьютеров
http://bashkiria-2m.narod.ru/
PVV
Doomed
Posts: 463
Joined: 12 Feb 2016 13:39

Re: РК-86 в Proteus

Post by PVV »

b2m wrote:
PVV wrote:Нашел не критическую ошибку у себя, обновил архив выше.
А ещё ошибок случайно нет? Вроде только первый килобайт грузит, а потом мусор.
100% гарантию, что ошибок нет дать не могу :), но все должно быть нормально...
- там ошибка была в перекрытии - затирался хвост функции записи на карту, если ее не вызывать, то все работает.
Информация для размышлений такая: исходники SDOS в 3х файлах, я менял только 1 файл с низкоуровневыми функциями работы с картой, которые переопределяю через дефайны, все остальное неизменно, а этот же код работает на реале в Галаксии, и там читает файлы до 10КБ точно (проверял на PT2 и PT3 файлах...), да и 1КБ странная цифра, 512 байт, такое было у меня как-то давно при отладке. Надо, может проверить, не затирается ли стек и другие системные переменные монитора РК буфером, он сейчас с 0х6920 по 0х701F, но как я понимаю, здесь все ок. Да и я в обед проверял, грузится и KLAD.RKR и PACMAN.RKR, а это 13КБ и 10КБ...
Однако, ветку РК версии я давно не собирал и не проверял, может где ошибка и появилась, конечно... посмотрю.
PVV
Doomed
Posts: 463
Joined: 12 Feb 2016 13:39

Re: РК-86 в Proteus

Post by PVV »

b2m wrote: А ещё ошибок случайно нет? Вроде только первый килобайт грузит, а потом мусор.
Такой 'глюк' наблюдается, когда на карте FAT12,а не FAT16, сам недавно столкнулся в одном из экспериментов, чтож у меня поломалось то?... откатывался-откатывался по версиям, пока не дошел до варианта с поддержкой FAT12, тогда и вспомнил, что в текущих версиях SDOS я поддержку FAT12 вынес в дефайны для уменьшения размера кода. Образы же SD карты в эмуляторе, по умолчанию идут в FAT12, вот такой эффект и получается, что вычитывается только 1КБ...
PVV
Doomed
Posts: 463
Joined: 12 Feb 2016 13:39

Re: РК-86 в Proteus

Post by PVV »

Долго не доходили руки проверить идею с подключением SD карты к Апогею на порт ВВ55 совместно с ROM диском как описывал здесь , и наконец, сегодня я это сделал! Все работает, и на удивление весьма живо для этой схемы.

Запуск SDOS на Апогее -
R,900,D000
GD000

в качестве ПЗУ - winbond 27C512, и платка SD с ali, для согласования уровней с 3 в 5В.
прошивка ПЗУ во вложении

добавил PDF для ЛУТа и картинки, уже с SD держателем с резисторными делителями...
Image
правда, малость промахнулся и все детали получились с обратной стороны :)
Image
Image
Image
You do not have the required permissions to view the files attached to this post.
IREK
Junior
Posts: 2
Joined: 16 Feb 2021 23:05

Re: РК-86 в Proteus

Post by IREK »

Всем привет! Большое спасибо PVV!!! Ваш проект РК8 в протеусе очень помог в изучении схемотехники. Было бы здорово если анимация работала по быстрее. Как я понял это в программе невозможно регулировать. У меня довольно старый комп ХР32, может на более современных работает быстрее?
Хотел собрать ОЗУ как в оригинале на КР565РУ3(4164), но в протеусе эти МС(все динамические) не работают, так же как и на верссии 7 тоже не работают. У вас в проекте поэтому ОЗУ собран на 62256?
PVV
Doomed
Posts: 463
Joined: 12 Feb 2016 13:39

Re: РК-86 в Proteus

Post by PVV »

Эмуляция не быстрая, это так.
В протеусе часть микросхем поддерживают симуляцию, а часть нет, только их УГО. Динамические ОЗУ симуляцию не поддерживают, в отличии от статических, вот все симуляции схем и идут со статикой.
IREK
Junior
Posts: 2
Joined: 16 Feb 2021 23:05

Re: РК-86 в Proteus

Post by IREK »

Понятно. В посте 440 запущена через МС ввода-вывода подключен память 27с512, как запустить игру? через команду I?
Alex1968
Novelist
Posts: 36
Joined: 21 Jun 2020 10:12

Re: РК-86 в Proteus

Post by Alex1968 »

PVV

Можете сказать точный номер версии протеуса и какая винда с первой страницы, где проекты рк86 ? У меня ни в какую не хочет запускаться симуляция, а ток хочется хоть виртуально прикоснуться к этому легендарному компу. К сожалению в юношестве не удалось его собрать и потрогать вживую
Last edited by Alex1968 on 01 Apr 2021 23:32, edited 1 time in total.
PVV
Doomed
Posts: 463
Joined: 12 Feb 2016 13:39

Re: РК-86 в Proteus

Post by PVV »

Точный номер версии уже не помню, вероятно 8.2-8.3, но в 8.5 SP2 сейчас работает. ОС - в VirtualBox запущена виртуальная машина с WinXP. По скорости, что нативная WinXP, что в виртуалбоксе, разница в ~5%, что не является критическим на общем фоне быстродействия. ЦП - Атлон Х2 ~2.5ГГц.
А что не работает то?
Alex1968
Novelist
Posts: 36
Joined: 21 Jun 2020 10:12

Re: РК-86 в Proteus

Post by Alex1968 »

PVV wrote: А что не работает то?
Окно монитора не появляется, и куча ошибок. У меня вин10 х64, протеус пробовал от 8.0 до 8.11 все версии. Версии 8.5 SP2 нигде нет, есть Proteus 8.3 SP2 Build 19906 x86, Proteus 8.6 Pro SP2, Proteus 8.7 SP3 25561 x86 x64 и далее

Image
User avatar
Paguo-86PK
Maniac
Posts: 267
Joined: 12 Apr 2011 20:43
Location: Tashkent

Re: РК-86 в Proteus

Post by Paguo-86PK »

Alex1968 wrote:Окно монитора не появляется, и куча ошибок.
Знакомaя картинка. Тоже намучался, пока запустил.
Там нужно модуль TVOUT просто заменить на такой же из другой версии проекта с переименованием…
(Файлы брал здесь же…)
User avatar
Lavr
Supreme God
Posts: 16676
Joined: 21 Oct 2009 08:08
Location: Россия

Re: РК-86 в Proteus

Post by Lavr »

Alex1968 wrote:Окно монитора не появляется, и куча ошибок.
Насколько я вижу - симуляция проекта у вас работает:
_5a0d52c826524b206bc90b26a727f029.jpg
Это не ошибки, это предупреждения о логических "накладках" сигналов - это не страшно.
Последняя фраза, что ЦПУ работает но не в реальном масштабе времени.

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


P.S. Джентльмены, у кого Windows 10, вы бы посмотрели - мне кажется, что проблема
с симуляцией дисплея - это проблема "прозрачности" - может, её отключать при запуске?
You do not have the required permissions to view the files attached to this post.
iLavr
Alex1968
Novelist
Posts: 36
Joined: 21 Jun 2020 10:12

Re: РК-86 в Proteus

Post by Alex1968 »

Пришлось пойти купить SSD 120 гиг специально для установки вин ХР. Поставил хрюшу и протеус 8.3 проекты открываются и симулируются с показом экрана дисплея. На второй раздел поставил второй системой семёрку. Такая же история как и с десяткой, запускается симуляция с кучей ошибок, экран дисплея при этом так же не отображается. Вывод....проекты полноценно работают только в ВИН ХР.