[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: DiversiDial working in Jace, almost 100%
Hey Tom!
Thanks for jumping in with some more details on this. I'm glad I'm not the only one stumped. Here's some updates:
1) If I configure ddial with zero cards, meaning console only, then the clock starts right away.
2) If I start ddial with a hayes micromodem (really just an altered copy of the SSC emulation with different status indicators) and then I let it sit for a couple of minutes or so (it doesn't matter if I connect or disconnect in the meantime) then the clock will EVENTUALLY start on its own.
The clock is imperative to the normal pulse and operation of ddial, I've discovered. If the clock doesn't work, then I/O doesn't get transferred among the connected nodes.
All that being said, it is totally possible to grab Jace source, build it and use ddial today. You can stick different hayes smartmodems in each slot and then run the ddial binary (using the brun option, F5) or you can boot the disk image and leave slot 6 with a disk controller card. Right now, each modem card has to be configured with a different port but if there is sufficient interest I can write a simple round-robin load balancer. There are, of course, other solutions for port load balancers already.
I considered that maybe the bug could be the ddial hayes driver and one workaround would be to provide a novation cat card. The cat docs are a bit... complicated... so I think my time would be better spent finishing the ramfactor slinky emulation.
I played with some other fun things, and am considering leaving them in the emulator source: For example I created an option to control how many CPU ticks are performed in each clock cycle. This lets you run the CPU faster without changing the video scanner. Since video updates are one of the more expensive aspects this does have some effect on overall speed even at top speed, at the expense of making the display jumpy.
-B
On Sunday, August 12, 2012 1:05:41 PM UTC-5, TomCh wrote:
> On Thursday, August 9, 2012 8:06:35 PM UTC+1, BLuRry wrote:
>
> > A little while ago I received an email asking for help with getting Jace to work with DiversiDial. Because Jace only has SSC (well, HAD) emulation it was a non-starter. DiversiDial only supports the Hayes Micromodem and Novation Cat cards. I looked at the spec for the Hayes card and found it was extremely similar to SSC, largely due to the fact it uses the same ACIA chip. The I/O ports work a little differently but after a lot of twiddling I finally have it working. A side effect of this is that the serial handling (inclusive of the SSC emulation as well) is WAY improved and you no longer have to press CTRL+RESET to force it to reset its connection after closing a telnet client.
>
> >
>
> >
>
> >
>
> > I have one open issue, which prevents it from being 100%: The first connection to DiversiDial is answered by the program but there is no response. It just sits there, and no messages from the host are sent over the wire (the program does not send any output even though it knows it connected.) If I disconnect and wait a few minutes for the connection to time-out in ddial, then it starts working 100%. I noticed that when it is working correctly, the time is counting minutes/seconds but when it is not working, the time is stopped.
>
> >
>
> >
>
> >
>
> > Does DiversiDial need a clock card to work properly? Are there any other known issues similar to this on the real hardware?
>
> >
>
> >
>
> >
>
> > -Brendan
>
>
>
> Impressive stuff, Brendan!
>
>
>
> I took a look at ddial a few years ago.
>
>
>
> AppleWin had a bug(?) where TAPEIN.b7 was floating. I pulled it high, which fixed the fast running timer. This doesn't sound like your problem, but my notes might be of interest:
>
> https://developer.berlios.de/bugs/?func=detailbug&bug_id=17055&group_id=6117
>
>
>
> There's also a frozen clock bug too (probably the IO isn't working correctly when in debugger trace mode):
>
> https://developer.berlios.de/bugs/?func=detailbug&bug_id=17758&group_id=6117
>
>
>
> Tom