User Tag List

Страница 5 из 130 ПерваяПервая 123456789 ... ПоследняяПоследняя
Показано с 41 по 50 из 1334

Тема: Звуковая карта "ZXM-SoundCard"

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

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

    Регистрация
    11.02.2005
    Адрес
    Москва
    Сообщений
    3,789
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    4
    Поблагодарили
    4 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от VELESOFT Посмотреть сообщение
    Была такая тема - http://zx.pk.ru/showthread.php?t=4088
    Но... Как сказал Romanich , ATmega8515/8535 - гонятся на 21 мГц. На 24 уже не работают!

    В общем далеко не 100% что на 24 мГц заработает первый попавшийся микроконтроллер .
    Спек128 - испанская выдумка, навязанная Сэру Клайву. © Shaos
    REAL HARDWARE MUST LIVE ! - http://SBLive.narod.ru/ZX-Spectrum/

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

  3. #2

    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    10,141
    Спасибо Благодарностей отдано 
    216
    Спасибо Благодарностей получено 
    769
    Поблагодарили
    417 сообщений
    Mentioned
    23 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Если появятся желающие, прикрутим и SID, но это другая будет плата
    Пока надо эту до ума довести.
    Сайт поддержки моих изделий - http://micklab.ru/
    Группа ВКонтакте - https://vk.com/micklab

  4. #3

    Регистрация
    04.04.2007
    Адрес
    Praha
    Сообщений
    753
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    34
    Поблагодарили
    15 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Mick Посмотреть сообщение
    Если появятся желающие, прикрутим и SID, но это другая будет плата
    Пока надо эту до ума довести.
    I have full schematic of SID connection to ZX machines/clones

  5. #4

    Регистрация
    11.02.2005
    Адрес
    Москва
    Сообщений
    3,789
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    4
    Поблагодарили
    4 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Как насчёт Yamaha OPL3 ?
    Спек128 - испанская выдумка, навязанная Сэру Клайву. © Shaos
    REAL HARDWARE MUST LIVE ! - http://SBLive.narod.ru/ZX-Spectrum/

  6. #5

    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    10,141
    Спасибо Благодарностей отдано 
    216
    Спасибо Благодарностей получено 
    769
    Поблагодарили
    417 сообщений
    Mentioned
    23 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от fan Посмотреть сообщение
    Как насчёт Yamaha OPL3 ?
    Ты кого спрашиваешь?
    Так недолго и до музыкального монстра дорасти
    Сайт поддержки моих изделий - http://micklab.ru/
    Группа ВКонтакте - https://vk.com/micklab

  7. #6

    Регистрация
    11.02.2005
    Адрес
    Москва
    Сообщений
    3,789
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    4
    Поблагодарили
    4 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    VELESOFT'а . Интерес остальных то же приветствуется
    Спек128 - испанская выдумка, навязанная Сэру Клайву. © Shaos
    REAL HARDWARE MUST LIVE ! - http://SBLive.narod.ru/ZX-Spectrum/

  8. #7

    Регистрация
    04.04.2007
    Адрес
    Praha
    Сообщений
    753
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    34
    Поблагодарили
    15 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    deleted
    Последний раз редактировалось VELESOFT; 02.01.2010 в 19:29.

  9. #8

    Регистрация
    04.04.2007
    Адрес
    Praha
    Сообщений
    753
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    34
    Поблагодарили
    15 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    This is my version of SIDINTERFACE
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	sidinterface-new.jpg 
Просмотров:	397 
Размер:	69.6 Кб 
ID:	15200  

  10. #9

    Регистрация
    15.06.2006
    Адрес
    S.Pb
    Сообщений
    5,791
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    7
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    VELESOFT, what ports are used?

  11. #10

    Регистрация
    04.04.2007
    Адрес
    Praha
    Сообщений
    753
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    34
    Поблагодарили
    15 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от БК-0010 Посмотреть сообщение
    VELESOFT, what ports are used?
    This is 16bit ports. I must find manual. But you can see all ports on SID PLAYER source code:
    http://simonowen.com/sam/sidplay/

    See in schematic:
    8bit port #D4
    and A8-A12 + A15 select adress for SID chip.

    This port is unusable on real ZX Spectrums (collision wih port FE and 7FFD,etc...) but complette schematic and port decoder can be modified (integrated to one CPLD)

    SOURCE CODE OF SIDPLAYER:
    Код:
    ; SID interface functions
    
    sid_reset:     ld   hl,last_regs
                   ld   bc,&00d4       ; SID base port is &D4
                   ld   d,b            ; write 0 to all registers
                   ld   a,25           ; 25 registers to write
    reset_loop:    out  (c),d          ; write to register
                   ld   (hl),d         ; remember new value
                   inc  hl
                   set  7,b
                   out  (c),d          ; effectively strobe write
                   res  7,b
                   inc  b
                   cp   b
                   jr   nz,reset_loop  ; loop until all reset
    
                   xor  a
                   ld   (last_regs+&04),a   ; control for voice 1
                   ld   (last_regs+&0b),a   ; control for voice 2
                   ld   (last_regs+&12),a   ; control for voice 3
                   ret
    
    sid_update:    ex   de,hl          ; switch new values to DE
                   ld   c,&d4          ; SID interface base port
    
                   ld   hl,25          ; control 1 changes offset
                   add  hl,de
                   ld   a,(hl)         ; fetch changes
                   and  a
                   jr   z,control2     ; skip if nothing changed
                   ld   (hl),0         ; reset changes for next time
                   ld   hl,&04         ; new register 4 offset
                   ld   b,l            ; SID register 4
                   add  hl,de
                   xor  (hl)           ; toggle changed bits
                   out  (c),a          ; write intermediate value
                   ld   (last_regs+&04),a ; update last reg value
                   set  7,b
                   out  (c),a          ; strobe
    
    control2:      ld   hl,26          ; control 2 changes offset
                   add  hl,de
                   ld   a,(hl)
                   and  a
                   jr   z,control3     ; skip if no changes
                   ld   (hl),0
                   ld   hl,&0b
                   ld   b,l            ; SID register 11
                   add  hl,de
                   xor  (hl)
                   out  (c),a
                   ld   (last_regs+&0b),a
                   set  7,b
                   out  (c),a
    
    control3:      ld   hl,27          ; control 3 changes offset
                   add  hl,de
                   ld   a,(hl)
                   and  a
                   jr   z,control_done ; skip if no changes
                   ld   (hl),0
                   ld   hl,&12
                   ld   b,l            ;  SID register 18
                   add  hl,de
                   xor  (hl)
                   out  (c),a
                   ld   (last_regs+&12),a
                   set  7,b
                   out  (c),a
    
    control_done:  ld   hl,last_regs   ; previous register values
                   ld   b,0            ; start with register 0
    out_loop:      ld   a,(de)         ; new register value
                   cp   (hl)           ; compare with previous value
                   jr   z,sid_skip     ; skip if no change
                   out  (c),a          ; write value
                   ld   (hl),a         ; store new value
                   set  7,b
                   out  (c),a          ; effectively strobe write
                   res  7,b
    sid_skip:      inc  hl
                   inc  de
                   inc  b              ; next register
                   ld   a,b
                   cp   25             ; 25 registers to write
                   jr   nz,out_loop    ; loop until all updated
                   ld   hl,7
                   add  hl,de          ; make up to a block of 32
                   ret
    
    
    start_50Hz:    equ  0
    step_50Hz:     equ  0
    end_50Hz:      equ  0
    
    start_60Hz:    equ  191             ; start on line 191
    step_60Hz:     equ  312/6           ; step back 52 lines
    step5_60Hz:    equ  start_60Hz-(4*step_60Hz) ; in top border
    end_60Hz:      equ  start_60Hz-(5*step_60Hz) ; frame int finish
    
    start_100Hz:   equ  88
    step_100Hz:    equ  0
    end_100Hz:     equ  start_100Hz
    
    ; Set playback speed, using timer first then ntsc flag
    set_speed:     ld   hl,(c64_cia_timer) ; C64 CIA#1 timer frequency
                   ld   a,h
                   or   l
                   jr   nz,use_timer    ; use if non-zero
                   ld   a,(ntsc_tune)   ; SID header said NTSC tune?
                   and  a
                   jr   nz,set_60hz     ; use 60Hz for NTSC
    
    set_50hz:      ld   h,start_50Hz
    ;              ld   l,end_50Hz
    ;              ld   a,step_50Hz
    set_exit:      ld   (line_step1+1),a
                   ld   (line_step2+1),a
                   ld   a,h
                   ld   (line_start+1),a
                   ld   (line_num),a
                   ld   a,l
                   ld   (line_end+1),a
                   ld   a,&ff
                   out  (line),a        ; disable line interrupts
                   ret
    set_60hz:      ld   h,start_60Hz
                   ld   l,end_60Hz
                   ld   a,step_60hz
                   jr   set_exit
    set_100hz:     ld   h,start_100Hz
                   ld   l,end_100Hz
                   ld   a,step_100Hz
                   jr   set_exit
    
    ; 985248.4Hz / HL = playback frequency in Hz
    use_timer:     ld   a,h
                   cp   &22             ; 110Hz (PAL)
                   jr   c,bad_timer     ; reject >100Hz
                   cp   &2b             ; 90Hz
                   jr   c,set_100Hz     ; use 100Hz for 90-110Hz
                   cp   &3b             ; 65Hz
                   jr   c,bad_timer     ; reject 65<freq<90hz
                   cp   &45             ; 55Hz
                   jr   c,set_60Hz      ; use 60Hz for 55-65Hz
                   cp   &56             ; 45Hz
                   jr   c,set_50Hz      ; use 50Hz for 45-55Hz
                                        ; reject <45Hz
    bad_timer:     pop  hl              ; junk return address
                   ld   a,ret_timer     ; unsupported frequency
                   ret
    
    gap4:          equ  &dd00-$         ; error if previous code is
                   defs gap4            ; too big for available gap!
                   defs 16              ; CIA #2 (serial, NMI)
    
                   defs 32              ; small private stack
    new_stack:     equ  $
    
    blocks:        defw 0               ; buffered block count
    head:          defw 0               ; head for recorded data
    tail:          defw 0               ; tail for playing data
    
    init_addr:     defw 0
    play_addr:     defw 0
    play_song:     defb 0
    ntsc_tune:     defb 0               ; non-zero for 60Hz tunes
    
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    Последний раз редактировалось VELESOFT; 02.01.2010 в 19:22.

Страница 5 из 130 ПерваяПервая 123456789 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 67
    Последнее: 21.04.2021, 14:51
  2. Куплю "Электронику КР-02" (клон "Радио-86РК")
    от Titus в разделе Барахолка (архив)
    Ответов: 10
    Последнее: 18.08.2009, 15:30
  3. Ответов: 18
    Последнее: 27.08.2008, 20:27
  4. Ответов: 6
    Последнее: 20.11.2007, 11:29

Ваши права

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