FORTH [...] doesn't look like the syntax is very intuitive to learn..
Fair enough, I admit it may seem alien. But if an experienced person were there and you could watch as they whipped up and tested some robot Forth, the light bulb would go on for you in a big way. I bet a live tutor would have you flying in short order. Hard to convey that except in person, though.
On the Microbot board they are double inverting Phi2 using 2 inverters in the LS14, In essence creating a 40ns delay line on that clock signal going to all chips that require it including the LS138 decoder, Can anybody think of a reason why they are doing that... Seems it would break some rules and possibly cause some overlap with Phi1 on the trailing end of Phi2...
Some extension of the trailing edge of Phi2, yes exactly. I haven't studied the wiring details but the delay would have been added to improve their timing margins. When the 6502 does a read cycle it records (latches) what's on the data bus data
at the end of Phase 2 (no added delay). If the device
being read (ie, driving the bus) continues driving the bus a few extra nanoseconds, that guarantees valid data remains until well after the 6502 has "taken the picture," as it were. There are actual spec's for all this, of course -- setup time, hold time etc, as shown on the data sheets for the devices in question. Hope that helps,
Jeff
ps- instead, it's also possible their concern was with a
write operation. It's more than I can explain at the moment, but the same general principle applies: the transmitting device needs to put valid data on the bus and the receiving device has to capture it -- all within mutually acceptable timing windows. The 'LS14 inverters delay the peripheral device but not the 6502. Presumably they thought the relative timing between them would be better with the peripheral device delayed.