6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Sun Oct 06, 2024 7:20 pm

All times are UTC




Post new topic Reply to topic  [ 7 posts ] 
Author Message
PostPosted: Fri May 25, 2007 3:13 am 
Offline

Joined: Wed Jan 22, 2003 6:54 am
Posts: 56
Location: Estados Unidos
The (old) datasheet specified that MLB was active (low) for the last 3 cycles of a RMW instruction. I have found experimentally that this is not the case, at least with the DEC zp opcode. MLB goes low on the dead cycle after the first data (read) cycle, stays low for the next cycle (write data), then goes high for the opcode fetch of the next cycle. That's a total of 2 cycles. According to the datasheet, MLB is supposed to go low when the instruction fetches the data to modify.

Can anyone confirm for me or clue me in?

_________________
Thanks for playing.
-- Lord Steve


Top
 Profile  
Reply with quote  
PostPosted: Fri May 25, 2007 9:58 pm 
Offline

Joined: Tue Mar 27, 2007 6:02 pm
Posts: 14
Location: Sevilla, España
lordsteve wrote:
The (old) datasheet specified that MLB was active (low) for the last 3 cycles of a RMW instruction. I have found experimentally that this is not the case, at least with the DEC zp opcode. MLB goes low on the dead cycle after the first data (read) cycle, stays low for the next cycle (write data), then goes high for the opcode fetch of the next cycle. That's a total of 2 cycles. According to the datasheet, MLB is supposed to go low when the instruction fetches the data to modify.

Can anyone confirm for me or clue me in?


Weird... but, could you use a DEC absolute to $00xx instead ?
(opcode $CE)

--Jorge.


Top
 Profile  
Reply with quote  
 Post subject: Maybe
PostPosted: Fri May 25, 2007 10:40 pm 
Offline

Joined: Wed Jan 22, 2003 6:54 am
Posts: 56
Location: Estados Unidos
I could do that, but it still wouldn't explain why DEC zp doesn't bring MLB down low when it fetches the data to modify.

Could someone confirm this on hardware?

_________________
Thanks for playing.
-- Lord Steve


Top
 Profile  
Reply with quote  
 Post subject: Re: Maybe
PostPosted: Sat May 26, 2007 1:12 am 
Offline

Joined: Tue Mar 27, 2007 6:02 pm
Posts: 14
Location: Sevilla, España
lordsteve wrote:
I could do that, but it still wouldn't explain why DEC zp doesn't bring MLB down low when it fetches the data to modify.

Could someone confirm this on hardware?


Does a DEC absolute $00xx do the same ?

--Jorge.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat May 26, 2007 4:58 am 
Offline

Joined: Sat Jan 04, 2003 10:03 pm
Posts: 1706
It does not matter if DEC doesn't drop MLB during the fetch, because it already owns the bus during the fetch. When the CPU relinguishes the bus for its internal operations, then it drops MLB so that no other processor uses the otherwise idle cycle, thus preventing potential changes to the read location.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat May 26, 2007 9:15 am 
Offline

Joined: Tue Mar 27, 2007 6:02 pm
Posts: 14
Location: Sevilla, España
kc5tja wrote:
It does not matter if DEC doesn't drop MLB during the fetch, because it already owns the bus during the fetch. When the CPU relinguishes the bus for its internal operations, then it drops MLB so that no other processor uses the otherwise idle cycle, thus preventing potential changes to the read location.


Good point.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat May 26, 2007 3:35 pm 
Offline

Joined: Sat Aug 31, 2002 12:33 pm
Posts: 64
Location: USA
>The (old) datasheet specified that MLB was active (low) for the last 3 >cycles of a RMW instruction. I have found experimentally that this is not >the case, at least with the DEC zp opcode. MLB goes low on the dead >cycle after the first data (read) cycle, stays low for the next cycle (write >data), then goes high for the opcode fetch of the next cycle. That's a >total of 2 cycles. According to the datasheet, MLB is supposed to go low >when the instruction fetches the data to modify.
Hi Everyone,

This doesn't seem right. MLB should go low during the first data-read.

Cheers,

Paul


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 7 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 16 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: