1
0
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:
Phil 2024-12-07 12:25:44 +00:00
parent c88b4d4a58
commit e38f71080d
6 changed files with 111 additions and 19 deletions

View File

@ -42,7 +42,9 @@ pico_sdk_init()
add_compile_definitions(PICO_MCU="${PICO_PLATFORM}")
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
"Select a default pin configuration from common_dvi_pin_configs.h")

View File

@ -1,5 +1,5 @@
### MURMULATOR platform
### MURMULATOR2 platform
<img src="MURMULATOR2_pic.JPG" width="400"/>

View File

@ -139,10 +139,10 @@ add_dependencies(ZX-MURMULATOR2
ZX-MURMULATOR2_HDMI_HDMI_AUDIO_720x576x50Hz
ZX-MURMULATOR2_HDMI_I2S_AUDIO_640x480x60Hz
ZX-MURMULATOR2_HDMI_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
ZX-MURMULATOR2_VGA_PWM_AUDIO_640x480x60Hz
ZX-MURMULATOR2_VGA_PWM_AUDIO_720x576x50Hz
ZX-MURMULATOR2_VGA_I2S_AUDIO_640x480x60Hz
ZX-MURMULATOR2_VGA_I2S_AUDIO_720x576x50Hz
)
if ((${PICO_BOARD} STREQUAL "pico") OR (${PICO_BOARD} STREQUAL "pico2"))
message("Relevant target: ZX-MURMULATOR2")

View File

@ -124,7 +124,6 @@ target_compile_definitions(ZxSpectrumBreadboardHdmiAudio720x576x50Hz PRIVATE
PICO_HDMI_AUDIO
# Enable the PS/2 keyboard
USE_PS2_KBD
PS2KBD_CLK6_DAT
)
target_compile_definitions(ZxSpectrumBreadboardHdmi1PinAudio PRIVATE

View File

@ -192,6 +192,10 @@ foreach(target
ZX-MURMULATOR_VGA_PWM_AUDIO_720x576x50Hz
ZX-MURMULATOR_VGA_I2S_AUDIO_640x480x60Hz
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}
@ -217,6 +221,10 @@ foreach(target
${zxspectrum_ear_in_pio}
)
pico_generate_pio_header(${target}
${zxspectrum_audio_i2s_pio}
)
pico_enable_stdio_usb(${target} 0)
# create map/bin/hex file etc.
@ -312,17 +320,6 @@ foreach(target
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
${ZX-MURMULATOR_VGA_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_I2S_Audio_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}
)

View File

@ -349,3 +349,4 @@ int main(){
main_loop();
}