Search found 1548 matches
- Mon Apr 28, 2025 5:23 pm
- Forum: Software & Programming
- Topic: Talking to the IPC: How do you do it from low level?
- Replies: 22
- Views: 496
Re: Talking to the IPC: How do you do it from low level?
Ah - I see someone replied in the time it was taking me to write my reply - lol.
- Mon Apr 28, 2025 5:23 pm
- Forum: Software & Programming
- Topic: Talking to the IPC: How do you do it from low level?
- Replies: 22
- Views: 496
Re: Talking to the IPC: How do you do it from low level?
For the IPC > ZX8302 the communication is similar:
;
; Send 8 bits
;
IPC_Send_8:
mov r5,#008H
jmp L0358
;
; Send 4 bits
;
IPC_Send_4:
swap a
mov r5,#004H
L0358:
rl a
mov r6,a
jb0 L0369
L035C:
in a,p2
jb7 L035C
movx @r0,a
anl p2,#07FH
movx @r0,a
orl p2,#080H
mov a,r6
djnz r5,L0358 ...
;
; Send 8 bits
;
IPC_Send_8:
mov r5,#008H
jmp L0358
;
; Send 4 bits
;
IPC_Send_4:
swap a
mov r5,#004H
L0358:
rl a
mov r6,a
jb0 L0369
L035C:
in a,p2
jb7 L035C
movx @r0,a
anl p2,#07FH
movx @r0,a
orl p2,#080H
mov a,r6
djnz r5,L0358 ...
- Mon Apr 28, 2025 5:00 pm
- Forum: Software & Programming
- Topic: Talking to the IPC: How do you do it from low level?
- Replies: 22
- Views: 496
Re: Talking to the IPC: How do you do it from low level?
Looking at the IPC code side - the ZX8302 has to send a 0 bit first - which is effectively dropped, and then the next bit, as either 0 or 1 is stored and rolled round into the nibble that's formed - the start of the loop to read bits coming from the ZX8302 is always waiting for that start bit of 0 ...
- Mon Apr 28, 2025 1:27 pm
- Forum: Software & Programming
- Topic: Talking to the IPC: How do you do it from low level?
- Replies: 22
- Views: 496
Re: Talking to the IPC: How do you do it from low level?
That's MCS 48 code - from the 8049 IPC.
I spent a good while dissasembling and reverse engineering the Hermes code, along with the original code - although someone has provided a really good commented version of that.
I spent a good while dissasembling and reverse engineering the Hermes code, along with the original code - although someone has provided a really good commented version of that.
- Mon Apr 28, 2025 1:25 pm
- Forum: QL Wiki
- Topic: CST Expander and other updates
- Replies: 16
- Views: 2287
Re: CST Expander and other updates
nothing to stop you adding 2 16K images together and making a 32K rom image - the QL's ROM scan logic will be looking for 16K ROM's anyway - so if you have 2 ROM's concatanated together to make a 32K then it will find both ROM's.
The only caveat with this - if the ROM images are less than 16K in ...
The only caveat with this - if the ROM images are less than 16K in ...
- Mon Apr 28, 2025 12:38 pm
- Forum: Software & Programming
- Topic: Talking to the IPC: How do you do it from low level?
- Replies: 22
- Views: 496
Re: Talking to the IPC: How do you do it from low level?
I think that sometimes the trick to add data register to itself to affect a shift may be done to set flag bits. Without looking it up - not sure what the rotate instruction would do regarding flags.
BaudX4 is literally 4 times the baud rate that's been set - so it's not the output of register ...
BaudX4 is literally 4 times the baud rate that's been set - so it's not the output of register ...
- Sun Apr 27, 2025 10:25 pm
- Forum: Software & Programming
- Topic: Talking to the IPC: How do you do it from low level?
- Replies: 22
- Views: 496
Re: Talking to the IPC: How do you do it from low level?
This may help a bit futher - from Nasta's write up on the ZX8302:
$18003 WRITE IPC Write:
Controls the IPC communication pin.
* There are several unknowns regarding this location. While only 1 bit is
significant and used to drive the COMDATA line, the masks used by the OS suggest
that 4 bits ...
$18003 WRITE IPC Write:
Controls the IPC communication pin.
* There are several unknowns regarding this location. While only 1 bit is
significant and used to drive the COMDATA line, the masks used by the OS suggest
that 4 bits ...
- Sun Apr 27, 2025 9:42 pm
- Forum: Software & Programming
- Topic: Talking to the IPC: How do you do it from low level?
- Replies: 22
- Views: 496
Re: Talking to the IPC: How do you do it from low level?
It's only one bit that really carries any data - and another that's used to signal when comms is ready.
From that other thread - I put up the basic sequence for the really low level side:
75 Send bit to IPC
76 ---------------
77
78 1. ZX start bit (COMDATA = 0)
79 2. IPC clock (COMCTL = 0, COMTL ...
From that other thread - I put up the basic sequence for the really low level side:
75 Send bit to IPC
76 ---------------
77
78 1. ZX start bit (COMDATA = 0)
79 2. IPC clock (COMCTL = 0, COMTL ...
- Sun Apr 27, 2025 5:03 pm
- Forum: QL Wiki
- Topic: CST Expander and other updates
- Replies: 16
- Views: 2287
Re: CST Expander and other updates
That's the CST unit - CST RAM Plus - it's a 512K memory expansion, plus 4 Eprom positions (upto 32K each I believe - sockets and additional components not usually fitted for these ROM positions) and an additional bay to take another expansion card.
https://qlwiki.theqlforum.com/doku.php?id=qlwiki ...
https://qlwiki.theqlforum.com/doku.php?id=qlwiki ...
- Sun Apr 27, 2025 8:47 am
- Forum: Hardware
- Topic: SOS My QL is dying
- Replies: 8
- Views: 281
Re: SOS My QL is dying
I'm wondering if you have an unstable voltage - is this machine still running with the 5v regulator? If it is, you could try replacing that - they are not soldered (usually) so it's a just a matter of opening the case, removing the screw that holds the regulator to the heatsink - and then do your ...