There are many computer-core specific features and functionality to go over. Here are a few:
Computer core Internet and console connections
Starting from 2018 may 7 release MiSTer supports serial (UART) connection from FPGA to Linux. Linux OS runs PPP or Console daemon on this connection allowing access the internet or Linux shell from FPGA cores.
Cores supporting serial connection
-
Minimig. Tested on Roadshow TCP/IP, AmiTCP and Miami.
- AmiTCP provides more complete solution with ftpd daemon. There are many other 3rd party addons are based on AmiTCP, so it's advised to use this package.
- Roadshow works very well, it is fully compatible with AmiTCP and offers additional extensions. Follow these Instructions for complete setup. It is still a paid for and supported product, you can find more information here.
- Miami was successfully tested. The Miami settings that worked: use PPP connection via serial.device, set baud rate to 115200, RTS/CTS to on, and enable 8N1. Set modem to nullmodem. Manually enter an IP suitable for your lan ending in 254, e.g. 192.168.1.254. Manually add a DNS server, e.g. 8.8.8.8 for Google DNS. Term v4.7 has been used to test console connection. For a more detailed MiamiDX setup guide, please check here
- You can also double the speed on Minimig by modifying the /sbin/uartmode script, like mine: Of course, change the baud rate as well to 230400 on your TCP/IP stack of choice. Tested under MiamiDX, no issues.
echo "$localip:$remoteip" >/tmp/ppp_options cat /media/fat/linux/ppp_options >>/tmp/ppp_options echo 1 > /proc/sys/net/ipv4/ip_forward [ -f /tmp/CORENAME ] && core_name=$(cat /tmp/CORENAME) if [ "$core_name" == "Minimig" ]; then taskset 1 pppd 230400 file /tmp/ppp_options else taskset 1 pppd $conn_speed file /tmp/ppp_options fi
-
ao486. PPP and serial connections are working under DOS, tested with mTCP and various terminal software. PPP is also working under Win3.11/Win95/Win95. DOS tools are here : dos_ftpd.zip. The DOS FTP server included does not support passive mode, so set your client to use active.
- C64. Serial connection.
- Tandy Color Computer 3 (CoCo3). Serial Connection.
- Macintosh Plus. Serial and PPP support.
- AtariST. Serial and PPP support.
- Apple IIe. Serial Connection
OSD provides an option to switch between PPP and Console on these cores. Both console and PPP are using baud rate 115200 8N1 mode with hardware RTS/CTS flow control for stability.
Console connection
Using this connection with supported terminal application on FPGA core, you can access the Linux shell and do some file managements or Linux settings if required.
No special settings are required of Linux.
PPP connection
Using this connection core may have internet connection. More important, the core may run ftp daemon and provide access to its filesystem, so you can use FTP client on PC to move the files to/from the emulated system.
PPP daemon uses /media/fat/linux/ppp_options (linux\ppp_options of PC) file. Most likely you don't need to modify it. Recent update assigns IPs automatically. Core gets
For correct PPP work, make sure you see a network icon in Menu core before starting the other core. Otherwise PPP link won't get IPs. If you've started core earlier, then simply connect the core to PPP and disconnect. Next connection will get correct IP. Or you can switch UART mode in OSD to renew the IP.
NOTE: I'm looking Amiga and MSDOS terminal supporting color and control codes of linux, so it will be possible to use Midnight Commander in terminal connection. If you know such terminal application, then let me know.
PPP connection in MS-DOS on ao486
- In the Mister System Menu Win+F12 set the "Uart Connection" to "PPP", Baud to "115200" and save it.
- Download the DOS PPPD driver: DOSPPP06.ZIP from HERE.
- Grab the latest version of Michael Brutman's mTCP TCP/IP applications for MS-DOS, from the 'Downloads' section HERE
- Transfer those zip files over to your ao486's virtual hard drive and unzip them into the directory of your choice (e.g. C:\NETWORK)
- In MS-DOS on the core, you need to edit a mtcp config file. There's a sample config in the SAMPLES directory called 'sample.cfg' that you can use as a base, or you can use the example below (simple text file named mtcp.cfg in your installation folder). If you use the sample.cfg file, you need to add the top MTCPSLIP line.:
SET MTCPSLIP=true mtu 1500 packetint 0x60 hostname ao486_fpga IPADDR 192.168.1.254 <- Change this to reflect your network. NETMASK 255.255.255.0 GATEWAY 192.168.1.1 <- Change this to reflect your network. NAMESERVER 8.8.8.8 <- You can change this to reflect your network if you want to. LEASE_TIME 86400 IRCJR_USER FPGA_User IRCJR_NICK fpga_user IRCJR_NAME FPGA_User
- Edit your AUTOEXEC.BAT and add the path to your installation folder, as well with the MTCP variable:
- The DOS PPPD driver archive includes the ppp packet driver, which you need to load:
- Enjoy telnet, ftp, irc, and other internet applications while you use MS-DOS. Be sure and make sure you have ANSI.SYS loaded in CONFIG.SYS if you want to use the telnet client to hit telnet BBSes. Original discussion HERE.
PPP connection in Windows 95 on ao486
Unfortunately winsock and winsock2 provided by Microsoft do not work with the ppp connection when in Windows 95.
The following steps will allow you to get it working:
- In the Mister System Menu Win+F12 set the "Uart Connection" to "PPP" and save it.
- In Windows 95 ensure the COM1 device is installed in Start->Settings->Control Panel->System - Device Manager Tab, there should be a twisty called Ports(COM & LPT) and under that a "Communications Port (COM1)"
- If it doesn't exist go to Start->Settings->Control Panel->Add/New Hardware and it should be automatically added.
- Get the replacement PPP client
- Download the software. There are other newer versions available BUT be warned only version 3.0 will work.
- Trumpet Winsock 3.0 - (I extracted the file from the disk image and uploaded it using the DOS ftp client documented above)
- Download the software. There are other newer versions available BUT be warned only version 3.0 will work.
- License the Software - This software is still shareware (time limited) please license it appropriately. Once you acquire a license you can put the details in Tcpman in the "Special" menu in "Password registration"
- Configure Software
- Start Tcpman
- Under File-->PPP Options ensure all checkboxes are unchecked and the text boxes are blank.
- Under File-->Setup Enter an "IP Address" suitable for your LAN eg 192.168.1.254 and a "DNS Server(s)" 192.168.1.1
- Under the Driver section select the PPP radio button and click on "Dialer settings..."
- In the "Dialer settings..."
- "COMM port" COM1
- "Baud rate" 115200
- Using the software ( important, be patient )
- Win95 is rather slow so let it start fully before starting the PPP manager (Tcpman)
- Once it is started it will begin syncing with PPP on the linux host... Be patient it takes a few seconds.
- When you see the PPP[C021] SND and RCV you can start your TCP/IP program
I have found it to be a little complicated to get started, but once it is running it is rock solid and supports multiple client programs at once.
Serial connection on C64
The following is an example for connecting to a BBS using Striketerm 2014 and VIC-101 2400 baud mode:
- Start the C64 core (please note that custom kernels may remove functionality required, if in doubt use the built in kernel).
- In the Mister C64 Menu Win+F12 , go to "Hardware", set the "Expansion" to "RS232", "RS232 Connection" to "Internal", "RS232 mode" to "VIC-1011" and save it.
- In the Mister System Menu Win+F12 set the "Uart Connection" to "Modem", Link to "TCP", Baud to "2400" and save it.
- Load Striketerm 2014 from d64. Available from here
- Keep the defaults in the Main Menu F1 , ensure you are running at 2400 baud.
- Save a BBS into the Addressbook F5, you can get some from here
- Surf the BBS very slowly...
The following is an example for connecting to a BBS using CCGMS Ultimate and UP9600 mode:
- Start the C64 core (please note that custom kernels may remove functionality required, if in doubt use the built in kernel).
- In the Mister C64 Menu Win+F12 , go to "Hardware", set the "Expansion" to "RS232", "RS232 Connection" to "Internal", "RS232 mode" to "UP9600" and save it.
- In the Mister System Menu Win+F12 set the "Uart Connection" to "Modem", Link to "TCP", Baud to "9600" and save it.
- Load CCGMS Ultimate from d64, available here
- Hit F7 key to access configuration page, then M to change the modem to "UP9600/EZ232", then B to set the baud speed to "9600". Save the config with the S key.
- Access the Phonebook with A key from the same configuration page, save some BBS addresses from here
- Enjoy the faster BBS experience.
Serial connection on Color Computer 3 (CoCo3)
The following is an example for connecting to a BBS using UltimaTerm 4.0:
- Start the CoCo3 core (use Multi-pak Slot 4 Disk or Slot 2 CoCoSDC)
- In the MiSTer System Menu Win+F12 set the "Uart Connection" to "Modem", Link to "TCP", Baud to "9600" and save it.
- Mount UltimaTerm DSK file, obtainable HERE
- Load UltimaTerm by issuing:
LOADM"ULTIMATE
- Hit Alt+O to open Options Menu, then M for Modem options. Use B to modify the baud rate (Left or Right arrows to change values) to 9600. The rest of the settings should be default (word length 8, parity none, stop bits 1, duplex full, terminal type ANSI).
- Save your changes with Alt+D then F1 key.
- Hit Alt+A to open Phonebook, add a BBS and dial away.
- Alternatively, you can dial directly by issuing an
ATDTBBS_Address:port
. Full UltimaTerm 4.0 Documentation HERE
Serial connection on Apple IIe
Apple IIe has serial support via implemented SuperSerial Card in Slot 2. While theoretically some programs may use up to 19200 baud, I found it to be more stable at 1200 and/or 2400 baud. Terminal programs tested : ACT - Apple Conference Terminal v.3.0.3 HERE
Practical Peripherals Communication Program for Apple II v.1.01 HERE
- Start the Apple IIe core
- In the MiSTer System Menu Win+F12 set the "Uart Connection" to "Modem", Link to "TCP", Baud to "1200" and save it.
- Load either of terminal programs listed above, both have intuitive menus and 80 column modes
- Configure the terminal's baud speed to match the one set earlier (e.g. 1200 baud, Word Length 8, Stop Bits 1, Parity None, SuperSerial Card Slot 2)
- Enter in terminal mode and ATDT your favorite BBS