Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   Unsorted (http://zx-pk.ru/forumdisplay.php?f=13)
-   -   -=Reverse=- Конфигурации. (http://zx-pk.ru/showthread.php?t=13875)

TSL 20th July 2013 18:16

На DE1 есть порт Сеги (правда без звука). Перетягивается на раз два.
Про ХДЛ порт Денди не слышал.

vlad 22nd July 2013 12:23

Конфигурации
 
1 Attachment(s)
ReVerSE U9EP3C

:speccy: u9-Speccy v0.8 Rev.20130721

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

  • CPU
    Z80 @ 14.0MHz (T80 Core)
  • TURBO
    x1 3.5MHz
    x4 14.0MHz (no wait) On/Off = Key 'F9'
  • SOUND
    Beeper
    General Sound (Z80 @ 84MHz, ROM v1.05a 32K, RAM 448K) Reset = Key 'F10'
    TurboSound (2 SSG YM2149)
    Soundrive 1.05 ports - mode 1
    Covox (port #FB) On/Off = Key 'F11'
  • MEMORY
    4MB #DFFD : #7FFD
  • REAL-TIME CLOCK
    Gluk Clock (MC14618A)
  • VIDEO
    Standart (VGA 800 x 600 @ 50Hz)
    Pentagon (VGA 800 x 600 @ 48Hz) On/Off = Key 'F12'
  • JOYSTICK
    Kempston Mouse 3D
    Kempston [4][5][6][8][AltGr] On/Off = Key 'NumLock'
  • CD/MMC
    ZController
  • UART
[свернуть]

+ ROM теперь считывается из M25P40, раньше требовалось его наличие на SD.
+ обновлен T80CPU ver. 242
+ установленная перемычка на GPI переключает VGA 31.5кГц на 15кГц (экспериментально).
+ добавлена громкость каналов в GS.
! исправления в модуле UART.
! теперь модуль ZC корректно работает при turbo on/off.
! защелки bit7_flag, bit0_flag, int_n приводившие к нестабильной работе GS, заменены на D-триггера с динамическим синхронным входом С и с дополнительными асинхронными входами S и R.
* частота CPU GS установлена на 21МГц.

Для работы TAP, SNA, Z80 с SD карты, планирую реализовать DIVIDE или ZXMMC+. Может есть еще более подходящий вариант?

vlad 28th July 2013 16:20

Сделал порт One-Chip-MSX, конфигурации для плат U8 и U9 можно брать здесь.

vlad 9th August 2013 22:14

Конфигурации
 
5 Attachment(s)
http://upload.wikimedia.org/wikipedi...ectrum128K.jpgZX-Spectrum на ReVerSE

:speccy: u9-Speccy v0.8.8 Rev.20140401

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

  • CPU
    Z80 @ 14.0MHz (T80 Core)
  • TURBO
    x1 3.5MHz / x2 7.0MHz = Key 'F3'
    x2 7.0MHz / x4 14.0MHz = Key 'F9'
  • SOUND
    Beeper
    General Sound (T80 @ 21MHz, ROM v1.05a 32K, RAM 448K) Reset = Key 'F10'
    TurboSound (2 SSG AY8910)
    Soundrive 1.05 ports - mode 1
    Covox (port #FB) On/Off = Key 'F11'
  • MEMORY
    4MB #DFFD : #7FFD
  • REAL-TIME CLOCK
    Gluk Clock (MC14618A)
  • VIDEO
    Standart (VGA 800 x 600 @ 50Hz)
    Pentagon (VGA 800 x 600 @ 48Hz) On/Off = Key 'F12'
    Frame On/Off = Key 'F7'
  • JOYSTICK
    Kempston Mouse 3D
    Kempston [4][5][6][8][AltGr] On/Off = Key 'NumLock'
  • CD/MMC
    ZController
    DivMMC On/Off = Key 'F6'
  • UART
  • SETUP
    N80CPU@50MHz
    80x30 Text Mode On/Off = Key 'F8'
[свернуть]


:speccy: u8-Speccy v0.8.8 Rev.20140401

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

  • CPU
    Z80 @ 14.0MHz (T80 Core)
  • TURBO
    x1 3.5MHz / x2 7.0MHz = Key 'F3'
    x2 7.0MHz / x4 14.0MHz = Key 'F9'
  • SOUND
    Beeper
    General Sound (T80 @ 21MHz, ROM v1.05a 32K, RAM 448K) Reset = Key 'F10'
    TurboSound (2 SSG AY8910)
    Soundrive 1.05 ports - mode 1
    Covox (port #FB) On/Off = Key 'F11'
    Audio MP3, OGG, WAV...
  • MEMORY
    4MB #DFFD : #7FFD
  • REAL-TIME CLOCK
    Gluk Clock (MC14618A)
  • VIDEO
    Standart (VGA 800 x 600 @ 50Hz) On/Off = Key 'F12'
    Pentagon (VGA 800 x 600 @ 48Hz)
    Frame On/Off = Key 'F7'
  • JOYSTICK
    Kempston Mouse 3D
    Kempston [4][5][6][8][AltGr] On/Off = Key 'NumLock'
  • CD/MMC
    ZController
    DivMMC On/Off = Key 'F6'
  • UART
  • SETUP
    N80CPU@50MHz
    80x30 Text Mode On/Off = Key 'F8'
[свернуть]

История изменений:

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

Code:

-------------------------------------------------------------------[01.04.2014]
-- u8-Speccy Version 0.8.8
-- DEVBOARD ReVerSE-U8
-------------------------------------------------------------------------------
-- V0.1          05.11.2011  TOP          : первая версия
-- V0.2    21.10.2011  vs1053      : добавлен модуль для работы с VS1053
-- V0.5    20.11.2011  gs          : добавлен GS
-- V0.5.1  11.12.2011  TOP          : cброс GS на клавише 'F10'
-- V0.5.2  14.12.2011  uart        : добавлен модуль UART
-- V0.5.3  20.12.2011  gs          : INT, CPU GS @ 84MHz
-- V0.6    16.12.2012  loader      : ROM теперь считывается из M25P40
-- V0.7    29.05.2013  t80s        : обновлен T80CPU
--                    gs          : исправлена работа защелок bit7_flag, bit0_flag (синхронный процесс), частота 21МГц, добавленна громкость каналов
-- V0.8    21.07.2013  zcontroller  : работа модуля ZC при key_f(9) on/off
--                    gs          : исправлена работа int_n (синхронный процесс)
-- V0.8.1  23.07.2013  vs1053      : убран опрос DREQ в режиме STREAM (были слышны потрескивания)
--                    TOP          : устранена ошибка переключения видео страниц в vid_wr (shurik-ua)
-- V0.8.2  24.07.2013  zcontroller  : Clock 28МГц
-- V0.8.3  10.08.2013  io_ps2_mouse : ticksPerUsec * 3500000 в модулях io_ps2_mouse и io_ps2_keyboard
-- V0.8.4  01.09.2013  spi          : независимая работа интерфейса от системной частоты
-- V0.8.5  07.09.2013  ay8910      : YM2149 временно заменил на AY8910, был слышен шум после остановки проигрывания
-- V0.8.6  09.03.2014  sdram        : изменения в контроллере SDRAM
--                    video        : добавлена рамка кнопка 'F7' = On/Off   
-- V0.8.7  27.03.2014  video        : изменения видео режимов pentagon, spectrum
--                    divmmc      : добавлен divMMC (8K ROM + 512K RAM)
--                    TOP          : изменен селектор данных CPU на MUX
-- V0.8.8  01.04.2014  divmmc      : исправление в переключении после чтения опкода (shurik-ua)
--                    sdram        : добавлены защелки RD, WR, RFSH для предотвращения повторного захвата запросов
--                    TOP          : добавлено чтение из портов 7FFD и DFFD. Кнопка 'F3' = 3.5MHz/7.0MHz, 'F9' = 7.0MHz/14.0MHz

[свернуть]

http://zx.pk.ru/attachment.php?attac...1&d=1395935787

aniSKY 12th August 2013 13:44

Где можно подробно посмотреть про реализацию UART'а ? какие порты, какие пины?
(касаемо U9EP3C если есть разница)

vlad 12th August 2013 15:23

2 Attachment(s)
Quote:

Originally Posted by aniSKY (Post 620602)
Где можно подробно посмотреть про реализацию UART'а ? какие порты, какие пины?

На плате реализован USB-UART мост на FT232R:
  1. Устанавливаем на PC утилиту FT_Prog
  2. и соответствующие ОС драйвера.
  3. Подключаем ReVerSE к PC USB кабелем, на плате разъем (Х7) miniUSB.
  4. Запускаем утилиту FT_Prog.
  5. Жмем на Scan and Parse.
  6. Делаем изменения в вкладках IO Controls и USB String Descriptions в Device Tree как на screen-shot.
  7. Жмем Program Devices.
В конфигурации Speccy реализована поддержка UART (115200 Baud, 8bit, 1 stop bit, no parity).

Порт #xxAC чтение:
  • bit7= tx_busy;
  • bit6= CBUS4;
  • bit5..2= не используются;
  • bit1= rx_error;
  • bit0= rx_avail.
Порт #xxBC чтение/запись:
  • bit7..0= данные.

Code:

; -----------------------------------------------------------------------------       
; UART
; -----------------------------------------------------------------------------
; Ports:
; #BC DATA        W/R
; #AC STATUS        R: bit7=1:tx_busy, bit6=0:CBUS4(FT232R POWER ON), bit1= rx_error,
bit0= rx_avail

; HL=STRING, #00 = END STRING

P_TXREG                EQU #BC
P_TXSTA                EQU #AC

TX_IF                RLCA
                RET C                ; FT232R NO CONNECT TO HOST!
TX_STR                IN A,(P_TXSTA)
                RLCA
                JR C,TX_IF        ; CY=1 :BUFFER FULL, WAIT...
                LD A,(HL)
                OR A
                RET Z                ; Z=0 :END STRING
                INC HL
                OUT (P_TXREG),A
                JR TX_STR

Code:

                LD HL,STR_TEST1
                CALL TX_STR
                RET

STR_TEST1        DB #0D,#0A
                DB #0D,#0A,"PCB U9EP3C Rev.A (C) MVV"
                DB #0D,#00


vlad 17th August 2013 02:17

1 Attachment(s)
Написал на скорую руку тест, для проигрывания mp3 на u8.
Code:

; Тест проигрывания MP3 v0.0.1

; Port #xx04 Data Buffer (write/read)
; Port #xx05 Command/Status Register (write/read)

; Data Buffer (write/read):
;        bit 7-0        = Stores read/write data

; Command/Status Register (write):
;        bit 7        = XSC                0: активен
;        bit 6        = XDCS                0: активен
;        bit 5        = mode                0: режим SCI/SDI; 1: STREAM 32bit(левый канал + правый канал)
;        bit 4-0        = Reserved

; Command/Status Register (read):
;        bit 7        = BUSY                1: Занято, идет передача; 0: Свободно
;        bit 6        = DREQ                1: Запрос новых данных; 0: Занято
;        bit 5-0        = Reserved

        ORG #8000
        DI

; Отключение SYSTEM_AUDIO потока звука от AY, GS....

        LD A,%11000000
        OUT (#05),A

        CALL WAIT

        LD A,%01000000        ; SCI
        OUT (#05),A

        LD D,#02                ; Write
        CALL VS_RW
        LD D,#00                ; SCL_MODE
        CALL VS_RW
        LD D,#48                ; SM_LINE1 & SM_SDNEW & SM_RESET
        CALL VS_RW
        LD D,#04
        CALL VS_RW

        CALL WAIT
        CALL WAIT
        CALL WAIT

        LD A,%11000000
        OUT (#05),A

        CALL WAIT

        LD A,%00000000        ; SDI
        OUT (#05),A

        LD HL,#8100            ; Адрес MP3 файла "ROCKET"
        LD BC,18252            ; Длина MP3 файла "ROCKET"
        CALL VS_STREAM          ; Проиграть

        LD BC,2048
CLS    LD D,0
        CALL VS_RW
        DEC BC
        LD A,C
        OR B
        JR NZ,CLS

        LD A,%11000000
        OUT (#05),A

        CALL WAIT

        LD A,%00000000
        OUT (#05),A


        LD HL,TABLE
        LD BC,44
        CALL VS_STREAM


; Подключить SYSTEM_AUDIO поток для вывода звука от AY, GS...
        LD A,%00100000          ; XCS=0 XDCS=0
        OUT (#05),A
        RET

VS_STREAM
        LD D,(HL)
        CALL VS_RW              ; Передача в VS1053
        INC HL
        DEC BC
        LD A,B
        OR C
        JR NZ,VS_STREAM
        RET

VS_RW  IN A,(#05)
        OUT (#FE),A
        RLCA
        JR C,VS_RW
        RLCA
        JR NC,VS_RW
        LD A,D
        OUT (#04),A

VS_RW1  IN A,(#05)
        OUT (#FE),A
        RLCA
        JR C,VS_RW1
        RLCA
        JR NC,VS_RW1
        IN A,(#04)
        RET

WAIT    LD BC,0
LL0    DEC BC
        LD A,C
        OR B
        JR NZ,LL0
        RET

; Обычный заголовок PCM с безконечной длиной для SYSTEM_AUDIO
; См. мануал VS1053b стр.51 9.6 Feeding PCM data
TABLE  DB #52,#49,#46,#46,#FF,#FF,#FF,#FF      ; REFF....
        DB #57,#41,#56,#45,#66,#6D,#74,#20      ; WAVEfmt
        DB #10
        DB #00,#00,#00,#01,#00,#02,#00

        DB #80,#BB,#00,#00                      ; 48kHz
        DB #00,#EE,#02,#00

        DB #04,#00
        DB #10,#00
        DB #64,#61,#74,#61                      ; data
        DB #FF,#FF,#FF,#FF


TSL 17th August 2013 02:40

На чем реализован мр3 декодер?

TSL 17th August 2013 12:06

А, там стоит VS1053, ок.
"Реализован на С, откомпилирован в VSIDE" - эээ прямо финнами или автором? ;)

vlad 17th August 2013 12:09

Может кто уже MIDI проигрывал? На разъем Х5 выведены сигналы RX, TX для отладки по UART. Или использует чип как сопроцессор? Или разобрался как пропатчить (ссылка)?


All times are GMT +4. The time now is 16:32.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.