Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
03/04/05 09:35
Read: times


 
#89078 - exceptions and rules
Responding to: ???'s previous message
I will quote the original "bible" from Intel - I believe, the clones' "bibles" will say the same (they seem to be pretty similar to the original one). Note, that documented bugs are not bugs anymore, they are features.
Bartosz Wucke said:
MOV SP,#SP, then push something ('51)

Page 1-13 up left says:
In devices that do not implement the Upper 128, if the SP points to Upper 128, PUSHed bytes are lost, and POPed are indeterminate.
My personal guesss would be, SP is either implemented as 7-bit, then it woudl wrap around to the lower memory; or as 256-bit, then it really would access the nonexistent upper 128 bytes, rather than SFR space.
Bartosz Wucke said:
Does RETI called outside interrupt work just like RET?

The only exception to RET is that it "restores the interrupt logic to accept additional interrupts at the same priority level as the one just processed" (page 2-65). While not processing an interrupt, the logic may be in indeterminate state as per what was the current interrupt priority level - but maybe the implementation solves this in some way? There is no easy way to test this one...
Bartosz Wucke said:
It seems PUSH+RET is the only available jump to a dynamically chosen address...?

You are certainly kidding? See JMP @A+DPTR...
Bartosz Wucke said:
MOV B,#0, DIV AB?

Page 2-42 is absolutely clear regarding this one: "Exception: If B had originally contained 00H, the values returned in the Accumulator and B-register will be undefined and the overflow flag will be set." (note: OV-flag is cleared otherwise!)
Bartosz Wucke said:
INC TL0 while running?

This one is a very good question. And more: What if the timer is configured as counter, and INCed when an edge is coming (hard to test)? And what if configured as counter in autoincrement mode and TL0 INCed while FFh, will it reload? Will it throw an interrupt?
Bartosz Wucke said:
Other A,ACC (XRL?)

These will work OK. Goes through ALU, so the sources have to be latched first.

While testing such nonsense "features" might seem useless, it might have some use if you need to distinguish the cores for some reason.

Jan Waclawek


List of 31 messages in thread
TopicAuthorDate
PUSH SP            01/01/70 00:00      
   8            01/01/70 00:00      
      8???????????????????????????????????            01/01/70 00:00      
         On jokes, reasons &al.            01/01/70 00:00      
            no, you don't            01/01/70 00:00      
   I do not know and do not think I should            01/01/70 00:00      
      Non-compliance?            01/01/70 00:00      
   Theory vs. practice            01/01/70 00:00      
      Jan is right: 7            01/01/70 00:00      
         I did not say 7!            01/01/70 00:00      
            Interesting            01/01/70 00:00      
               POP SP? :-)            01/01/70 00:00      
                  POP SP            01/01/70 00:00      
                     MOV SP,#SP            01/01/70 00:00      
                        exceptions and rules            01/01/70 00:00      
                           MOV A,ACC            01/01/70 00:00      
                              xxx a,acc            01/01/70 00:00      
                              if the "Bible says"...            01/01/70 00:00      
                     more interesting            01/01/70 00:00      
               Hmmm.... interesting indeed!            01/01/70 00:00      
         native doing            01/01/70 00:00      
         Makes sense to me            01/01/70 00:00      
            POP SP            01/01/70 00:00      
               Output of SP            01/01/70 00:00      
                  Simulators            01/01/70 00:00      
                     simulators give me 7 7            01/01/70 00:00      
                        7 7            01/01/70 00:00      
                        spent for which purpose            01/01/70 00:00      
                           Fun...            01/01/70 00:00      
                              Atmel and Philips            01/01/70 00:00      
                        SiLabs F120            01/01/70 00:00      

Back to Subject List