User Tag List

Страница 21 из 94 ПерваяПервая ... 171819202122232425 ... ПоследняяПоследняя
Показано с 201 по 210 из 1102

Тема: Emu80 v.4

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    05.04.2013
    Адрес
    Починки, Нижегородская обл.
    Сообщений
    1,371
    Спасибо Благодарностей отдано 
    401
    Спасибо Благодарностей получено 
    647
    Поблагодарили
    255 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    barsik, спасибо за оперативный отзыв.

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

    Цитата Сообщение от barsik Посмотреть сообщение
    С орловским ПЗУ вообще ничего невозможно вводить в WAV, т.к при WAV ввод долгий и нет никакой индикации
    Для этого я и сделал ускорение при загрузке wav. К сожалению, на медленных компьютерах ускорение может упереться в быстродействие процессора. А индикация пока в планах.

    Цитата Сообщение от barsik Посмотреть сообщение
    Если я нажимаю I, затем <ВК> и на запрос имя файла снова нажимаю <ВК>, то открывается окно, где я могу выбрать только файл RKS.
    RKS по умолчанию. Нужно из выпадающего списка фильтров выбрать "Wav Files (*.wav)" или "Все файлы" и выбрать wav.

    Цитата Сообщение от barsik Посмотреть сообщение
    Надо чтобы после АЛЬТ-W уже никакие окна не открывались
    Логично, поправлю.

    Цитата Сообщение от barsik Посмотреть сообщение
    И по прежнему остаются WAV-файлы на которые эмулятор пишет, что у них неправильный формат.
    Все возможно, хотелось бы образец.

    Цитата Сообщение от barsik Посмотреть сообщение
    Т.е многоблочные программы могут быть только WAV, что резко снижает ценность, т.к WAV слишком большие по объёму, чтобы их хранить.
    Где-то в одной из соседних тем уже начинали обсуждение возможности использования формата, альтернативного wav - в формате 1 бит на сэмпл и со сжатием. Можно развить эту тему либо использовать один из вариантов спектрумовского формата tap.

    Цитата Сообщение от barsik Посмотреть сообщение
    Заметил, что создаётся копия Emu80, занимающая ~4 мб памяти, если происходит неудачный старт эмулятора
    Исправлял уже такое поведение, но видимо что-то опять сломалось в одной из версий. Разберусь.

    - - - Добавлено - - -

    Цитата Сообщение от barsik Посмотреть сообщение
    Эмулятор сам должен понимать, что когда я выбрал файл с расширением WAV, то и вводить надо звуки, а когда с расширением RKS, то готовые коды.
    Именно так оно сейчас и работает - анализируется именно расширение (wav или WAV), хотя логичнее было бы смотреть заголовок файла. Почему возник такой вопрос?

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2

    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    С орловским монитором новая версия EMU80 читает и пишет и по I/O, и по R/W, причем как в кодах (т.е в формате RKS), так и в звуках (т.е в формате WAV). С ленинградским монитором 2.7 и 3.3 (в обоих заглушены кодом C9 входы CEDF) читает и пишет только в кодах (т.е в формате RKS). Со звуками работать отказывается. Эмулятор EMU от b2m с тем же, причем оригинальным монитором читал в формате WAV.

    Вообще-то это странно, потому что этот монитор делался так, чтобы совместить все входные точки, что было очень непросто, т.к они раскиданы по всему загрузчику, а не сгруппированы в начале кода. С большим трудом удалось совместить все точки и даже недокумментированные. Совмещать выходные точки из подпрограмм, естественно было незачем.

    Почему же если точки выхода из подпрограмм не важны, не работает чтение/запись WAV-файла. При этом же вообще не используется никаких точек перехвата. Как тогда программа может влиять на результат. Насколько я понимаю, при этом контролируется сам разряд PB0 ППА, а код программы делающей доступ туда не важен. А может быть Вы контроллируете не тот порт, например F800, а не FF00 ? Также на мысль о "химии" при вводе WAV наводит невозможность загрузить файлы в MSX-кодировке внешним драйвером. Это вопрос ещё нуждается в прояснении. Могу попробовать читать/писать и в кодировке ZX-Spectrum, т.к она тоже есть в мониторе. Но пока это бесполезно, если даже обычная двухфазная кодировка не вводится.

    Строки

    cpu.debugOnHalt = yes
    cpu.debugOnIllegalCmd = yes

    надо помещать не в файл EMU80.CONF, а в в конец конфиг файла конкретного компьютера.

    Подскажите каким редактором можно отредактировать руские тексты в Ваших конфигах. Обычно конфиг-файлы это чисто текстовые файлы в кодировке MSDOS или Windows, чтобы можно было редактировать самым простым редактором. Обидно, что используется неизвестная кодировка для русских букв. Из-за это не смог изменить титр, т.е заголовок эмулятора при работе. Какая-то левая китайская кодировка и непонятно каким редактором это можно редактировать.

    Цитата Сообщение от Pyk
    где-то в одной из соседних тем уже начинали обсуждение возможности использования формата, альтернативного wav - в формате 1 бит на сэмпл и со сжатием.
    Слышал, что уже изобретён однобитовый формат для МГ-записей 8-ми разрядок. Называется BAV и используется в одной конструкции самодельного цифрового магнитофона. Вроде бы это формат отличается от WAV только тем, что число разрядов не 8, а 1, отчего в несколько раз сокращается объём файла.

    Для записи двухфазной кодировки годится частота дисретизации не ниже 22 КГЦ. Ведь при двухфазной кодировке скорость передачи 1200 бит/сек. Бит кодируется перепадом 0>1 или 1>0. Потому частота с которой следуют фронты равна 2400 ГЦ. Это значит, что между фронтами происходит 9 отсчётов и колебания фронтов равны +-11%. При этом размер файла будет в 18 раз больше объёма кода.

    Впрочем для СПЕЦИАЛИСТА это не очень актуально, т.к почти все старые программы есть в виде кодов. И вводить программы с заставками как в Синклере интересно только из спортивного интереса (сделать так, чтобы никто не сумел кракнуть) или с целью распространения новых программ в некопируемом виде.
    Последний раз редактировалось barsik; 31.12.2017 в 18:01.

  4. #3

    Регистрация
    05.04.2013
    Адрес
    Починки, Нижегородская обл.
    Сообщений
    1,371
    Спасибо Благодарностей отдано 
    401
    Спасибо Благодарностей получено 
    647
    Поблагодарили
    255 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение
    И по-прежнему нельзя изменять флаги процессора.
    Помню, сделаю, не все сразу. А пока, если очень нужно, можно изменить редактированием половинки "регистра" AF.

    Цитата Сообщение от barsik Посмотреть сообщение
    Жалко, что шагание только по F7, я привык к T (так во всех отладчиках в мире, зачем нарушать традицию?)
    Зачем же так категорично? Может быть, так в большинстве отладчиков командной строки, но в визуальных отладчиках все-таки чаще что-то из серии F7, F8, F10, F11... Хотя мне не сложно продублировать команду на клавишу "T". Есть еще пожелания, какие буквы назначить в дополнение к F4, F8, F9?

    Цитата Сообщение от barsik Посмотреть сообщение
    уродские мнемоники получаются для Z80, если использовать мнемоники Intel
    Что касается меня, то я предпочитаю родные мнемоники для каждого процессора: Intel - для 8080 и Zylog - для Z80, так что такое мне тоже не очень нравится. Но не навязываю никому свое мнение - дело вкуса и привычки.

    Цитата Сообщение от barsik Посмотреть сообщение
    С ленинградским монитором 2.7 и 3.3 (в обоих заглушены кодом C9 входы CEDF) читает и пишет только в кодах (т.е в формате RKS). Со звуками работать отказывается.
    Да, знаю, есть проблема. Причину пока не знаю. Никакой "химии" там вроде бы нет, возможно просто баг. Разобраться пока не пытался, если поможете найти, буду благодарен.

    Цитата Сообщение от barsik Посмотреть сообщение
    Подскажите каким редактором можно отредактировать руские тексты в Ваших конфигах
    Обычная кодировка UTF-8. Открыть можно очень много чем, да хотя бы блокнотом, только в диалоге открытия файла выбрать из выпадающего списка эту кодировку. Есть и более продвинутые редакторы вроде Notepad++, а сам я предпочитаю консольный нортоноподобный файловый менеджер Far и его встроенный редактор.

    Ну а сейчас уже пора бы о встрече нового года подумать Всех с наступающим!

    - - - Добавлено - - -

    Цитата Сообщение от Pyk Посмотреть сообщение
    Открыть можно очень много чем, да хотя бы блокнотом, только в диалоге открытия файла выбрать из выпадающего списка эту кодировку.
    Похоже, что блокнот - не самый удачный вариант. При сохранении он добавляет байты BOM в начало файла (EF BB BF), из-за чего его перестает понимать эмулятор. Можно, конечно, потом эти три байта убрать, но проще взять более адекватный редактор.

    - - - Добавлено - - -

    Цитата Сообщение от Pyk Посмотреть сообщение
    Где-то в одной из соседних тем уже начинали обсуждение возможности использования формата, альтернативного wav - в формате 1 бит на сэмпл и со сжатием.
    Да, кстати, может быть поддержку CSW добавить?

  5. #4

    Регистрация
    20.12.2005
    Адрес
    Москва
    Сообщений
    2,047
    Спасибо Благодарностей отдано 
    1,140
    Спасибо Благодарностей получено 
    1,458
    Поблагодарили
    520 сообщений
    Mentioned
    20 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Pyk, попробовал собрать под macos, лог во вложении. Я пока довольно неопытный под маком, до конца не дошёл, сорри.
    Сначала не нашло SDL, но он есть собранный, скачать и один файл перетащить.
    А вот wxWidgets похоже нужно собирать из исходников, это я пока отложу.
    Посмотрите лог -- собрались файлы зависимые только от SDL, может варнинги будут вам полезны, их там много.
    Особенно подозрительно выглядят выражения вида ((symbol && 0xC0) != 0xC0) -- по-моему, тут просто ошибка, должно быть побитовое & вместо логического &&.

  6. #5

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,299
    Спасибо Благодарностей отдано 
    1,028
    Спасибо Благодарностей получено 
    813
    Поблагодарили
    484 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    nzeemin,
    Код:
    brew install wxmac --devel
    Но запустить я все равно не смог, выкидывает адский эксепшн при старте:

    Скрытый текст

    Код:
    2018-01-10 03:31:45.148 Emu80[55913:802511] -[SDLApplication transformToForegroundApplication]: unrecognized selector sent to instance 0x7fdead704090
    2018-01-10 03:31:45.149 Emu80[55913:802511] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[SDLApplication transformToForegroundApplication]: unrecognized selector sent to instance 0x7fdead704090'
    *** First throw call stack:
    (
    	0   CoreFoundation                      0x00007fff31f0a53b __exceptionPreprocess + 171
    	1   libobjc.A.dylib                     0x00007fff58919942 objc_exception_throw + 48
    	2   CoreFoundation                      0x00007fff31fa1824 -[NSObject(NSObject) doesNotRecognizeSelector:] + 132
    	3   CoreFoundation                      0x00007fff31e81f13 ___forwarding___ + 1443
    	4   CoreFoundation                      0x00007fff31e818e8 _CF_forwarding_prep_0 + 120
    	5   libwx_osx_cocoau_core-3.1.dylib     0x00000001075a906c _ZN5wxApp9DoInitGuiEv + 262
    	6   libwx_osx_cocoau_core-3.1.dylib     0x00000001075e71e4 _ZN5wxApp10InitializeERiPPw + 184
    	7   libwx_baseu-3.1.dylib               0x0000000107b19717 _Z12wxEntryStartRiPPw + 233
    	8   libwx_baseu-3.1.dylib               0x0000000107b19ca9 _Z12wxEntryStartRiPPc + 30
    	9   Emu80                               0x000000010710831f _Z9palWxInitiPPc + 31
    	10  Emu80                               0x00000001070c4ce1 _Z7palInitiPPc + 49
    	11  Emu80                               0x00000001070bd232 main + 34
    	12  libdyld.dylib                       0x00007fff59506145 start + 1
    )
    libc++abi.dylib: terminating with uncaught exception of type NSException
    Abort trap: 6
    [свернуть]


    Пока не разобрался в чем дело.
    Больше игр нет

  7. #6

    Регистрация
    05.04.2013
    Адрес
    Починки, Нижегородская обл.
    Сообщений
    1,371
    Спасибо Благодарностей отдано 
    401
    Спасибо Благодарностей получено 
    647
    Поблагодарили
    255 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    nzeemin, спасибо, предупреждения насчет битовых операций - действительно ошибки (возможно, как раз с этим связаны известные проблемы с эмуляцией ВГ75), остальное подробнее посмотрю вечером. Не совсем понял только, почему у меня эти предупреждения с этим же Makefile не выдаются, может дело в ключах sdl2 либо в версии gcc, либо просто в особенности его поведения на macos? Можно узнать версию gcc и что выдает sdl2-config --cflags?

    nzeemin, svofski, можно попробовать собрать только lite-версию, не требующую wx. Потребуется наверное только немного подредактировать Makefile, чтобы не пытался собирать зависимые от wx файлы (хотел сделать CMakeLists.txt для cmake для упрощения сборки, но руки пока не дошли).

    Вообще, не очень мне нравится одновременное использование SDL и WX. Особенности реализации этих библиотек под Windows и Linux разные, приходилось экспериментировать, чтобы заставить их более-менее нормально работать вместе. Для windows и linux подружить их удалось, а вот для macos я этим пока не занимался. Может быть скоро основной вообще станет qt-версия: собственно эмуляция уже работает, осталась некоторая рутинная работа по реализации пользовательского интерфейса и т.п.

  8. #7

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,299
    Спасибо Благодарностей отдано 
    1,028
    Спасибо Благодарностей получено 
    813
    Поблагодарили
    484 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ну как же, вот очень даже смысл. Интерфейс полезная характеристика, но все же не основная.

    Я только не вижу, где делается Emulation::setProperty("commandline"...), и в дебаггере я туда не попадаю (отошел от компа, пишу по памяти). И без этого он правда не может найти платформу и закачивает сам себе SDL_QUIT.
    Больше игр нет

  9. #8

    Регистрация
    05.04.2013
    Адрес
    Починки, Нижегородская обл.
    Сообщений
    1,371
    Спасибо Благодарностей отдано 
    401
    Спасибо Благодарностей получено 
    647
    Поблагодарили
    255 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    svofski, так указание типа ПК в командной строке или копирование emu80.run не помогает?
    Остальная вся структура папок сохранена? Установка (копирование файлов в ~/emu80) прошла без ошибок?

  10. #9

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,299
    Спасибо Благодарностей отдано 
    1,028
    Спасибо Благодарностей получено 
    813
    Поблагодарили
    484 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я не учел, что надо обязательно сделать make install. Теперь получилось запустить, с -a запустился Апогей.

    Makefile.lite поправленный для make install

    Скрытый текст

    Код:
    #!/usr/bin/make -f
    
    SRCDIR = src
    INSTALLDIR= ~/emu80
    
    CC = c++
    CFLAGS = -g -O0 -c -Wall -std=c++11 `sdl2-config --cflags` -DPAL_SDL -DPAL_LITE
    LDFLAGS = `sdl2-config --libs`
    
    SRC = $(SRCDIR)/*.cpp
    SRCSDL = $(SRCDIR)/sdl/*.cpp
    SRCLITE = $(SRCDIR)/lite/*.cpp
    
    SOURCES_LITE = $(shell echo $(SRC)) $(shell echo $(SRCSDL)) $(shell echo $(SRCLITE))
    
    OBJECTS_LITE = $(SOURCES_LITE:.cpp=.o)
    
    all: Emu80lite
    
    Emu80lite: $(OBJECTS_LITE)
            $(CC) $(LDFLAGS) $(OBJECTS_LITE) -o $@
    
    .cpp.o:
            $(CC) $(CFLAGS) $< -o $@
    
    clean:
            rm -f $(OBJECTS)
            rm -f $(OBJECTS_LITE)
            rm -f Emu80
            rm -f Emu80lite
    
    install: Emu80lite
            mkdir -p $(INSTALLDIR)
            cp Emu80lite $(INSTALLDIR)
            cp -r dist/* $(INSTALLDIR)
            cp COPYING.txt $(INSTALLDIR)
            cp whatsnew.txt $(INSTALLDIR)
            cp doc/* $(INSTALLDIR)
    [свернуть]
    Больше игр нет

  11. #10

    Регистрация
    05.04.2013
    Адрес
    Починки, Нижегородская обл.
    Сообщений
    1,371
    Спасибо Благодарностей отдано 
    401
    Спасибо Благодарностей получено 
    647
    Поблагодарили
    255 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ну что ж, радует, что lite-версия запустилась и работает
    Значит, дело все-таки в wxWidgets или его совместной работе с SDL...
    Как работает, кстати? Проблем с картинкой, звуком нет? (На Апогее можно сделать R,C <ВК>, G <ВК> и позапускать что-нибудь с ROM-диска).

Страница 21 из 94 ПерваяПервая ... 171819202122232425 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Emu80, старые версии
    от Pyk в разделе Эмуляторы отечественных компьютеров
    Ответов: 68
    Последнее: 11.03.2017, 00:33

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •