[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Update on Apple II rev 0 replica kits



The 6502 Hardware manual states that if powered on without reset, "the contents of the latches, registers, etc. is totally random after power is applied".

There is a clear input on the 74LS259 that controls graphics modes. This driven by the 74LS00 at location A2. I suspect that the 74LS259 powers up faster than the heavily loaded output of the 74ls00, so that the outputs of the 74ls259 end up powering up in low state, resulting in text mode. Note that later rev boards that have problems in the processor section, also power up in text mode. See my repair page for an example screenshot.

Regards,
Mike Willegal

www.willegal.net


Bryan Parkoff wrote:
Mike,


Power up without reset results in a random text filled screen and no prompt. Actual display depends on what state memory comes up in. My experience is that the screen is mostly filled with the same inverse character, with a few oddballs spotted around. I am unsure of what the processor is doing - it would take a logic analyzer to determine if it normally processes instructions, without a proper reset, or just hangs. I suspect you could simulate the display simply by holding down reset when powering up a later rev board.


I am surprised. It can't be right for rev 0. After power-up, random 16 colored LO-RES blocks should be displayed in the screen. Why? All softswitches are always turned off (or all individual softswitch's bit is zero) after power-up. It is the same example. The internal registers like Accumulator, Index X, Y, Stack Pointer, and PC inside MPU are always set to zero after power-up. It is possible that MPU continues to process the first instruction at PC = $0000. It may process BRK, push low/high PC and flags into stack and pop them out of stack at endless loop. Nothing changes. It may be possible that zero page might contain random HEX code after power up. I suppose that all RAM chips should always fill "FF" or "00" in all $00 page through $BF page. After you hit RESET, MPU starts to read $FFFC - $FFFD and store two bytes into low / high PC. Then, the start-up routine at $FF59 initializes to turn off LO-RES and turn on TEXT and fill information into zero page. Monitor prompt is ready for you to type. Surprise? The start-up routine does not set $FF to stack pointer. Low PC is pushed into stack -- $0100. The stack pointer decrements from $00 to $FF. High PC is pushed into stack -- $01FF. The stack pointer decrements from $FF to $FE.

Bryan Parkoff