PC-01 Lviv

It is currently 19 Mar 2024, 05:01

Forum Games WEB Tape Loader Twitter RSS

All times are UTC+03:00




Post new topic  Reply to topic  [ 14 posts ] 
Author Message
 Post subject: MESS & jsMESS
PostPosted: 15 May 2012, 23:57 
Offline
User avatar

Joined: 11 Aug 2008, 17:05
Posts: 1405
Location: Украина
Что-то совсем мы позабыли о MESS, где с помощью нашего польского друга Krzysztof Strzecha была реализована эмуляция ПК-01 "Львов". Поскольку подробностей об этом почти неизвестно, то обратим свой взор на свежую новость о том, что Jason Scott начал портирование MESS на JavaScript [eng]. И пусть о запуске ПК-01 пока речи не идет, но всякое может случится в будущем. :D

p.s.
Дорогие потомки - будущее наступило. Таки.

UPD.
Запускаем MESS правильно! (Linux)
Собираем MESS из сорцов-1 (Linux)
Собираем MESS из сорцов-2 (Linux)
Некоторые полезные утилиты из состава эмулятора

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
 Post subject: Re: MESS
PostPosted: 25 Apr 2013, 10:03 
Offline
User avatar

Joined: 11 Aug 2008, 17:05
Posts: 1405
Location: Украина
Решил почитать про MESS. Совершенно случайно вышел на страницу, где перечислены системы, которые по зубам этому эмулятору. Среди всего прочего в глаза бросились три занятные строчки:
Quote:
PK-01 Lviv
PK-01 Lviv (alternate)
PK-01 Lviv (prototype)
Кто-нибудь что-нибудь знает про эти три конфигурации для ПК-01? (Я с MESS дел не имел никаких).

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
 Post subject: Re: MESS
PostPosted: 25 Apr 2013, 10:37 
Offline
Site Admin
User avatar

Joined: 24 Jul 2008, 12:05
Posts: 1070
Скорее всего это набор разных БИОСов, как на сайте Антона.


Top
   
 Post subject: Re: MESS
PostPosted: 25 Apr 2013, 12:11 
Offline

Joined: 20 Apr 2012, 16:00
Posts: 372
Location: Конотоп
Скачал я эту MESS и запустил и вот что...
Image

её еще надо разбираться и настаивать...


Top
   
 Post subject: Re: MESS
PostPosted: 26 Apr 2013, 12:47 
Offline
User avatar

Joined: 11 Aug 2008, 17:05
Posts: 1405
Location: Украина
Quote:
Скорее всего это набор разных БИОСов, как на сайте Антона.
Да, это верно.

MESS оказался системой невероятной степени упоротости. Попробую написать краткую инструкцию, как запустить ПК-01 из-под него. Все-таки он работает в Линуксе нативно! :D

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
 Post subject: Re: MESS
PostPosted: 26 Apr 2013, 13:30 
Offline
Site Admin
User avatar

Joined: 24 Jul 2008, 12:05
Posts: 1070
Насчет удобства ничего не скажу, но сама система добротная. И много грамотных людей участвовало в разработке, и писалось на основе легеднарного MAME. Интересно было б потестировать на предмет точности эмуляции ПК-01.


Top
   
PostPosted: 01 May 2013, 15:39 
Offline
User avatar

Joined: 11 Aug 2008, 17:05
Posts: 1405
Location: Украина
Итак, работаем с MESS из консоли и в среде Ubuntu Linux - сурово и без шуток. Сразу оговорюсь, что я разобрался в необходимом мне минимуме функционала, поэтому этот материал нельзя считать всеобъемлющим. Тема до конца не раскрыта, так сказать.

После установки эмулятора следует выполнить ряд действий.
1) Создать локальную копию конфигурационного файла. Можно, конечно, править глобальных конфиг, но это сами по понимаете.
mkdir ~/.mess
cp /etc/mess/mess.ini ~/.mess

2) Рекомендую сразу установить параметру window значение 1, чтобы эмулятор запускался в оконном режиме. Если же после запуска наблюдаются графические артефакты, то рекомендую установить параметру video значение 0 (сброс на дефолтный режим рендеринга). Кстати, тут же можно задать клавишу для переключения режима работы клавиатуры (параметр uimodekey).

3) Создаем рабочую папку эмулятора в домашней директории, куда сразу же добавляем файлы с прошивками ПЗУ (прошивки можно нагуглить, либо скачать из нашего файлового архива):
mkdir -p ~/mess/roms/lviv

4) Запускаем эмулятор командой:
mess lviv

Image

5) Сразу после запуска нажмите клавишу "<Insert>" (еще помните о параметре uimodekey?), это элементарное действие сэкономит вам уйму времени, поскольку вы переведете клавиатуру в режим Partial Emulation.

6) Если вы успешно выполнили предыдущий шаг, то теперь по нажатию клавиши "<Tab>" вам станет доступно системное меню эмулятора. Все его функции освещать нет смысла, коснусь только рекомендуемых действий. Во-первых, сразу же выберите пункт Keyboard Mode и смените режим с Emulated на Natural. Иначе вам придется сполна насладиться особенностями раскладки ПК-01 (однако при работе оригинальным софтом лучше выполнить обратное переключение). Во-вторых, можете выбрать образ ПЗУ, с которым намерены работать. В третьих, можете сразу настроить громкость звука эмулятора в разделе Slider Controls. Последние два действия необязательны.

7) MESS умеет разгружать файлы только с магнитофона. Виртуального, конечно. Работа с ним осуществляется через системное меню (см. предыдущий пункт). Для начала выберите пункт File Manager, где можете выбрать образ, с которым будете работать. С образами дело обстоит хитро. Если кратко, то пункт Snapshot (dump) позволяет загружать файлы в формате .sav (они сразу же запускаются), а пункт Cassette (cass) загружает файлы в формате .lvt и .wav, которые - внимание! - загружаются в виртуальный магнитофон. Чтобы их запустить, их нужно сначала считать. Делается это до боли знакомым образом. Набираем на клавиатуре BLOAD"",R, открываем системное меню и выбираем файл для загрузки, после открывает в том же меню раздел Tape Control, где активируем пункт Play. И наслаждаем загрузкой, которая происходит со стандартной скоростью! Любители аутентичности могут впасть в спонтанный экстаз, поэтому соблюдайте осторожность!

8 ) MESS пишет видео. По умолчанию запись вкл./выкл. комбинацией <F12> + <LSHIFT>. Запись осуществляется в папку ~/.mess/snap/lviv (можно поменять через конфиг), формат выходного файла .mng. Качество так себе.

p.s.
Эмулятор является кроссплатформенным, точно доступен для сред Windows, Linux и MacOS. Для удобства работы с ним разработано порядком графических бэкендов, но их рассмотрение выходит за рамки нашего материала.

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
 Post subject: Re: MESS
PostPosted: 01 May 2013, 18:14 
Offline

Joined: 20 Apr 2012, 16:00
Posts: 372
Location: Конотоп
Шото я лично ничего не понял или нето чего-то скачал... :-)
А можно ли настроенную МЕСС (под винду) готовую выложить сюда?...

З.Ы.
Вот у меня расспакованная МЕСС...(каталоги и файлы)
artwork docs hash hlsl
castool.exe chdman.exe floptool.exe imgtool.exe jedutil.exe ldresample.exe ldverify.exe
ledutil.exe mess.exe romcmp.exe unidasm.exe mess.sym

ЭТО ОНА?...


Top
   
 Post subject: Re: MESS
PostPosted: 28 Oct 2013, 08:18 
Offline
User avatar

Joined: 11 Aug 2008, 17:05
Posts: 1405
Location: Украина
То, о чем так долго твердили большевики свершилось - релиз jsMESS готов.

Image

Источником новости служит предсказуемо Хабр, сам эмулятор можно посмотреть здесь, сорцы можно скачать с гита.

Что можно сказать после первого знакомства с продуктом? Эмуляция ПК-01 действительно присутствует, но еще требует серьезной доработки. К примеру, не работает загрузка игр, нет хистори, что-то непонятное с обработкой клавиатуры (я так и не смог вызвать системное меню)... В общем, пилите, Шура, пилите. Но в Бэйсике уже можно творить! :D

Теперь будем ждать сокрушительный велосипедостроительный ответ от нашего imzelya. :wink:

p.s.
Некоторая информация ознакомительного характера от разработчиков проекта.

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
 Post subject: Re: MESS & jsMESS
PostPosted: 29 Oct 2013, 11:28 
Offline
Site Admin
User avatar

Joined: 24 Jul 2008, 12:05
Posts: 1070
О! Это важный шаг для всего человечества. Жаль, что "Львов", пока неюзабельный. Но в будущем, будет откуда сорсы тырить :).


Top
   
PostPosted: 02 Nov 2013, 06:50 
Offline
User avatar

Joined: 11 Aug 2008, 17:05
Posts: 1405
Location: Украина
Собрал сегодня из сорцов свежую версию MAME 1.50s. Как оказалось, одно дело ставить уже готовый пакет из репы, как то я делал раньше, и совсем другое собирать все ручками. Зафиксирую несколько моментов, о которых надо помнить.

Во-первых, сразу после сборки нужно создать дефолтный файл конфигурации. Делаем это командой ./mess - cc, результат получаем в виде файла mess.ini в текущей директории.

Во-вторых, нужно помнить про параметр uimodekey. Я прописал его uimodekey INSERT, чтобы избежать когнитивного диссонанса.

В третьих, сразу после первого запуска надо дать согласие на все риски, связанные с вопросами авторского права. Оригинально, но для этого следует собственноручно напечатать на клавиатуре ok (никаких кнопочек, только хардкор!).

Отмечу еще один момент. Во процессе сборки одной из архитектур неожиданно случился дикий жор оперативы компилером (порядка 4-5 гиг). Как, зачем и почему - не знаю. Но это нормально. :D

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
 Post subject: Re: MESS & jsMESS
PostPosted: 12 Dec 2013, 23:09 
Offline
User avatar

Joined: 11 Aug 2008, 17:05
Posts: 1405
Location: Украина
Вышла новая версия MESS, и я решил снова с ним поработать. И вот что удалось обнаружить:

1. В файле конфигурации параметр writeconfig лучше выставить равным 1. Это разрешит эмулятору создать отдельные конфигурационные файлы для каждой запускаемой архитектуры. Того же эффекта можно добиться запуском с ключом -writeconfig.

2. MESS все-таки умеет писать видео в .avi-формате. Чтобы это случилось, нужно запускать его с ключом -aviwrite.

3. MESS содержит в себе каталоги софта для ряда архитектур. И наш ПК-01 в этом ряду. К примеру, фрагмент вызова:
Code:
mess -listsoftware lviv
Code:
<software name="zamok">
  <description>ZAMOK</description>
  <year>19??</year>
  <publisher><unknown></publisher>
  <info name="usage" value="Load with CLOAD"""/>
  <part name="cass1" interface="lviv_cass">
    <dataarea name="cass" size="4500">
      <rom name="zamok.lvt" size="4500" crc="1934e90c" sha1="f0ffe0f37e20373e5ad9133d5e618f8b0ca532d1"/>
    </dataarea>
  </part>
  <part name="cass2" interface="lviv_cass">
    <dataarea name="cass" size="10223">
      <rom name="zamok.lv0" size="10223" crc="dfe2c736" sha1="a7eacb6d49cf922b5cd5b83b99215ca9052424ae"/>
    </dataarea>
  </part>
</software>
Увы, но нагуглить оригинальный архив софта, который бы соответствовал каталогу MESS, пока не удалось. Пичалька... :(
Для пробы я вытащил подборку софта от jsMESS, вроде бы она подошла. В принципе, никаких откровений там нет, но для коллекции пойдет.

4. В MESS есть встроенный дебаггер (и поддержка внешнего, к слову)!
Code:
mess -debug
Image

5. В MESS есть встроенный веб-сервер. Похоже, это экспериментальная фича, поскольку нигде она не описана. Методом научного тыка удалось получить такую прелесть:
Code:
mess lviv -http -http_port 8282
Открываем браузер по адресу 127.0.0.1:8282 и наблюдаем:
Image
Пока точно работает только перезагрузка эмуля и получение скриншотов через веб. Что это и зачем - не понимаю. Видимо, можно будет разворачивать MESS где-нибудь в облаке и вести удаленную работу хоть с планшета, хоть с мобилы. А то и утюга...

На этом возможности веб-сервера не исчерпываются. Набираем:
Code:
mess lviv -http -http_port 8282 -http_path ~/apps/mess/roms/lviv
Открываем браузер по адресу 127.0.0.1:8282 и получаем ftp-сервер...
Сорри, но скрин делать лень.

Словом, MESS - это океан. :D

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
 Post subject: Re: MESS & jsMESS
PostPosted: 22 Jan 2014, 23:14 
Offline
User avatar

Joined: 11 Aug 2008, 17:05
Posts: 1405
Location: Украина
Зарелизилась новая версия MESS - 1.5.2s. Что можно сказать? Продукт пилят, тот же веб-интерфейс стал значительно юзабельнее. Оставлю здесь цитату из оф.вики по сборке эмуля из сорцов под *nix (все равно я тут уже почти полноценный faq написал):
Quote:
Building MESS on *nix

Once you've set up the source, building MESS on Linux or other UNIX-based systems is simple (assuming you have the appropriate packages installed for make, gcc, etc.):

$ make TARGET=mess
To compile the MESS tools (chdman, imgtool, etc.), add tools:

$ make TARGET=mess tools
MESS does not provide a 'make install' target at this time; binaries are placed in the top-level MESS directory.

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
 Post subject: Re: MESS & jsMESS
PostPosted: 25 Jan 2014, 07:50 
Offline
User avatar

Joined: 11 Aug 2008, 17:05
Posts: 1405
Location: Украина
В состав эмулятора входит несколько консольных утилит, из которых две точно могут быть полезны при работе с софтом для ПК-01. Речь идет вот о чем:
1) castool - утилита для перегонки образов софта в .WAV формат. Кстати, у нас на форуме этот вопрос уже поднимался [раз, два].
Code:
castool - Generic cassette manipulation tool for use with MESS

Usage: 
       castool.exe convert <format> <inputfile> <outputfile.wav>

Supported formats:

       a26 - Atari 2600
                a26
       ddp - Coleco Adam
                ddp
       apf - APF Imagination Machine
                apt
       cbm - Commodore
                tap
    cgenie - Colour Genie
                cas
      coco - TRS-80 Radio Shack Color Computer Family
                cas
       csw - Compressed Square Wave
                csw
       bbc - BBC
                csw
                uef
      fmxs - MSX
                tap,cas
       gtp - Galaksija
                gtp
    hector - Hector - k7 : classical, FOR : forth cassette 
                k7,cin
                for
   jupiter - Jupiter
                tap
      kc85 - VEB Mikroelektronik KC 85
                kcc,kcb
                tap,853,854,855,tp2,kcm
                sss
      kim1 - KIM-1
                kim,kim1
      lviv - Lviv
                lvt,lvr,lv0,lv1,lv2,lv3
        mz - Sharp MZ
                m12,mzf,mzt
      orao - Orao
                tap
      oric - Oric
                tap
     pmd85 - PMD-85
                pmd,tap,ptp
     primo - Primo
                ptp
       rku - UT-88
                rku
       rk8 - Mikro-80
                rk8
       rks - Specialist
                rks
       rko - Orion
                rko
       rkr - Radio-86RK
                rk,rkr
                gam,g16,pki
       rka - Apogee
                rka
       rkm - Mikrosha
                rkm
       rkp - Partner
                rkp
    sordm5 - Sord M5
                cas
       svi - SVI
                cas
       to7 - Thomson TO
                k7
       mo5 - Thomson MO
                k5,k7
   trs80l2 - TRS-80 Level 2
                cas
     tvc64 - Videoton TVC 64
                cas
       tzx - ZX Spectrum
                tzx
                tap,blk
       cdt - Amstrad CPC
                cdt
       uef - Acorn Electron
                uef
      vg5k - VG 5000 k7
                k7
    vtech1 - Video Technology Laser 110-310
                cas
    vtech2 - Video Technology Laser 350-700
                cas
       x07 - Canon X-07
                k7,lst,cas
    zx81_p - Sinclair ZX81
                p,81
    zx80_o - Sinclair ZX80
                o,80

Example usage:
        castool.exe convert tzx game.tzx game.wav
2) unidasm - дизассемблер. Занятно, что в списке поддерживаемых архитектур нет процессора i8080, зато есть i8008 и i8085. Последний, видимо, лучше всего подходит для наших нужд.
Code:
Usage: ./unidasm <filename> -arch <architecture> [-basepc <pc>] 
   [-mode <n>] [-norawbytes] [-flipped] [-upper] [-lower]
   [-skip <n>] [-count <n>]

Supported architectures:
  adsp21xx   cquestlin  hyperstone m68008     nsc8105    sm8500     tx0_64kw   
  alpha8201  cquestrot  i4004      m6801      pdp1       spc700     tx0_8kw    
  am29000    cquestsnd  i8008      m68010     pic16c5x   ssem       unsp       
  apexc      ds5002fp   i8051      m6802      pic16c62x  ssp1601    upd7725    
  arm        dsp16a     i8052      m68020     powerpc    t11        upd7801    
  arm_be     dsp32c     i8085      m6803      pps4       tlcs900    upd7807    
  arm7       dsp56k     i8089      m68030     psxcpu     tms0980    upd7810    
  arm7_be    esrip      i80c51     m68040     r3000be    tms1000    upd78c05   
  arm7thumb  f8         i80c52     m6805      r3000le    tms1100    upi41      
  arm7thumbb g65816     i860       m6808      rsp        tms32010   v60        
  asap       h6280      i960       m6809      s2650      tms32025   v70        
  avr8       h8         ie15       m68340     saturn     tms3203x   v810       
  ccpu       h8_24      jaguardsp  mb86233    sc61860    tms32051   x86_16     
  cdp1801    h8_32      jaguargpu  mb88       scmp       tms34010   x86_32     
  cdp1802    hc11       konami     mcs48      scudsp     tms34020   x86_64     
  coldfire   hcd62121   lh5801     minx       se3208     tms57002   z180       
  cop410     hd61700    lr35902    mips3be    sh2        tms7000    z8         
  cop420     hd6301     m37710     mips3le    sh4        tms9900    z80        
  cop444     hd6309     m6800      mn10200    sh4be      tms9980               
  cp1610     hd63701    m68000     nec        sharc      tms9995

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 14 posts ] 

Forum Games WEB Tape Loader Twitter RSS

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 1 guest


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:
cron
Powered by phpBB® Forum Software © phpBB Limited