Shift838 Posted February 8, 2016 Share Posted February 8, 2016 Have you ever wanted to get onto a BBS again but regret selling all your TI/Geneve Equipment ? Only have an emulator to play with ? Well I have your solution and I have been doing this for about 3 years now. I hammered out this procedure on the PC with the latest version of MAME. Latest version of MAME can be found HERE How to make a serial bridge with MAME and UDS or Modem device Required: UDS or Modem MAME Latest version TiImageTool (HERE) Null Modem cable Ooey GUI MESS Launcher (makes it easier - HERE) Communications port (I used a USB to serial) For typing this procedure I used MAME and emulated a Geneve 9640 and used PORT set at 4800 bps. Assuming you already have the above requirements. First my UDS10 configuration: *** Channel 1 Baudrate 4800, I/F Mode 4C, Flow 02 Port 00023 Connect Mode : D6 Auto increment source port disabled Remote IP Adr: --- none ---, Port XXXXXX Disconn Mode : 80 Disconn Time: 15:00 Flush Mode : 00 Tested with my UDS1100 Channel 1 Baudrate 4800, I/F Mode 4C, Flow 02 Port 00023 Connect Mode : D6 Send '+++' in Modem Mode enabled Show IP addr after 'RING' enabled Auto increment source port disabled Remote IP Adr: --- none ---, Port XXXXXX Disconn Mode : 00 Flush Mode : 00 1. Boot PC 2. Launch OoeyGUI MESS Launcher Make sure you have configured OOEYGUI with the correct directories for MAME, TIIMAGETool, etc. 3. Ensure your serial device is turned on (this is essential) 4. Load up your favorite configuration with Serial Bridge Enabled 5. Click Launch in OoeyGUI TiImageTool will load and then MAME will launch with the configured ROM you have selected. 6. Once the Geneve is loaded up press SCROLL Lock to Enable Partial Keyboard Emulation 7. Press TAB to bring up the MAME menu 8. Scroll to 'Machine Configuration' 9. Scroll to 'Serial cable pin configuration' 10. Use left or right arrows to select '8-20' 11. Press Escape twice to exit out of the MAME Menu 12. Press Scroll Lock again to Enable Full Keyboard Emulation 13. Launch your favorite communications program 14. Set the baud rate to match your device I have noticed on UDS devices you will have to restart the device by powering off the device ( at least in my case ) after you have set the baud rate (step #14) to get it to recognize it. 15. Good to dial out! Enjoy... Hope this helps some of you out there. Any question drop me a PM. 1 Quote Link to comment Share on other sites More sharing options...
Keatah Posted February 8, 2016 Share Posted February 8, 2016 I once did a setup with 2 emulated machines tied together with comm-o-comm. 1 Quote Link to comment Share on other sites More sharing options...
Shift838 Posted February 8, 2016 Author Share Posted February 8, 2016 I once did a setup with 2 emulated machines tied together with comm-o-comm. I have done that too. But I don't think Com0Com can be used in this serial bridge method that actually maps physical serial ports on the PC to be used inside MAME. 1 Quote Link to comment Share on other sites More sharing options...
+mizapf Posted February 8, 2016 Share Posted February 8, 2016 If you are adventurous, you could write another bridge that connects two emulated machines with each other. Or maybe two emulations on different hosts. You would (simply :-) ) have to implement the protocol that I described on Ninerpedia. The good thing about the bridge solution is that it is a separate program outside of MAME, connected via sockets, so anything else could step at its place. There is no need to have a real serial port beneath. Quote Link to comment Share on other sites More sharing options...
Shift838 Posted February 11, 2016 Author Share Posted February 11, 2016 (edited) I decided to do some more extensive testing with MAME and TiImageTools serial bridge. I dialed into HeatWave to test a few times tonight. I have found out with a UDS device and the serial bridge emulating a Geneve the optimum baud rate is 38400! I used PORT of course and it was fast...really fast! Screen refreshes, menus,etc. I tested with both ANSI Monochrome and ANSI Color. The monocrhome was twice as fast, but the color ANSI was still fast.. Hats off to Michael Zapf and his serial bridge! if I can figure out some good software to take a monitor capture I will get one posted. Any suggestions? Edited February 11, 2016 by Cschneider 1 Quote Link to comment Share on other sites More sharing options...
+Schmitzi Posted February 11, 2016 Share Posted February 11, 2016 . Hi, Is it possible maybe to have something like a "LAN bridge" ? Means, if I am using my Windows-PC with MESS, not to have to buy/use an UDS-10 for the "Serial Bridge", but to use my given TCP/IP-LAN-connection to connect the virtual Geneve to the internet ? Or is this to complicated, as it is a completely new product or so ? xXx Quote Link to comment Share on other sites More sharing options...
+mizapf Posted February 11, 2016 Share Posted February 11, 2016 I (or whoever) would have to write an emulation/simulation of the UDS-10. You still expect the external device to handle all the TCP/IP details, and you let it look like a serial connection to the TI or Geneve. So in the end, we would have to write a program that understands the serial bridge protocol, but which fully replaces the serial bridge. Quote Link to comment Share on other sites More sharing options...
wyerd Posted February 11, 2016 Share Posted February 11, 2016 if I can figure out some good software to take a monitor capture I will get one posted. Any suggestions? Have a look at the Snipping tool http://windows.microsoft.com/en-us/windows/use-snipping-tool-capture-screen-shots#1TC=windows-8 Quote Link to comment Share on other sites More sharing options...
+Schmitzi Posted February 11, 2016 Share Posted February 11, 2016 Have a look at the Snipping tool http://windows.microsoft.com/en-us/windows/use-snipping-tool-capture-screen-shots#1TC=windows-8 If you have Win7 or newer, klick Start-Button and enter "SNIP" ( If you don´t have a start-button, good luck or www.classsicshell.net ) Quote Link to comment Share on other sites More sharing options...
+Schmitzi Posted February 11, 2016 Share Posted February 11, 2016 I (or whoever) would have to write an emulation/simulation of the UDS-10. You still expect the external device to handle all the TCP/IP details, and you let it look like a serial connection to the TI or Geneve. So in the end, we would have to write a program that understands the serial bridge protocol, but which fully replaces the serial bridge. ah OK. So that is somehow about about the "Slip" from the other post, right ? If this would exist..... OR What, if the Serial-Bridge-Panel - which already connects the Virtual Geneve to the PC - just get´s an "Add-On", to "route" this serial traffic not to real COMx (where the UDS is), BUT somehow to LAN ? Quote Link to comment Share on other sites More sharing options...
+mizapf Posted February 11, 2016 Share Posted February 11, 2016 (edited) ah OK. So that is somehow about about the "Slip" from the other post, right ? If this would exist..... Networking support is usually organized in layers: - Transport layer (OSI 4): End-to-end protocols (TCP or UDP) - IP layer (OSI 3): Routing - MAC layer (OSI 1+2): access to the transmission medium The MAC layer on the PC is usually populated by device drivers like Ethernet driver, WLAN driver, Bluetooth etc. The SLIP driver is another instance of this layer, as is the PPP driver. The SLIP driver is to transmit the datagrams via a serial connection, and on the other side to receive them and to deliver the datagrams to the IP layer. The PPP driver is traditionally used for (serial) modem connections as well, but thanks to its special subprotocols for authentication, it is also used for DSL (as PPPoE, PPP over Ethernet). In order to get a full network support on the TI or Geneve you have to implement these layers. What I did in my TCPIP99 project is to write the SLIP driver, and to write a simple ICMP driver that lives in the IP layer as well which responds to Echo requests (sent by the "ping" program). The UDS-10 encasulates all those layers, with one side exiting through layer 1 as Ethernet, and another side entering on layer 4, accepting the contents to be transmitted, which are then packed into segments. What, if the Serial-Bridge-Panel - which already connects the Virtual Geneve to the PC - just get´s an "Add-On", to "route" this serial traffic not to real COMx (where the UDS is), BUT somehow to LAN ? What I said. Still, you need something on the Geneve side that provides the access via the transport layer, otherwise you are thinking about a TCP/IP implementation. Edited February 11, 2016 by mizapf 1 Quote Link to comment Share on other sites More sharing options...
Shift838 Posted February 11, 2016 Author Share Posted February 11, 2016 I was talking about a full monitor video capture. snipping tool works great for screenshots as I use it all the time. Quote Link to comment Share on other sites More sharing options...
Shift838 Posted February 11, 2016 Author Share Posted February 11, 2016 I suggested something similar a week ago about coding a new piece of the serial bridge to act as a virtual modem / UDS (so it would accept all the standard AT commands, etc). Receive all the commands and the PC see's it as a serial port. The products out there right now will not do the job we need for virtual serial devices. we would have to code our own. I don't know how much work it would be to add it to Michaels Serial Bridge since I do not know Java. Doing it in Java would make it cross platform i bet. or maybe even Python... 1 Quote Link to comment Share on other sites More sharing options...
+InsaneMultitasker Posted February 11, 2016 Share Posted February 11, 2016 Chris - which RS232 option are you using within PORT? I'm curious as I notice a few missing or out of place characters within your screenshot. When you test monochrome, be sure to also try the interrupt-based cable as it will give you real-time character reception versus handshaked reception. Quote Link to comment Share on other sites More sharing options...
Shift838 Posted February 11, 2016 Author Share Posted February 11, 2016 Chris - which RS232 option are you using within PORT? I'm curious as I notice a few missing or out of place characters within your screenshot. When you test monochrome, be sure to also try the interrupt-based cable as it will give you real-time character reception versus handshaked reception. i will need to check which option I chose but I think it was just the standard one. I have some more RJ45 to DB25 pin I can make cables for too. So am planning on doing some more testing with each of the serial options. Quote Link to comment Share on other sites More sharing options...
+InsaneMultitasker Posted February 11, 2016 Share Posted February 11, 2016 i will need to check which option I chose but I think it was just the standard one. I have some more RJ45 to DB25 pin I can make cables for too. So am planning on doing some more testing with each of the serial options. That makes sense; the default is hardware handshaking. Color @ 38400 will fail miserably without hardware handshaking, so the setup is obviously working 99.9% as expected. I am interested in your testing because I have been reviewing how to replace TIMXT's old serial code with my code from PORT. A different cable configuration may be in order to do so, I just don't have the time right now. When I want speed I choose ansi-mono with interrupt-based RS232. Quote Link to comment Share on other sites More sharing options...
Shift838 Posted February 12, 2016 Author Share Posted February 12, 2016 That makes sense; the default is hardware handshaking. Color @ 38400 will fail miserably without hardware handshaking, so the setup is obviously working 99.9% as expected. I am interested in your testing because I have been reviewing how to replace TIMXT's old serial code with my code from PORT. A different cable configuration may be in order to do so, I just don't have the time right now. When I want speed I choose ansi-mono with interrupt-based RS232. I checked exactly which option and it's: Hardware #1 (Jeff''s). I'll check the others in a bit and report back. Quote Link to comment Share on other sites More sharing options...
Shift838 Posted February 12, 2016 Author Share Posted February 12, 2016 (edited) An update on my UDS settings. I noticed that I was receiving double characters when connecting into my BBS on my TI via MAME and the UDS serial bridge. I have changed the 'Disconnect Mode' to "C0" to resolve the issue. Edited February 12, 2016 by Cschneider 1 Quote Link to comment Share on other sites More sharing options...
Shift838 Posted February 12, 2016 Author Share Posted February 12, 2016 The below link is a quick video of the serial bridge working as expected. HERE Quote Link to comment Share on other sites More sharing options...
+9640News Posted February 3, 2018 Share Posted February 3, 2018 Have you ever wanted to get onto a BBS again but regret selling all your TI/Geneve Equipment ? Only have an emulator to play with ? Well I have your solution and I have been doing this for about 3 years now. I hammered out this procedure on the PC with the latest version of MAME. Latest version of MAME can be found HERE How to make a serial bridge with MAME and UDS or Modem device Required: UDS or Modem MAME Latest version TiImageTool (HERE) Null Modem cable Ooey GUI MESS Launcher (makes it easier - HERE) Communications port (I used a USB to serial) For typing this procedure I used MAME and emulated a Geneve 9640 and used PORT set at 4800 bps. Assuming you already have the above requirements. First my UDS10 configuration: *** Channel 1 Baudrate 4800, I/F Mode 4C, Flow 02 Port 00023 Connect Mode : D6 Auto increment source port disabled Remote IP Adr: --- none ---, Port XXXXXX Disconn Mode : 80 Disconn Time: 15:00 Flush Mode : 00 Tested with my UDS1100 Channel 1 Baudrate 4800, I/F Mode 4C, Flow 02 Port 00023 Connect Mode : D6 Send '+++' in Modem Mode enabled Show IP addr after 'RING' enabled Auto increment source port disabled Remote IP Adr: --- none ---, Port XXXXXX Disconn Mode : 00 Flush Mode : 00 1. Boot PC 2. Launch OoeyGUI MESS Launcher Make sure you have configured OOEYGUI with the correct directories for MAME, TIIMAGETool, etc. 3. Ensure your serial device is turned on (this is essential) 4. Load up your favorite configuration with Serial Bridge Enabled 5. Click Launch in OoeyGUI TiImageTool will load and then MAME will launch with the configured ROM you have selected. 6. Once the Geneve is loaded up press SCROLL Lock to Enable Partial Keyboard Emulation 7. Press TAB to bring up the MAME menu 8. Scroll to 'Machine Configuration' 9. Scroll to 'Serial cable pin configuration' 10. Use left or right arrows to select '8-20' 11. Press Escape twice to exit out of the MAME Menu 12. Press Scroll Lock again to Enable Full Keyboard Emulation 13. Launch your favorite communications program 14. Set the baud rate to match your device I have noticed on UDS devices you will have to restart the device by powering off the device ( at least in my case ) after you have set the baud rate (step #14) to get it to recognize it. 15. Good to dial out! Enjoy... Hope this helps some of you out there. Any question drop me a PM. Ok, need some guidance here. I got my PCI--e card in last night and I have it connected to the Lantronix UDS-10 through COM1 at 38.4K. Putty recognizes it. The cable is a 9 pin serial to the 25 pin UDS connection. I go into tiimagetool directory and type the following: java -jar tiimagetool.jar bridge com1 I get a message containing the following: "Serial library missing, implementing gnu.io.SerialPort (like RXTX)" I then load MAME with the Geneve emulation with the machine configuration for the serial port 8-20. No communication. I suspect tiimagetool is not talking correctly. Suggestions? Beery Quote Link to comment Share on other sites More sharing options...
+9640News Posted February 3, 2018 Share Posted February 3, 2018 I should also indicate I am running Windows 10 64 bit. Quote Link to comment Share on other sites More sharing options...
+9640News Posted February 3, 2018 Share Posted February 3, 2018 I have tried also using OoeyGUI. The version I downloaded V1.1 appears to not be compatible with the latest version of MAME. Beery Quote Link to comment Share on other sites More sharing options...
Shift838 Posted February 3, 2018 Author Share Posted February 3, 2018 I should also indicate I am running Windows 10 64 bit. Since you are using 64bit, there are 2 or 3 files you need to replace for the library.. It's on the FTP site under my directory, but it seems the FTP is down still. I'm attaching it here. mfz-rxtx-2.2-20081207-win-x64.zip 1 Quote Link to comment Share on other sites More sharing options...
+mizapf Posted February 3, 2018 Share Posted February 3, 2018 (edited) I wonder whether you get RXTX running under Windows 10. Some weeks ago I had some heavy issues with RXTX; it just did not want to find any serial adapter. I contacted the last maintainer (indeed found him, and he's also German, and responding...), and I reported some issues that I found. The problem became apparent when my Java was upgraded to release 9 - the path of libraries has changed. Maybe this is only a problem in Linux, don't know. On that occasion, I found that the author had an OS query inside and a list with all previous Windows releases, but NOT including "Windows 10". I did not find enough time in the last weeks, but maybe now I can upload a new branch that contains the fixes. The maintainer said he was short on time right now, but I'm also a bit relunctant to start fixing other people's stuff... (I'm referring to the version of RXTX on Github, not on possibly patched versions.) Edited February 3, 2018 by mizapf Quote Link to comment Share on other sites More sharing options...
+9640News Posted February 3, 2018 Share Posted February 3, 2018 I already had those files. The newest version of MAME does not like the -serl1 option. And OoeyGUI has not been updated to work with the latest command line options for MAME. Not sure if there is another option for -serl1 or if it was abandoned. Beery Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.