The following warnings occurred:
Warning [2] Undefined array key 12055 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 12060 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 12072 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 12075 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $thread - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $fid - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 12072 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 12075 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $theme - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $theme - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $lang - Line: 5 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 5 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Attempt to read property "messages_in_thread" on null - Line: 5 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 5 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks





HP 16C machine emulator?



#3

I am wondering how feasible it would be to write a CPU/machine emulator for the HP 16c that would execute the ROM from an actual 16C.

I know there are emulators available that emulate the functions of this device, but I'd like to work on a emulator for the hardware that would run the actual ROM image from the 16C.

I see a few problems here:

1. Need to extract a ROM image from a 16C.
2. Need to write an emulator for the CPU (Saturn?), display, keypad, etc.
3. Getting enough documentation to do #2.

I've written an emulator before, mainly one for a 80386 when I worked for Cyrix years ago. So I feel this is possible.

But I'm wondering about obtaining ROM images from a 16C. Are there service manuals available that document the pinout of the ROM such that a ROM could be extracted from a 16C and read-out? It seems like the 12C is similar in hardware design, so perhaps this could be tested on a donor 12C (cheaper to obtain) before trying it on a 16C ROM.

If anyone has info that would help me out, I'd appreciate it.

Also, any thoughts on the feasibility of this project?

Thanks,
--Anil


#4

Just to start the thread...

Hello;

I read many information about the Voyager that was posted here by some contributors, mostly by Tony Duel (Hey, Tony, where are you?), and I will reproduce them here: (O.K., Tony?)

"The original Voyagers contained 2 chips. The smaller one is a Nut CPU (similar to the CPU in the HP41 -- the data sheet gives the differences, mostly to do with voltage levels). As in the HP41, it contains the keyboard scanning logic. The larger chip is called R2D2 (ROM/RAM/Display Driver) [Seriously], and is what it says it is. As it contains the ROM, it is machine-specific. I'd always assumed that the third chip in the 15C was ROM/RAM, but I have no definite proof of this."

My question at that time was about a freaky 11C with more than 400 available program lines.

I also believe that hardware emulation IS feasible, possible and, if well designed, would run the ROM image for the emulated calculator. You face the same problems I faced before.

Another contributor that has dealt into the 41´s guts is Pavel Korensky. Mr. Cameron Paine wrote an HP16C emulator that runs on the Win-PC structure (runs a lot well!). If I am not wrong, Cameron wrote the code itself. The HP16C is mostly based on digital logic, so the emulator would use part of the digital resources already available in the processor and emulate special characteristics - operating stack, registers, program-line codes, etc.

Pavel found a very good microcontroler from ATMega that I believe has features enough to emulate most of the 16C. I believe another one to scan the keyboard and drive the LCD and the rest is a lot of sweat and time, knowledge, neural activity, time spent...

Let’s keep this thread... Come you all, Pavel, Tony, Cameron, any... Let's go for it.


#5

Hi Luiz,

Thanks for the information you provided.

I should probably clarify my desire a little bit. I'm interested in writing a software emulator for the HP 16C, not developing a hardware emulator. I see writing a emulation environment ofr the Nut CPU, RAM, ROM, keypad and display in some language like C++. Then I'd load a ROM image from a 16C and execute it. The LCD/keypad would be hooked up to some GUI like Windows or Pocket PC so you could run the emulator on popular platforms.

So where would I find data sheets on this Nut CPU and the R2D2 chip? Are they available on the net somewhere?

Thanks,
--Anil

P.S. I'll be out of town for a few days, so I may be late in responding to replies to this thread.

#6

You are correct Luiz. My software is a simulator, not an emulator. I considered emulation but rejected it primarily because of the intellectual property issues and secondarily because the Voyagers had no removable storage. I figured that any significant or reuasable program that exists for the 16C would be recorded on paper, not as a bitstream.

Anil's idea is an interesting one although I'm still leery of the IP situation. AFAIK, the ROM of the 16C has never been published; nor is it in the public domain. If he manages to suck the ROM out of the calculator he would have little use for the things I've learned about the behaviour of the calculator or the methods I've used to simulate them.

Anil, if you think I can be of assistance, don't hesitate to ask.

Cameron


Possibly Related Threads…
Thread Author Replies Views Last Post
  Bought a 16C to compensate a little Eelco Rouw 23 7,773 12-07-2013, 01:26 PM
Last Post: Eelco Rouw
  HP Prime : Galton's machine Mic 0 1,070 11-15-2013, 04:23 AM
Last Post: Mic
  Shiny new 16C! Keith Midson 7 2,495 10-27-2013, 02:22 AM
Last Post: Keith Midson
  Joys of eBay: HP-32S, HP-32SII, HP-42S, HP-16C, ... Sasu Mattila 7 2,464 09-23-2013, 04:39 PM
Last Post: Julián Miranda (Spain)
  HP-16C simulator fhub 12 3,409 06-30-2013, 10:14 PM
Last Post: Robert Prosperi
  Program for HP-16c... Leonid 9 2,956 06-07-2013, 08:51 PM
Last Post: David Hayden
  Convergence Dream Machine anetzer 11 3,084 04-12-2013, 07:16 AM
Last Post: David Hayden
  HP 11C/12C/15C/16C case Philippe Cairic 4 2,059 11-06-2012, 06:04 PM
Last Post: Matt Agajanian
  Understanding HP-16C integer division Jimi 18 5,035 10-16-2012, 09:13 PM
Last Post: Eddie W. Shore
  O.T. - A pristine machine Palmer O. Hanson, Jr. 4 1,597 08-08-2012, 12:16 AM
Last Post: Dave Shaffer (Arizona)

Forum Jump: