Hi guys,

I was trying to play serpentine and I noticed that it would hang. I tried every image I could find and it still would freeze.

So I fired up the debugger and it seems to cycle on a loop reading c060 which is the cassette input port. If I peek (49248) I always get a value of 0. Just to experiment, I changed it to return some random "noise" and it seems to run.

It must use it for some kind of random number generator. Clearly 0-127 is perhaps too much noise I'll see if a small value like 0-15 will work.

I just tried rand()%15 and it seems to work fine.

Yes! What a great game!

Code
READ8_MEMBER(apple2_state::flags_r)
{
	// Y output of 74LS251 at H14 read as D7
	switch (offset)
	{
	case 0: // cassette in
		return m_cassette->input() > 0.0 ? 0x80 : rand()%15;

Code
http://www.kreativekorp.com/miscpages/a2info/iomemory.shtml

Comp:  O = Apple II+  E = Apple IIe  C = Apple IIc  G = Apple IIgs
Act:   R = Read       W = Write      7 = Bit 7      V = Value


C060 49248 TAPEIN       OE    R7  Read Cassette Input
                          C   R7  Status of 80/40 Column Switch
           BUTN3           G  R7  Switch Input 3