| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.txt | 2019-05-15 | 8.6 kB | |
| vhdl_c64_c1530_c1541_de10_lite_sdram_fat32_rev_3_1_2019_05_15.zip | 2019-05-15 | 639.1 kB | |
| vhdl_c64_c1530_c1541_de10_lite_sdram_fat32_rev_3_0_2019_05_09.zip | 2019-05-09 | 635.4 kB | |
| vhdl_c64_c1530_sd_read_only_de10_lite_rev_2_0_demo_2019_04_08.zip | 2019-05-09 | 738.9 kB | |
| vhdl_c64_c1541_sd_read_write_de10_lite_sdram_rev_1_2_2019_04_24.zip | 2019-04-24 | 471.4 kB | |
| vhdl_c64_c1541_sd_read_write_de10_lite_2017_06_05.zip | 2017-06-05 | 256.8 kB | |
| vhdl_c64_c1541_sd_r0001.zip | 2015-07-31 | 253.9 kB | |
| Totals: 7 Items | 3.0 MB | 0 | |
-------------------------------------------------------------------------------------------------------
-- DE10 lite Top level for FPGA64_027 by Dar (darfpga@aol.fr) 15-Mai-2019
-- http://darfpga.blogspot.fr
--
-- FPGA64 is Copyrighted 2005-2008 by Peter Wendrich (pwsoft@syntiac.com)
-- http://www.syntiac.com/fpga64.html
--
-- sdram interface is Copyright (c) 2013 Till Harbaum <till@harbaum.org>
-- from MiST/MiSTer project.
--
-- Uses only one pll for 32MHz and 18MHz generation from 50MHz
--
-- Rev 3.1 : 15 Mai 2019
-- added D64 write support
--
--
-- Rev 3.0 : 08 Mai 2019
-- added support for FAT32 SD card by using ZPUflex control_module
-- TAP and D64 loaders ok (read only)
-- updated FPGA64 form MiST source dated 30-Avril-2019 but :
-- - no ROM load
-- - no cartridge interface
-- - PAL frequency only
-- - 15KHz TV mode only
--
-- F9 : start/stop tape on USB keyboard (to be done for PS/2)
--
-- Display leds :
-- 0-3 : spi arbitration sd card/usb host
-- 6 : tape motor on = led on
-- 7 : tape write (not used)
-- 8 : tape version detected 1 = led on
-- 9 : tap fifo underflow 1 = error (clear on TAP file select)
--
-- Keys usage:
-- key 0 : reset C64 (also thru OSD)
-- key 1 : reset control module
--
-- Swiches usage: none.
--
-- Rev 2.0 : 08 Avril 2019 - demo for c1530 only
--
-- Rev 1.2 : 24 Avril 2019 - DE10-Lite sdram release
-- removed external sram interface
-- replace with on board sdram
-- external IEC always available but commented here to avoid bus stuck.
--
-- /!\ current configuration required no gpio pin
-- /!\ arduino pins are used to interface with :
-- - SD card over SPI bus
-- - usb_host_max3421e over SPI bus shared with SD card
-- - sgtl5000 dac over digital audio bus + I2C bus for configuation
--
-- Rev 1.1 - 05_June-2017
--
-- Fixe SDHC card lba computation in spi_controler.vhd
--
-- Rev 1.0 - 25-May-2017
-- Early release of c64_c1541_sd with WRITE capability for DE10 lite board by Dar (darfpga@aol.fr)
--
-- NO FAT file system, raw sd card access (see README_old on how to put disk image on sd card )
--
-- See http://darfpga.blogspot.fr for hardware requirements
--
-- Use at your own risk ! Always keep in mind that any sd card data may be lost.
--
-- Tested write operations (from most simple to more complex) :
-- remane file (DOS) : OPEN15,8,15,"R:NEWNAME=OLDNAME"
-- delete file (DOS) : OPEN15,8,15,"S:NAME"
-- copy file (DOS) : OPEN15,8,15,"C:NEWFILE=OLDFILE"
-- save basic program : SAVE"NAME",8
--
-- beware after DOS operation C64 prompt may return READY immediatly while C1541 activity
-- is not finished. You have to wait for current read sector to be OFF (see below).
--
--
-- DON'T EVER use c1541 NEW (N) command (Format). It is absolutly not supported and may leads
-- to data loss.
--
-- Board keys :
--
-- key 0 : reset c64, c1541, usb, sd_card
-- key 1 : not used.
--
-- Board switches :
--
-- switch 0 : up only tested 15KHz
-- switch 1 : down only tested pal
--
-- Board hex display
--
-- left most 2digits : disk number (F8 = next or shift F8 = previous )
-- centre 2digits : current track number (0x12 = BAM)
-- right most 2digits : current read sector (OFF = no more drive activity)
-- right most digit dot : sd_card busy
--
-- Board led display :
--
-- left most (9-4) : sd_card machine state, should be 000001 when idle
-- right most(3-0) : usb host/sd_card spi acces arbiter state
--
-- After reset sd_card busy (right most digit dot) should be OFF => reset until you get it.
--
-- Current read sector acts the same as true 1541 drive red led (meaning : under activity)
-- DO NOT change disk number (F8) when current read sector is ON.
--
-- Sd_card busy (Right most digit dot) should only blink briefly. Permanent ON means sd_card is stucked.
--
-- Sd_card and usb host shares the same SPI bus, when sd_card get stucked and don't release the bus
-- keyboard will be stucked also. Reset will get out of stuck situation but data will be lost.
-- (Using PS/2 keyboard could allow not sharing SPI bus).
--
-------------------------------------------------------------------------------------------------------
For Altera/Quartus and de10 lite, board you should use the following project files (qpf/qsf) that
contains the correct file list and pin assignements :
de10_lite/c64_de10_lite.qpf / qsf
For others software or board the file are listed below :
(do not use extra files from rtl_pace or rtl_fpga64_027 other than the one listed below as they will
conflict with files from rtl_dar)
rtl_dar/max10_pll50_to_33_and_18.vhd
rtl_dar/spi_controller.vhd
rtl_dar/sgtl5000_dac.vhd
rtl_dar/usb_report_pkg.vhd
rtl_dar/usb_host_max3421e.vhd
rtl_dar/decodeur_7_seg.vhd
rtl_dar/fpga64_keyboard_usb_french.vhd
rtl_dar/c64_de10_lite.vhd
rtl_dar/gcr_floppy.vhd
rtl_dar/c1541_sd.vhd
rtl_dar/composite_sync.vhd
rtl_dar/sid6581.vhd
rtl_dar/c1541_logic.vhd
rtl_pace/sid_voice.vhd
rtl_pace/sprom.vhd
rtl_pace/spram.vhd
rtl_pace/m6522.vhd
t65/T65_Pack.vhd
t65/T65_MCode.vhd
t65/T65_ALU.vhd
t65/T65.vhd
% see README_old.txt for explanation on how to get these files
FPGA64_027/sources/rtl/roms/rom_c64_chargen.vhd
FPGA64_027/sources/rtl/roms/rom_c64_kernal.vhd
FPGA64_027/sources/rtl/roms/rom_c64_basic.vhd
FPGA64_027/sources/rtl/video_vicII_656x_e.vhd
FPGA64_027/sources/rtl/io_ps2_keyboard.vhd
FPGA64_027/sources/rtl/gen_rwram.vhd
FPGA64_027/sources/rtl/gen_ram.vhd
FPGA64_027/sources/rtl/fpga64_scandoubler.vhd
FPGA64_027/sources/rtl/fpga64_rgbcolor.vhd
FPGA64_027/sources/rtl/fpga64_hexy_vmode.vhd
FPGA64_027/sources/rtl/fpga64_hexy.vhd
FPGA64_027/sources/rtl/fpga64_cone_scanconverter.vhd
FPGA64_027/sources/rtl/fpga64_bustiming.vhd
FPGA64_027/sources/rtl/cpu65xx_fast.vhd
FPGA64_027/sources/rtl/cpu65xx_e.vhd
FPGA64_027/sources/rtl/cpu_6510.vhd
FPGA64_027/sources/rtl/cia6526.vhd
% see README_old.txt to build these 3 files from FPGA64_027 originals by using fpga64.patch
rtl_dar/video_vicII_656x_a.vhd
rtl_dar/fpga64_sid_iec.vhd
rtl_dar/fpga64_buslogic_roms_mmu.vhd
Top level files is c64_de10_lite.vhd
At the moment :
- external 64k sram is needed (but easy to modify for using MAX10 FPGA internal ram instead)
- usb host for keyboard is used but PS/2 can be reactivated
- sgtl5000 for sound is used but PWM can be reactivated
Original english keyboard layout is available only for PS/2
French keyboard layout is available only for USB host.
Layout and interface could be exchanged with little work.
--------------------------------------------------
French keyboard layout uses standard french keys
-- Normal keys
A-Z => normal (graph1/2 via shift/alt left)
0-9 + => shift
&"'(-)= => normal
#[@] => alt gr
,;:!*$< => normal
?./%£> => shift
return => return (entree)
space => space (espace)
-- Particular keys
run/stop => tab
commodore => alt left
ctrl => ctrl left
crsr up => up
crsr down => down
crsr left => left
crsr right => right
left arrow => ² (carre)
up arrow => ^ (accent circonflexe)
pi => ¨ (trema)
home => debut (home)
clr => shift debut (shift home)
inst => inser
del => retour arriere (backspace)
graph1(+) => shift suppr
graph2(+) => alt left suppr
graph1(-) => shift fin
graph2(-) => alt left fin
graph1(£) => shift page up
graph2(£) => alt left page up
graph1(@) => shift page down
graph2(@) => alt left page down
graph1(*) => shift *
graph2(*) => alt left *
blk..yel => ctrl 1 .. ctrl8
rvs on => ctrl 9
rvs off => ctrl 0
-- Function keys
F1 F3 F5 F7=> F1 F3 F5 F7
F2 F4 F6 F8=> shift F1 F3 F5 F7
-- joystick emulation
keypad up/down/left/right
keypad inser (fire)
use F11 to cycle between port A/B/keyboard
-- special fonction keys
F2 F4 F6 F10 => not used
F8 => sd card disk image + 1
shift F8 => sd card disk image - 1
F12 => toggle pal/ntsc
-------------------------------------------------
Any improvement is welcomed if not exclusively specific to a given board. Feel free to use my own source
code for any non commercial project. See README_old.txt for full intellectual property mentions/links for other
authors.
DAR - make it simple -