The following warnings occurred:
Warning [2] Undefined array key 241323 - 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 241323 - 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 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





Stupid idea of the day: 41-compatible watch



#2

So, having been inspired by the µWatch by Dave Jones, I've been considering the feasibility of a 41-compatible calculator watch.

The biggest problem I can see here is user interface, but the 41 isn't all bad in that regard - alpha can make up for shifting a lot of functions off of keys, given that you can XEQ anything, not just things that aren't mapped to keys.

Here's two mockups I've done by hand, one of how a 128x32 display (that Newhaven COG 128x32 LCD looks really interesting, albeit higher power consumption than I'd like) could work (and look good) while being 100% compatible with the 41, and one of how the keypad could be laid out (with the on, user, prgm, and alpha buttons being at the corners of the device, with the watch band in between them):

Ignore the width differences, those are mainly because of how I did the mockups separately. Odds are, the keypad would actually be a bit wider than the LCD.

The keypad layout is vaguely 15C-inspired (given that the keypad on this device needs to be wider than it is tall). Several of the functions listed (set, trg, mth, stt, prg, flg, and cmp) would bring up menus, which would display in the annunciator position, with set being a setup menu (with the fix/sci/eng settings, the trig modes, clock modes, and such). There'd be six buttons across with that layout, so my idea was to have six functions per menu. Although, SST/BST is in the wrong place for that if there's any multi-level menus... I put it there to approximate the 15C layout, but XEQ is probably more useful in the corner anyway with how typing heavy the machine will be.

Alpha is phone-style (42S menu-driven style just seems horrible to me), and I've got an idea for how to get every symbol that can be entered from the keyboard of a real 41 mapped to this keyboard, although I don't have that file with me.

The on button wouldn't actually act like an on button - it would alternate between CLOCK with CPU in RTC maintenance mode (which would also be reached after 1 minute of inactivity (that is, the calculator sitting in its waiting for key loop with no program running)), then calculator, then (if no buttons have been pressed in calculator) SW, then return to CLOCK. If the calculator is interacted with, pushing the on button would return to CLOCK directly. (This follows the behavior of the Casio calculator watches and their mode button, although they've got a few extra modes in there too (alarm set and dual time zone).)

Software-wise, I'm thinking, use a Nut emulator optimized for a small microcontroller. Performance won't be great (IIRC, uhmgawa said, for unoptimized C code, 5-6x a Voyager's performance on an 8 MHz AVR, re: Kinomi? So that'd be around 3x the speed of a 41, again before optimization), but I'm also thinking, do as much as possible to thunk out of the emulator to run things - especially functions that were built into the 41CX. The idea being, because it is a real emulator, synthetics and machine code would work, but no need to actually emulate the things that are not user-supplied (and therefore, user-supplied FOCAL and synthetics could run far faster, too).

The other thing is, obviously, to just do it all native, and not support machine code, which could enable far lower clocks and longer battery life, at the expense of what may be higher initial development effort (as the entire 41 system would need to be completely rewritten from scratch before the project could be considered "finished" (whereas an emulator approach could be "finished" with only minimal or even no thunking, and then improved with firmware updates later) - but lower effort in the long run, as the goal would be to rewrite almost all of the 41 system eventually anyway, leaving the Nut emulator solely for machine code).

I'll readily admit that I'm probably not the right person to even try such a project, but I kinda want to try.

Thoughts?

Edit: I should clarify, by the way, why I'm thinking 41 and not 42. The 41 UI seems to be better suited to the tiny screen of a watch, and the 41-family timekeeping functionality (right down to the HP-01's ability to perform mathematical operations on time) seems to be ideally suited to a watch with only minimal changes. Granted, the 41 can't take advantage of a graphic LCD, but the 42 needs a 131 px wide LCD, and this ain't 131 px wide.

Edited: 31 Mar 2013, 9:49 a.m.


Possibly Related Threads…
Thread Author Replies Views Last Post
  An amazing day: Giving a talk at HP about their calculators Geir Isene 9 4,444 12-16-2013, 06:14 PM
Last Post: aurelio
  HHC 2013 Day 2 Highlights Eddie W. Shore 6 2,484 09-23-2013, 04:03 PM
Last Post: Kimberly Thompson
  HHC 2013: Day 1 Highlights Eddie W. Shore 28 7,670 09-23-2013, 03:22 PM
Last Post: Brad Barton
  Happy Mother's Day! Eddie W. Shore 1 1,164 05-12-2013, 11:35 AM
Last Post: Walter B
  happy fibonacci day 5/8/13 Allen 8 2,774 05-09-2013, 01:48 AM
Last Post: Gerson W. Barbosa
  OT: Happy Pi Day! Eddie W. Shore 13 3,564 03-22-2013, 10:44 AM
Last Post: Les Koller
  Totally OT ... Pi Day for my car Maximilian Hohmann 18 4,813 03-10-2013, 01:15 PM
Last Post: chris smith
  Idea for a 41C rom of "big" programs Gene Wright 7 2,360 10-05-2012, 04:29 AM
Last Post: Mike (Stgt)
  39GII -> 50G idea bluesun08 14 3,667 08-19-2012, 12:03 AM
Last Post: Dave Shaffer (Arizona)
  [OT] Happy Father's Day! Les Wright 7 2,346 06-18-2012, 07:54 AM
Last Post: Andrés C. Rodríguez (Argentina)

Forum Jump: