HP-41CY emulation for NoV-64 (also for Halfnuts)



#6

Hi all,

Few months ago I published the NoV-64CY.HEX file which was intended to replicate HP-41CY functionality (at normal speed) using a NoV-64 module.

I only had a Coconut CX with me and the file worked as expected.

However, several users reported that the emulation doesn't work at all on Hafnuts.

Once I get back home I confirmed these reports. Regrettably some other personal issues prevented me for getting back to this issue until now.

The new version is available here.

This time I've brought both Coconut and Halfnut and tested it accordingly.

The emulation keeps the "RAM shadowing" feature of the CY (allowing any physical module to hide the RAM page(s) it occupies when inserted) as well as its unique Bank-switching scheme (PG01, PG10 & PG<> functions) of the W&W RAMBOX-64K.

Enjoy your 41's :-)

Cheers.


#7

Another milestone in your record Diego, you've squared the circle and then come back again! The 41 community ows you tons, so glad you're there!


#8

Thanks a lot for your kind words Ángel.

Believe me when I say that I'm most happy to offer to this awsome community a small part of the satisfactions received along these years.

I'm also aware that none of the projects I've built could have never reached a successful end without the cooperative and knowledge-sharing spirit of many HP enthusiasts; which list would be too long to post and, of course, includes yourself in the highest positions... :-)

Will keep on posting as new developments become available (stay tuned...)

Cheers from the (now sunny) Caribbean.

Diego.

#9

Hi Diego,

Just by curiosity, what was the cause of the failure with the halfnut machines? Is it related to what was discussed here ?

J-F


#10

Hi J-F,

In fact it wasn't.

There were two points in my previous code for NoV-64CY which caused the Halfnuts to fail.

The first one was a Phi2 sincronization on puse #32. Apparently, Halfnuts processor generates a slightly larger Phi clock pulse width. Which eventually causes its falling edge being erroneously detected generating a sinchro-glitch. From this point ahead the whole thing crashes.

The second one (may also be related to Phi pulses width) was detected after fixing the first. It looks like Halfnuts are a bit more critical regarding DATA and ISA timing.

So the new code needs to makes sure that both lines (when driven by the NoV-64) keep the appropriate level (H or L) along the whole Phase (from Phi2 rising edge to next Phi2 r.e.).

Coconuts are just "happy" if they find the correct level at Phi1 rising edge.

On my previous projects (Clonix, NoVRAM...) these lines were driven from Ph2 to Ph2 so they work as expected both with Coconuts and Halfnuts. But since I had to replicate the "RAM shadowing" feature of the CY I wrote a new output routine which shorten the presence of the ISA and DATA signals between pulses. Which, in the end, causes the failure.

The bug was fixed once the routine was recoded to allow both: RAM shadowing and signal presence along the whole phase length.

As usual things are far more easy when one goes down to the bit level... :-)

Best wishes.

Diego.


Possibly Related Threads...
Thread Author Replies Views Last Post
  HP-41 Clonix&NoV's SW Update. (For the non-Primer's guys out there... :-) Diego Diaz 21 4,729 11-13-2013, 09:00 AM
Last Post: Ángel Martin
  Last HP emulation, 32 & 01 Olivier De Smet 0 835 09-07-2013, 08:27 AM
Last Post: Olivier De Smet
  HP-41CL & NoV(-64): Race condition? Geir Isene 11 2,666 05-03-2013, 01:59 PM
Last Post: Diego Diaz
  HP 50G emulation for android Olivier De Smet 3 1,448 04-14-2013, 12:01 PM
Last Post: CompSystems
  Latest Clonix/NoV's SW update. Diego Diaz 5 1,706 02-15-2013, 12:12 PM
Last Post: Ángel Martin
  [Clonix/NOV] NoV-64 backwards compatibility Doug (NYC) 0 792 01-20-2013, 11:21 AM
Last Post: Doug (NYC)
  NOVRAM 64 / HEPAX bug? M. Joury 2 1,001 11-03-2012, 02:49 PM
Last Post: M. Joury
  Beta 41CL --> Best CL UTILs to burn in NoVRAM 64? Gene Wright 5 1,744 07-01-2012, 03:06 PM
Last Post: Matt Kernal
  NoVRAM 64 USB programmer Gene Wright 4 1,454 06-29-2012, 11:43 AM
Last Post: Diego Diaz.
  New HP71B emulation (go71b) Olivier De Smet 9 2,794 06-26-2012, 10:25 AM
Last Post: Jerry Raia

Forum Jump: