Hermes status

Nagging hardware related question? Post here!
Derek_Stewart
Font of All Knowledge
Posts: 3928
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: Hermes status

Post by Derek_Stewart »

I have been repairing a QL board, which is now working. It has a NEC D8749HC installed see picture below:
NEC D8749HC
NEC D8749HC
Which the Hemes function IPCVER$ returns 0.0

According to the Hermes manual, this means it is non-Hermes.

I am assuming the NEC D8749HC emulates the 8049 and is not updatable.


Regards,

Derek
Silvester
Gold Card
Posts: 436
Joined: Thu Dec 12, 2013 10:14 am
Location: UK

Re: Hermes status

Post by Silvester »

That's intriguing, it's dated 1987 so may have been programmed by user (8749HC windowless One Time Program chip). But why not just use 8049 that came with QL?, perhaps modified for some reason (my Schon IPC variation was 8049). Be interesting if you can get binary dump and see if it differs from known code.


David
Derek_Stewart
Font of All Knowledge
Posts: 3928
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: Hermes status

Post by Derek_Stewart »

Silvester wrote:That's intriguing, it's dated 1987 so may have been programmed by user (8749HC windowless One Time Program chip). But why not just use 8049 that came with QL?, perhaps modified for some reason (my Schon IPC variation was 8049). Be interesting if you can get binary dump and see if it differs from known code.
Hi,

Here is a binary image of the NEC D8749HC
NEC_D8749HC.zip
NEC D8749HC IPC
(1.42 KiB) Downloaded 89 times


Regards,

Derek
User avatar
Ruptor
Gold Card
Posts: 418
Joined: Fri Dec 20, 2019 2:23 pm
Location: London

Re: Hermes status

Post by Ruptor »

Derek_Stewart wrote:Here is a binary image of the NEC D8749HC
Where is the original IPC bin file all I can find is asm? I can do a bin file comparison as an exercise for the student on my complicated programmer software to learn how to work it. :)


Derek_Stewart
Font of All Knowledge
Posts: 3928
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: Hermes status

Post by Derek_Stewart »

Hi,

I do not think there is a 8049 binary file, my ALL03A programmer does not have a 8049 entry in the software, but the NEC D8749H entry reads the 8049 IPC. On saying that the NEC D8749HC reports IPCVER$ as 0.0 which is a non-Hermes IPC.


Regards,

Derek
User avatar
Ruptor
Gold Card
Posts: 418
Joined: Fri Dec 20, 2019 2:23 pm
Location: London

Re: Hermes status

Post by Ruptor »

Derek_Stewart wrote:I do not think there is a 8049 binary file, my ALL03A programmer does not have a 8049 entry in the software, but the NEC D8749H entry reads the 8049 IPC. On saying that the NEC D8749HC reports IPCVER$ as 0.0 which is a non-Hermes IPC.
My poor little brain is confused. :? Are you saying your previous dump of 8749 is wrong? If you can read the 8049 we would have a dump of it that could be tested in an 8749. We could also compare it with the 8749 dump. In the previous 8749 image I noticed there was a byte at 07F1H with value 07H out on its own in the last block. In the Hermes22 dump the values at 07F0H & 07F1H are 02H & 14H. I don't know the 8749 chips so they could be vectors but usually in assembler people put data like version numbers at the end of code.
I did a quick compare of your 8749 code & the Hermes22 dump and I can't see anything that matches but since it only takes a one byte move to change all the addresses etc it would probably require a lot of study to find bits that do the same job with different numbers. :)


User avatar
Pr0f
QL Wafer Drive
Posts: 1298
Joined: Thu Oct 12, 2017 9:54 am

Re: Hermes status

Post by Pr0f »

The 8049 should be readable using 8049/8749 using the HiLo programmer.

However there is an IPC project on GitHub I think, which has a binary file with it.

I compared that with the one Derek put up on the thread - and for the most part it would seem to be the same source, but there is an additional block of code and some earlier addresses are changed (probably jumps with changed addresses) - ignore the message about length - the one from github doesn't have the trailing zero's to make the file 2K in size - but I have checked with hed editor and the file from Derek is all 0's from the last code location on to the end of the 2K image.


These are the changed locations:

00000283: B4 D4 - original IPC code: 0283: B4 C8 CALL $5C8 scan keyboard, entry A (one bit=1), ret A
00000507: B4 D4 - originalIPC code: 0507: B4 C8 CALL $5C8 scan keyboard, entry A (one bit=1), ret A
0000052D: B4 D4 - original IPC code: 052D: B4 C8 CALL $5C8 scan keyboard, entry A (one bit=1), ret A
000005CC: 00 C4
000005CD: 00 80

C480 are 2 new bytes in this routine:

; scan keyboard, entry A (one bit=1), ret A
05C8: 39 OUTL P1,A output A on P1
05C9: AB MOV R3,A
05CA: 80 MOVX A,@R0 put P0 in read mode=HI-Z ??
05CB: 00 NOP wait a bit
05CC: 00 NOP
05CD: 00 NOP
05CE: 00 NOP
05CF: 00 NOP
05D0: 00 NOP
05D1: 08 IN A,P0 get P0 into A
05D2: 93 RETR


And there is all new code from 680 onwards to 6D3, which I presume is linked from the changes above.

It looks as if the changes are all related to keyboard workings.
Attachments
ipc_diff.zip
(450 Bytes) Downloaded 65 times
Last edited by Pr0f on Sun Oct 03, 2021 2:13 pm, edited 1 time in total.


User avatar
Ruptor
Gold Card
Posts: 418
Joined: Fri Dec 20, 2019 2:23 pm
Location: London

Re: Hermes status

Post by Ruptor »

Pr0f wrote:I have checked with hed editor and the file from Derek is all 0's from the last code location on to the end of the 2K image.
Don't you see something in 07F1H?


User avatar
Pr0f
QL Wafer Drive
Posts: 1298
Joined: Thu Oct 12, 2017 9:54 am

Re: Hermes status

Post by Pr0f »

Ruptor wrote:
Pr0f wrote:I have checked with hed editor and the file from Derek is all 0's from the last code location on to the end of the 2K image.
Don't you see something in 07F1H?
you are right - 07 hex is there - I missed that.


Silvester
Gold Card
Posts: 436
Joined: Thu Dec 12, 2013 10:14 am
Location: UK

Re: Hermes status

Post by Silvester »

Derek_Stewart wrote:Here is a binary image of the NEC D8749HC
Thanks.
Derek_Stewart wrote:I do not think there is a 8049 binary file
Just did some digging through my QL filing system and I can't find where I got the 8049 binary from myself (it's so long ago, nothing found on Dilwyn or Thierry Godefroy's sites - no binary, just the listing). I may even have been guilty of reconstituting the copy I have. I'm in the middle of building MCS-48 programmer for my QL, I also want to read the Schon keyboard IPC version (keybounced, no SER2) and Schon PS/2 keyboard interface 8049.


David
Post Reply