Previous Thread
Next Thread
Print Thread
Page 16 of 19 1 2 14 15 16 17 18 19
Edstrom #120081 11/23/21 07:15 PM
Joined: May 2012
Posts: 555
Likes: 1
S
Senior Member
Offline
Senior Member
S
Joined: May 2012
Posts: 555
Likes: 1
I've been working on hcpu30, and managed to make it boot native Unix into multiuser, but it doesn't run for long. Linux port stops responding after going multiuser.

This Unix needs 1K-sector disks and nscsihd doesn't expect this -- the buffer is 512 bytes long :-)

Edstrom #120082 11/23/21 07:28 PM
Joined: Mar 2001
Posts: 16,923
Likes: 57
R
Very Senior Member
Offline
Very Senior Member
R
Joined: Mar 2001
Posts: 16,923
Likes: 57
Heh! I've added support for non-512-byte sectors in various places in MAME, but it was generally because of 256 byte sectors, not 1K :-)

Luigi30 #120084 11/23/21 08:27 PM
Joined: Jan 2011
Posts: 251
Likes: 3
Senior Member
Offline
Senior Member
Joined: Jan 2011
Posts: 251
Likes: 3
Originally Posted by Luigi30
Yeah, the disk controller I have is an MVME320/A (a 3X805-based scheduler with a WD floppy controller) so that’s what I’d be using. I’ve also got a DRAM expansion board and a Rastergraf TMS34010 video/mouse/keyboard card to add.
I just pushed an original set of 340x0 tools floppies to http://bitsavers.org/components/ti/TMS340xx/

Al Kossow #120088 11/24/21 09:38 PM
Joined: Nov 2018
Posts: 9
J
Member
Offline
Member
J
Joined: Nov 2018
Posts: 9
Thanks, Al.

I've got a Peritek VCU-V/16 board with a TMS34020 (similar to this board).
Unfortunately, it didn't come with firmware EPROMS. Probably robbed by the surplus parts goblins back when I bought it.

Anyway, I've got it loading custom firmware using the toolchain from bitsavers plus a bit of custom ROM-generating code to massage the output of the GSP tools in just the right way. I can single-step through my code up until it accesses the serial port, which is waiting for terminal input. I may put the project on github if anyone is interested.

I did have a question for the MAME experts here apropos terminals on graphics boards. How do I connect to the rs232 port I defined for the SCN2681? Searching shows there's a '-rs232' command, but the current build (or mine) doesn't acknowledge that flag at all. I've scoured the googles and it appears you must build the console into your app, which I did. But that seems to conflict with also having a graphics display. I haven't found an example (yet) that has both a terminal port and graphics. MAME gets confused with having two displays. Yeah, I'm probably doing it wrong. smile
I was hoping for a way to telnet to the device or somehow use minicom through a virtual terminal device.)

I also have an MVME-167 board. It would be interesting to get some kind of unix running on it with X using this graphics board.

Edstrom #120089 11/24/21 10:14 PM
Joined: Mar 2001
Posts: 16,923
Likes: 57
R
Very Senior Member
Offline
Very Senior Member
R
Joined: Mar 2001
Posts: 16,923
Likes: 57
MAME supports multiple (emulated) monitors, so the built-in serial terminal can coexist with your board's graphics display. If you use -numscreens 2 they'll appear in separate windows, otherwise MAME will put them side-by-side in a double-wide window.

For the hookup, you'll need to add an rs232 device, route the necessary signals between it and the UART device, and specify "terminal" for the last parameter. Look at the ht68k.cpp driver for a minimal working terminal hookup to an MC68681 (which for hookup purposes is the same as the SCN2681).

Edstrom #120091 11/25/21 01:19 AM
Joined: Feb 2004
Posts: 2,383
Likes: 98
Very Senior Member
Offline
Very Senior Member
Joined: Feb 2004
Posts: 2,383
Likes: 98
You need to put the -rs232 option after the system name.

Edstrom #120092 11/25/21 02:56 AM
Joined: Nov 2018
Posts: 9
J
Member
Offline
Member
J
Joined: Nov 2018
Posts: 9
Thanks, that was very helpful. I now have a a working text console. Woot!

One unexpected thing when I started was that the terminal window needed to have the baud configured. Yeah, I should have expected full serial emulation for MAME smile I was able to fix it partly with this:

DEVICE_INPUT_DEFAULTS_START( terminal )
DEVICE_INPUT_DEFAULTS( "RS232_RXBAUD", 0xff, RS232_BAUD_38400)
DEVICE_INPUT_DEFAULTS( "RS232_TXBAUD", 0xff, RS232_BAUD_38400)
DEVICE_INPUT_DEFAULTS( "RS232_DATABITS", 0xff, RS232_DATABITS_8 )
DEVICE_INPUT_DEFAULTS( "RS232_PARITY", 0xff, RS232_PARITY_NONE )
DEVICE_INPUT_DEFAULTS( "RS232_STOPBITS", 0xff, RS232_STOPBITS_1 )
DEVICE_INPUT_DEFAULTS_END


It looks like this worked, but the 2681's Rx seems to be stuck at 9600, so terminal input is garbled. It's possible my 2681 code is only configuring the Tx baud rate, but this works on real hardware at 38.4k. I vaguely recall the real hardware has automatic rate detection. Maybe that's different here. More debugging...

Edstrom #120093 11/25/21 03:44 AM
Joined: Mar 2001
Posts: 16,923
Likes: 57
R
Very Senior Member
Offline
Very Senior Member
R
Joined: Mar 2001
Posts: 16,923
Likes: 57
We don't support automatic rate detection, so the baud has to match what the 2681 was programmed for smile

Al Kossow #120099 11/26/21 02:18 PM
Joined: May 2005
Posts: 46
Likes: 24
L
Member
Offline
Member
L
Joined: May 2005
Posts: 46
Likes: 24
Yeah, I whipped up a C library for it and had it doing raycasting a while back. Slow!

R. Belmont #120177 12/13/21 08:09 PM
Joined: Aug 2015
Posts: 405
Edstrom Offline OP
Senior Member
OP Offline
Senior Member
Joined: Aug 2015
Posts: 405
I tried out a version of the miniforce.cpp and commented out the CPU card and there were no angry fans due to angry scheduler. I'll try it a bit more and I guess I could implement something that just eats some cycles in the case you start without a CPU. I could easily use the HUD to slot in the CPU and then reset the machine and it started as it should.

Originally Posted by R. Belmont
MAME's core started out where it couldn't do a bare slot bus where one or more of the cards are bus masters. I don't *think* that's true anymore and you could now create a driver where all it does is host VME slots (or S-100 or whatever), but I haven't tried it either. I do suspect in the degenerate case where you run a bare slot bus with no cards and no CPUs the scheduler would still get angry.

While fiddling with this I found that the fccpu20.cpp default rom is for a Force 32 system as it is accessing a Force ISCSI board, same as for booting Besta, which wasn't around when the Miniforce was so I am going to add a force32.cpp as a chassi with another set of boards as default and maybe a generic driver/vme.cpp with a number of slots where all the loose VME boards could live until a proper system description is found/implemented for them.

Another thing also occured and that is I need a way to set the default rom from the chassi driver on the CPU board to support the system, eg the focus32.cpp have another rom configured on the fccpu20.cpp compared to miniforce.cpp They both boots PDOS but using different disk controller cards which is hard coded into the roms.


Because I can
Page 16 of 19 1 2 14 15 16 17 18 19

Link Copied to Clipboard
Who's Online Now
2 members (Yash Anand, 1 invisible), 24 guests, and 3 robots.
Key: Admin, Global Mod, Mod
ShoutChat
Comment Guidelines: Do post respectful and insightful comments. Don't flame, hate, spam.
Forum Statistics
Forums9
Topics9,103
Posts119,274
Members5,019
Most Online890
Jan 17th, 2020
Our Sponsor
These forums are sponsored by Superior Solitaire, an ad-free card game collection for macOS and iOS. Download it today!

Superior Solitaire
Forum hosted by www.retrogamesformac.com