We're looking for your comments on how to best organize the wiki's content.

Talk:Suspension Chamber 2000

From 0x10c Wiki
(Redirected from Talk:SPC2000)
Jump to: navigation, search
Start a new discussion

Contents

Thread titleRepliesLast modified
Possible Error in Specification402:49, 8 June 2012
First page
First page
Next page
Next page
Last page
Last page

Possible Error in Specification

According to the description of GET_STATUS (A=0), the C register is set to 1 if the device is ready to trigger. However, in TRIGGER_DEVICE (A=2), it says that it triggers the device if register C is 0. Is this an error in the specification, or am I missing something?

Or, is it an intentional mistake, similar to the big-endianness of the device?

EternityCoder06:46, 6 June 2012

I don't think this is a mistake. In GET_STATUS, the C register is an output from the sleep cell to the DCPU. In TRIGGER_DEVICE, the C register is an input instead.

It just means that if you check the status of the sleep cell first, you have to clear C again before triggering it.

Musashiaharon01:31, 7 June 2012

Oh, I had thought, from the wording "Performs GET_STATUS, and if C is zero..." that it meant it would trigger if C was zero based on the result of GET_STATUS. I think you're right though.

EternityCoder06:30, 7 June 2012
 

Actually, I was just working on an emulator, and, when reviewing the spec, it says that it performs GET_STATUS, which means C becomes 1. A CPU has no notion of input or output. Just because C was used in an output in GET_STATUS, doesn't mean the device can't use it as an input also. It's set as an output by GET_STATUS, and it's used as an input for TRIGGER_DEVIC.

EternityCoder01:04, 8 June 2012

It looks like you're right. Quoting from spec, emphasis added:

0: GET_STATUS
Sets the C register to 1 if the SPC2000 is ready to trigger.
...
2: TRIGGER_DEVICE
Performs GET_STATUS, and if C is 0, triggers the SCP2000 [sic].
Musashiaharon02:49, 8 June 2012
 
 
 
First page
First page
Next page
Next page
Last page
Last page
Personal tools
Namespaces
Variants
Actions
Navigation
Community
Toolbox