User Tag List

Показано с 1 по 10 из 543

Тема: ZEmu

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

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

    Регистрация
    29.01.2005
    Адрес
    Belarus, Grodno
    Сообщений
    1,279
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    win32 бинари : http://detstwo.com/pub/zemu/zemu-win32-bin.zip
    (там даже баг один пофикшен, который есть в линуксовых сорсах)

    Добавлено через 13 минут
    Alexandr Medvedev, если успел скачать уже бинари, то скачай плиз ещё раз, hot bugfix
    Последний раз редактировалось Sinus; 14.02.2008 в 12:42. Причина: Добавлено сообщение
    [target] [zemu] [js8x] [pouet] KAY-1024, 5''FDD, 3''FDD, HDD

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

  3. #2

    Регистрация
    17.01.2005
    Адрес
    Старый Оскол
    Сообщений
    537
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    8
    Поблагодарили
    4 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Потестил Win32 версию, сразу вылезли неприятные моменты:

    Загрузка CPU 100% даже при выборе файла (интересно почему)
    Мож я не нашёл, но при выборе файла невожможно перейти на другой диск кроме C:
    Эмуляция TR DOS слабо сделана, некоторые проги выдают disk error'ы
    Smash commander 2.0 -> disk error
    RDS 3.1 -> insert disk in drive
    Kol0bok 2 -> просто не работает
    FUT 2.01 -> About diskette -> Non TR DOS disk
    ADS 3.0i -> TestDrv -> Spin -> 292.7 вместо положенных 300
    ADS 3.0i -> TestDrv -> MaxTrack -> эмуль ваще падает

    Это тока в Win32 версии такое?

  4. #3

    Регистрация
    29.01.2005
    Адрес
    Belarus, Grodno
    Сообщений
    1,279
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    [QUOTE=Alexandr Medvedev;120331]Потестил Win32 версию, сразу вылезли неприятные моменты:
    Загрузка CPU 100% даже при выборе файла (интересно почему)
    всё работает под одним main loop-ом, но по идее не должно быть 100%, в цикле стоит Sleep(1)
    очень странно.

    Мож я не нашёл, но при выборе файла невожможно перейти на другой диск кроме C:
    да, я не делал этого.

    Эмуляция TR DOS слабо сделана, некоторые проги выдают disk error'ы
    Smash commander 2.0 -> disk error
    RDS 3.1 -> insert disk in drive
    Kol0bok 2 -> просто не работает
    FUT 2.01 -> About diskette -> Non TR DOS disk
    ADS 3.0i -> TestDrv -> Spin -> 292.7 вместо положенных 300
    ADS 3.0i -> TestDrv -> MaxTrack -> эмуль ваще падает
    спасибо что сказал.
    весьма странно, учитывая что эмуляция ВГшки взята из Unreal-а.
    буду проверять.
    [target] [zemu] [js8x] [pouet] KAY-1024, 5''FDD, 3''FDD, HDD

  5. #4

    Регистрация
    17.01.2005
    Адрес
    Старый Оскол
    Сообщений
    537
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    8
    Поблагодарили
    4 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sinus Посмотреть сообщение
    всё работает под одним main loop-ом, но по идее не должно быть 100%, в цикле стоит Sleep(1)
    очень странно.
    Потому и загрузка CPU велика, ПОЧТИ 100%
    Цитата Сообщение от Sinus Посмотреть сообщение
    весьма странно, учитывая что эмуляция ВГшки взята из Unreal-а.
    Чего уж тут странного -- взял чужие исходники вместе с чужими ошибками.
    Раз уж эмуляция взята из Unreal, то где тогда настройки No Delays и TR DOS traps ? Их переключеним можно добиться работоспособности части программ.
    К сведению лучшая эмуляция TR DOS на данный момент в Win версии ZX Emul, в ZXMAK'е тоже неплохая.

  6. #5

    Регистрация
    29.01.2005
    Адрес
    Belarus, Grodno
    Сообщений
    1,279
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Alexandr Medvedev

    вы хотите поругаться или как?
    я очень признателен за тестинг, но надо проверять что говоришь:

    Цитата Сообщение от Alexandr Medvedev Посмотреть сообщение
    Потому и загрузка CPU велика, ПОЧТИ 100%
    for ( ; ; ) { Sleep(1); }
    загрузка cpu - 0%



    Раз уж эмуляция взята из Unreal, то где тогда настройки No Delays и TR DOS traps ?
    <NoDelay>no</NoDelay>
    есть.

    TR-DOS traps к ВГ не имеют никакого отношения и у меня не используются.
    [target] [zemu] [js8x] [pouet] KAY-1024, 5''FDD, 3''FDD, HDD

  7. #6

    Регистрация
    16.01.2005
    Адрес
    Moscow
    Сообщений
    800
    Спасибо Благодарностей отдано 
    437
    Спасибо Благодарностей получено 
    43
    Поблагодарили
    26 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Emulator detector (c)2000, Vivid/Brainwave не проходит.
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	zemu.PNG 
Просмотров:	321 
Размер:	13.0 Кб 
ID:	7340  
    IT FOUND A VOICE... NOW IT NEEDS A BODY

  8. #7

    Регистрация
    17.01.2005
    Адрес
    Старый Оскол
    Сообщений
    537
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    8
    Поблагодарили
    4 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sinus Посмотреть сообщение
    но надо проверять что говоришь
    Ну не знаю почему, но у меня нагрузка на проц ниже 80% не падает (при выборе файла ниже 60%). Картинка прилагается. Наверное комп слабоват.
    Цитата Сообщение от Sinus Посмотреть сообщение
    <NoDelay>no</NoDelay>
    есть.
    Sorry, не земетил.

    Вот ещё исходник выложенной чуть выше эмуляторопроверялки.
    Мож пригодится.
    Код:
            org #6000
    ;чистим экран
            di
            ld hl,#5aff
            ld (hl),#7
            dec hl
            bit 3,h
            jr nz,$-5
            xor a
            ld (hl),a
            or (hl)
            dec hl
            jr z,$-3
    ;устанавливаем im 2
            ld hl,#fd00
            ld de,#fd01
            ld b,e
            ld c,l
            ld (hl),#fe
            ld a,h
            ld i,a
            ldir
            ld a,#c3        ;jp nn
            ld (#fefe),a
            ld hl,imob
            ld (#feff),hl
            im 2
    ;декрюнчим кучу NOP'ов
            ld hl,#8000
            ld de,#8001
            ld bc,#7dff
            ld (hl),0       ;nop
            ldir
            ld (hl),#c9 ;ret
            ei
    ;матюгаемся
            ld e,0
            ld hl,sysmes
            call prn
    ;заносим в счетчик начальное значение
            ld a,#ff
            ld (count),a
            halt
            ld b,20
    ;вызываем 20 раз кучу NOP'ов
    w1      call #8000
            djnz w1
            di
            ld a,(count)
    ;декрюнчим кучу команд EI (не путать с
    ;Eternity Industry ;)  )
            ld hl,#8000
            ld de,#8001
            ld bc,#7dfE
            ld (hl),#FD      ;EI
            ldir
            ld c,a
            ld a,#ff
            ld (count),a
            ei
            halt
            ld b,20
    ;вызываем 20 раз кучу комад EI
    w2      call #8000
            djnz w2
            di
    ;сравниваем число интов в первом
    ;и втором случаях с точностью до ё 1 int'a
            ld a,(count)
            sub c
            inc a
            cp 3
    ;если cf=1, то мы под эмулем, т.к.
    ;z80 во время команды EI не реагирует
    ;на прерывания => число интов на реальном
    ;спектруме в первом и втором замерах
    ;отличается более чем на 1
            PUSH AF
            ei
    ;также если во время прихода прерывания
    ;выполнялась команда ld a,i (ld a,r),
    ;процессор посчитает, что прерывания
    ;запрещены
            LD E,0
            ld bc,0
    w3      ld a,i
            jp po,real1
            djnz w3
            dec c
            jr nz,w3
            inc e
    real1   push de
    ;снова матюгаемся
            ld e,#40
            ld hl,report
            call prn
            ld b,40
            call pause
            pop de
            pop af
            rl e
            xor a
            or e
    ;если в первом и во втором тестах
    ;результаты соответствуют реальному
    ;z80, то печатаем об этом
            ld hl,realmes
            jr z,real
    ;иначе печатаем, что нас эмулируют
            ld hl,emulmes
    real    ld e,#60
            call prn
    ;печатаем press any key
            ld b,100
            call pause
            ld hl,anykey
            call prn
    ;опрашиваем any key
    key     xor a
            in a,(#fe)
            cpl
            and 31
            jr z,key
    ;выходим в бейсик или куда-нибудь еще
            di
            ld a,#3f
            ld i,a
            im 1
            ei
            ret
    ;процедура печати стринга в верхнюю
    ;треть экрана методом телетайпа
    ;hl- asciiz-строка
    ;е-мл. байт
    prn     ld a,(hl):inc hl
            or a
            ret z
            push hl
            ld b,5
            add a,a
            ld l,a
            cp " "*2
            jr z,prn0
            ld c,40
            xor a
    beep    ld b,c
            xor #18
            out (#fe),a
            djnz $
            dec c
            jr nz,beep
            inc b
    prn0    halt
            djnz prn0
            ld h,0
            add hl,hl
            add hl,hl
            ld a,h
            add a,#3c
            ld h,a
            ld b,4
            ld d,#40
    prn1    ld a,(hl)
            ld (de),a
            inc l
            inc d
            djnz prn1
            ld b,4
    prn2    ld a,(hl)
            srl a
            or (hl)
            ld (de),a
            inc l
            inc d
            djnz prn2
            pop hl
            inc e
            jr prn
    
    ;мессаги
    sysmes  db " 2000 Brainwave of X-Project.  "
            db "System checking! Please wait... ",0
    report  db "System checking repot:",0
    
    emulmes db "    Warning! General failure:   "
            db "CPU not found! Press F1 for     "
            db "software emulation...  ;-)      ",0
    
    realmes db "Congratulations!!! Test detected"
            db "the Real ZX-Spectrum. May be. ;)",0
    
    anykey  db "Press any key to exit...",0
    
    pause   halt
            djnz pause
            ret
    ;обработчик прерываний
    imob    push af
            ld a,#3e
    count   equ $-1
            inc a
            ld (count),a
            pop af
            ei
            ret
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	zemu.jpg 
Просмотров:	331 
Размер:	52.1 Кб 
ID:	7342  

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

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

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

Ваши права

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