mirror of
https://github.com/fruit-bat/pico-zxspectrum.git
synced 2025-04-19 00:04:01 +03:00
MURMULATOR2
This commit is contained in:
parent
c88b4d4a58
commit
e38f71080d
@ -42,7 +42,9 @@ pico_sdk_init()
|
|||||||
add_compile_definitions(PICO_MCU="${PICO_PLATFORM}")
|
add_compile_definitions(PICO_MCU="${PICO_PLATFORM}")
|
||||||
|
|
||||||
add_compile_options(-Wall)
|
add_compile_options(-Wall)
|
||||||
add_definitions(-DHID_PROTOCOL_DEFAULT=HID_PROTOCOL_REPORT)
|
|
||||||
|
add_compile_definitions(HID_PROTOCOL_DEFAULT=HID_PROTOCOL_REPORT)
|
||||||
|
add_compile_definitions(PICO_FLASH_SPI_CLKDIV=6)
|
||||||
|
|
||||||
set(DVI_DEFAULT_SERIAL_CONFIG "pico_sock_cfg" CACHE STRING
|
set(DVI_DEFAULT_SERIAL_CONFIG "pico_sock_cfg" CACHE STRING
|
||||||
"Select a default pin configuration from common_dvi_pin_configs.h")
|
"Select a default pin configuration from common_dvi_pin_configs.h")
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
### MURMULATOR platform
|
### MURMULATOR2 platform
|
||||||
|
|
||||||
<img src="MURMULATOR2_pic.JPG" width="400"/>
|
<img src="MURMULATOR2_pic.JPG" width="400"/>
|
||||||
|
|
||||||
|
@ -139,10 +139,10 @@ add_dependencies(ZX-MURMULATOR2
|
|||||||
ZX-MURMULATOR2_HDMI_HDMI_AUDIO_720x576x50Hz
|
ZX-MURMULATOR2_HDMI_HDMI_AUDIO_720x576x50Hz
|
||||||
ZX-MURMULATOR2_HDMI_I2S_AUDIO_640x480x60Hz
|
ZX-MURMULATOR2_HDMI_I2S_AUDIO_640x480x60Hz
|
||||||
ZX-MURMULATOR2_HDMI_I2S_AUDIO_720x576x50Hz
|
ZX-MURMULATOR2_HDMI_I2S_AUDIO_720x576x50Hz
|
||||||
# ZX-MURMULATOR2_VGA_PWM_AUDIO_640x480x60Hz
|
ZX-MURMULATOR2_VGA_PWM_AUDIO_640x480x60Hz
|
||||||
# ZX-MURMULATOR2_VGA_PWM_AUDIO_720x576x50Hz
|
ZX-MURMULATOR2_VGA_PWM_AUDIO_720x576x50Hz
|
||||||
# ZX-MURMULATOR2_VGA_I2S_AUDIO_640x480x60Hz
|
ZX-MURMULATOR2_VGA_I2S_AUDIO_640x480x60Hz
|
||||||
# ZX-MURMULATOR2_VGA_I2S_AUDIO_720x576x50Hz
|
ZX-MURMULATOR2_VGA_I2S_AUDIO_720x576x50Hz
|
||||||
)
|
)
|
||||||
if ((${PICO_BOARD} STREQUAL "pico") OR (${PICO_BOARD} STREQUAL "pico2"))
|
if ((${PICO_BOARD} STREQUAL "pico") OR (${PICO_BOARD} STREQUAL "pico2"))
|
||||||
message("Relevant target: ZX-MURMULATOR2")
|
message("Relevant target: ZX-MURMULATOR2")
|
||||||
|
@ -124,7 +124,6 @@ target_compile_definitions(ZxSpectrumBreadboardHdmiAudio720x576x50Hz PRIVATE
|
|||||||
PICO_HDMI_AUDIO
|
PICO_HDMI_AUDIO
|
||||||
# Enable the PS/2 keyboard
|
# Enable the PS/2 keyboard
|
||||||
USE_PS2_KBD
|
USE_PS2_KBD
|
||||||
PS2KBD_CLK6_DAT
|
|
||||||
)
|
)
|
||||||
|
|
||||||
target_compile_definitions(ZxSpectrumBreadboardHdmi1PinAudio PRIVATE
|
target_compile_definitions(ZxSpectrumBreadboardHdmi1PinAudio PRIVATE
|
||||||
|
@ -192,6 +192,10 @@ foreach(target
|
|||||||
ZX-MURMULATOR_VGA_PWM_AUDIO_720x576x50Hz
|
ZX-MURMULATOR_VGA_PWM_AUDIO_720x576x50Hz
|
||||||
ZX-MURMULATOR_VGA_I2S_AUDIO_640x480x60Hz
|
ZX-MURMULATOR_VGA_I2S_AUDIO_640x480x60Hz
|
||||||
ZX-MURMULATOR_VGA_I2S_AUDIO_720x576x50Hz
|
ZX-MURMULATOR_VGA_I2S_AUDIO_720x576x50Hz
|
||||||
|
ZX-MURMULATOR2_VGA_PWM_AUDIO_640x480x60Hz
|
||||||
|
ZX-MURMULATOR2_VGA_PWM_AUDIO_720x576x50Hz
|
||||||
|
ZX-MURMULATOR2_VGA_I2S_AUDIO_640x480x60Hz
|
||||||
|
ZX-MURMULATOR2_VGA_I2S_AUDIO_720x576x50Hz
|
||||||
)
|
)
|
||||||
|
|
||||||
add_executable(${target}
|
add_executable(${target}
|
||||||
@ -217,6 +221,10 @@ foreach(target
|
|||||||
${zxspectrum_ear_in_pio}
|
${zxspectrum_ear_in_pio}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
pico_generate_pio_header(${target}
|
||||||
|
${zxspectrum_audio_i2s_pio}
|
||||||
|
)
|
||||||
|
|
||||||
pico_enable_stdio_usb(${target} 0)
|
pico_enable_stdio_usb(${target} 0)
|
||||||
|
|
||||||
# create map/bin/hex file etc.
|
# create map/bin/hex file etc.
|
||||||
@ -312,17 +320,6 @@ foreach(target
|
|||||||
|
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
foreach(target
|
|
||||||
ZX-MURMULATOR_VGA_I2S_AUDIO_640x480x60Hz
|
|
||||||
ZX-MURMULATOR_VGA_I2S_AUDIO_720x576x50Hz
|
|
||||||
)
|
|
||||||
|
|
||||||
pico_generate_pio_header(${target}
|
|
||||||
${zxspectrum_audio_i2s_pio}
|
|
||||||
)
|
|
||||||
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
target_compile_definitions(ZX-MURMULATOR_VGA_PWM_AUDIO_640x480x60Hz PRIVATE
|
target_compile_definitions(ZX-MURMULATOR_VGA_PWM_AUDIO_640x480x60Hz PRIVATE
|
||||||
${ZX-MURMULATOR_VGA_defines}
|
${ZX-MURMULATOR_VGA_defines}
|
||||||
${ZX-MURMULATOR_VGA_PWM_Audio_defines}
|
${ZX-MURMULATOR_VGA_PWM_Audio_defines}
|
||||||
@ -345,4 +342,97 @@ target_compile_definitions(ZX-MURMULATOR_VGA_I2S_AUDIO_720x576x50Hz PRIVATE
|
|||||||
${ZX-MURMULATOR_VGA_defines}
|
${ZX-MURMULATOR_VGA_defines}
|
||||||
${ZX-MURMULATOR_VGA_I2S_Audio_defines}
|
${ZX-MURMULATOR_VGA_I2S_Audio_defines}
|
||||||
${zxspectrum_vga_720x576x50Hz_defines}
|
${zxspectrum_vga_720x576x50Hz_defines}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
#========================================================
|
||||||
|
# ZX MURMULATOR2
|
||||||
|
#========================================================
|
||||||
|
set(ZX-MURMULATOR2_VGA_defines
|
||||||
|
MURMULATOR
|
||||||
|
# Configure the SPI sd card to use SPI0
|
||||||
|
SDCARD_PIN_SPI0_CS=5
|
||||||
|
SDCARD_PIN_SPI0_SCK=6
|
||||||
|
SDCARD_PIN_SPI0_MOSI=7
|
||||||
|
SDCARD_PIN_SPI0_MISO=4
|
||||||
|
#VGA 222 vith VSYNC
|
||||||
|
VGA_ENC_RGB_222
|
||||||
|
VGA_VSYNC
|
||||||
|
PICO_SCANVIDEO_COLOR_PIN_COUNT=6u
|
||||||
|
PICO_SCANVIDEO_DPI_PIXEL_RCOUNT=2u
|
||||||
|
PICO_SCANVIDEO_DPI_PIXEL_GCOUNT=2u
|
||||||
|
PICO_SCANVIDEO_DPI_PIXEL_BCOUNT=3u
|
||||||
|
PICO_SCANVIDEO_DPI_PIXEL_RSHIFT=4u
|
||||||
|
PICO_SCANVIDEO_DPI_PIXEL_GSHIFT=2u
|
||||||
|
PICO_SCANVIDEO_DPI_PIXEL_BSHIFT=0u
|
||||||
|
PICO_SCANVIDEO_COLOR_PIN_BASE=12u
|
||||||
|
# Use the alternate volume map
|
||||||
|
AY8912_ALT_VOL_MAP
|
||||||
|
# Tape audio in
|
||||||
|
EAR_PIN=22
|
||||||
|
# Enable the PS/2 keyboard
|
||||||
|
USE_PS2_KBD
|
||||||
|
PS2KBD_CLK2_DAT
|
||||||
|
# Pins for dual NES joypads, pio1 SM ?
|
||||||
|
NESPAD_DATA_PIN_BASE=26
|
||||||
|
NESPAD_CLK_PIN_BASE=20
|
||||||
|
NESPAD_PIO=pio1
|
||||||
|
NESPAD_IRQ=PIO1_IRQ_0
|
||||||
|
NESPAD_ENABLE
|
||||||
|
)
|
||||||
|
|
||||||
|
set(ZX-MURMULATOR2_VGA_PWM_Audio_defines
|
||||||
|
# Speaker pin audio
|
||||||
|
SPK_PIN=10
|
||||||
|
# Buzzer audio out
|
||||||
|
# BZR_PIN=10
|
||||||
|
# STEREO AY audio
|
||||||
|
AY8912_ABC_STEREO
|
||||||
|
# Left chanel audio out
|
||||||
|
AY8912_A_PIN=9
|
||||||
|
# Right chanel audio out
|
||||||
|
AY8912_C_PIN=11
|
||||||
|
)
|
||||||
|
|
||||||
|
set (ZX-MURMULATOR2_VGA_I2S_Audio_defines
|
||||||
|
# Configure the I2S audio, pio1 SM ?
|
||||||
|
PICO_AUDIO_I2S=1
|
||||||
|
PICO_AUDIO_I2S_PIO=pio1
|
||||||
|
PICO_AUDIO_I2S_PIO_FUNC=GPIO_FUNC_PIO1
|
||||||
|
PICO_AUDIO_I2S_DATA=9
|
||||||
|
PICO_AUDIO_I2S_BCLK=10
|
||||||
|
)
|
||||||
|
|
||||||
|
foreach(target
|
||||||
|
ZX-MURMULATOR2_VGA_PWM_AUDIO_640x480x60Hz
|
||||||
|
ZX-MURMULATOR2_VGA_PWM_AUDIO_720x576x50Hz
|
||||||
|
ZX-MURMULATOR2_VGA_I2S_AUDIO_640x480x60Hz
|
||||||
|
ZX-MURMULATOR2_VGA_I2S_AUDIO_720x576x50Hz
|
||||||
|
)
|
||||||
|
pico_enable_stdio_uart(${target} 1)
|
||||||
|
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
target_compile_definitions(ZX-MURMULATOR2_VGA_PWM_AUDIO_640x480x60Hz PRIVATE
|
||||||
|
${ZX-MURMULATOR2_VGA_defines}
|
||||||
|
${ZX-MURMULATOR2_VGA_PWM_Audio_defines}
|
||||||
|
${zxspectrum_vga_640x480x60Hz_defines}
|
||||||
|
)
|
||||||
|
|
||||||
|
target_compile_definitions(ZX-MURMULATOR2_VGA_PWM_AUDIO_720x576x50Hz PRIVATE
|
||||||
|
${ZX-MURMULATOR2_VGA_defines}
|
||||||
|
${ZX-MURMULATOR2_VGA_PWM_Audio_defines}
|
||||||
|
${zxspectrum_vga_720x576x50Hz_defines}
|
||||||
|
)
|
||||||
|
|
||||||
|
target_compile_definitions(ZX-MURMULATOR2_VGA_I2S_AUDIO_640x480x60Hz PRIVATE
|
||||||
|
${ZX-MURMULATOR2_VGA_defines}
|
||||||
|
${ZX-MURMULATOR2_VGA_I2S_Audio_defines}
|
||||||
|
${zxspectrum_vga_640x480x60Hz_defines}
|
||||||
|
)
|
||||||
|
|
||||||
|
target_compile_definitions(ZX-MURMULATOR2_VGA_I2S_AUDIO_720x576x50Hz PRIVATE
|
||||||
|
${ZX-MURMULATOR2_VGA_defines}
|
||||||
|
${ZX-MURMULATOR2_VGA_I2S_Audio_defines}
|
||||||
|
${zxspectrum_vga_720x576x50Hz_defines}
|
||||||
|
)
|
||||||
|
|
||||||
|
@ -349,3 +349,4 @@ int main(){
|
|||||||
|
|
||||||
main_loop();
|
main_loop();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user