| describe("MOSCIA Tests...", function(){ | describe("MOSCIA Tests...", function(){ | ||||
| var cia = new MOSCIA(); | |||||
| //var cia = new MOSCIA(); | |||||
| it("PD*/DD* Masking", function(){ | |||||
| let cia = new MOSCIA(); | |||||
| let pdaVal = 0x3C; | |||||
| let pdbVal = 0xC3; | |||||
| cia.onRead("PDA", (name, dda) => { | |||||
| if (dda < 255) | |||||
| cia.setPDA(pdaVal); | |||||
| }); | |||||
| cia.onRead("PDB", (name, ddb) => { | |||||
| if (ddb < 255) | |||||
| cia.setPDB(pdbVal); | |||||
| }); | |||||
| cia.RS = 0x02; | |||||
| cia.DATA = 0x00; | |||||
| cia.RS = 0x00; | |||||
| expect(cia.DATA).to.be.equal(pdaVal); | |||||
| cia.RS = 0x03; | |||||
| cia.DATA = 0x00; | |||||
| cia.RS = 0x01; | |||||
| expect(cia.DATA).to.be.equal(pdbVal); | |||||
| cia.RS = 0x02; | |||||
| cia.DATA = pdbVal; | |||||
| cia.RS = 0x00; | |||||
| cia.DATA = pdbVal; | |||||
| expect(cia.DATA).to.be.equal(0xFF); | |||||
| cia.RS = 0x03; | |||||
| cia.DATA = pdaVal; | |||||
| cia.RS = 0x01; | |||||
| cia.DATA = pdaVal; | |||||
| expect(cia.DATA).to.be.equal(0xFF); | |||||
| }); | |||||
| it("Serial IO", function(){ | it("Serial IO", function(){ | ||||
| let cia = new MOSCIA(); | |||||
| let Input = (i) => { | let Input = (i) => { | ||||
| cia.SP = i; | cia.SP = i; | ||||
| cia.CNT = 1; | cia.CNT = 1; |