| 199 | self.state = 'OP' |
| 200 | |
| 201 | def state_OP(self, mdio): |
| 202 | if self.opcode == -1: |
| 203 | if self.clause45: |
| 204 | st = ['ST (Clause 45)', 'ST 45'] |
| 205 | else: |
| 206 | st = ['ST (Clause 22)', 'ST 22'] |
| 207 | self.putff([2, st + ['ST', 'S']]) |
| 208 | self.ss_frame_field = self.samplenum |
| 209 | |
| 210 | if mdio: |
| 211 | self.opcode = 2 |
| 212 | else: |
| 213 | self.opcode = 0 |
| 214 | else: |
| 215 | if self.clause45: |
| 216 | self.state = 'PRTAD' |
| 217 | self.opcode += mdio |
| 218 | else: |
| 219 | if mdio == self.opcode: |
| 220 | self.op_invalid = 'invalid for Clause 22' |
| 221 | self.state = 'PRTAD' |
| 222 | |
| 223 | def state_PRTAD(self, mdio): |
| 224 | if self.portad == -1: |