Model: 49G [ Note: This sheet is adapted from the 48GX. Items marked with * are suspected to be wrong and are not yet updated. General: Name: Graphing Calculator Code-Name: V'Ger Family: Charlemange Logic: RPL, algebraic, CAS Features: scientific, programmable, clock, alarms date arithmetic, hyperbolics, complex base w/arithmetic, matrix, vector, lists, solver (algebraic, program), symbolic math, symbolic integration, differentiation, plotting, graphics, etc., etc. Firsts: CAS, rubber keys, use of flash, use of field upgradability, CUT/COPY/PASTE/FIND-REPLACE, TOOL, downloadable fonts Introduction: Date: 2003-10-20 Price: ? Discontinuation: Date: ? Price: ? Production-Run: ? Display: Type: LCD, bit-mapped Size: 8 lines x 22 chars, 64 x 131 pixels Number-Formats: sign, 12 mantissa, ., exp sign, 2 exp see data types Annunciators: <\ left shift active /> right shift active \Ga alpha keyboard active ((.)) alarm has gone off or low battery hourglass busy /\ --> transmitting data \/ the following ones are in the message area: DEG degress mode RAD radians mode GRD grads mode XYZ rectangular mode R\<)Z polar/cylindrical mode R\<)\<) polar/spherical mode HEX hexadecimal mode (default base for DEC decimal mode binary integers) OCT octal mode BIN binary mode R real mode (CAS) C complex mode = symbolic (exact) mode ~ numeric (approximate) mode 'X' variable in VX ALG algebraic mode PRG program entry mode {...} current directory (replaces ...) 1US user mode for one keystroke USR user keyboard mode HLT program has been halted Data: User-Visible: Smallest: 1E-499 Largest: 9.99999999999E499 Signif.-Digits: 12 Internal: Smallest: 1E-49999 Largest: 9.99999999999999E49999 Signif.-Digits: 15 Data-Types-and-Sizes: type object size (bytes) display as 0 real number 10.5 1.2345 1 complex number 18.5 (6.7,8.9) (6.7,\<)8.9) 2 string 5 +length "XYZ" or $C 5 hello 3 real array 7.5+8*elements [ 9. 8. 7. ] 4 complex array 7.5+16*elements [ (1,2) (3,4) ] 5 list 5+2.5*elements+ { "FIN" Name } element storage 6 global name 5 + length X 7 local name 5 + length j 8 program as list \<< Z 4 * \>> 9 algebraic as list 'A=B-3' 10 binary integer 10.5 # 1010b 1-64 bits # 765o # 987d # FEDh 11 graphics object 10 + data Graphic 131 x 64 header 2.5 GROB 4 4 70607050 length 2.5 height 2.5 width 2.5 data <as required> 12 tagged object 5+tag+object area: 4.8 (tags can be applied to any object) :area: 2.3 13 unit object 7.5 plus: 55 km/s^2 Real magnitude:10.5 (2.5 if built-in) Prefixes: 6 Unit Names: 5 + no. chars Operators: (*,/ or ^): 2.5 Exponents: 10.5 (2.5 if built-in) 14 XLIB name 5.5 XLIB 645 2 15 directory as list DIR ... END 16 library ? Library 645: ... 17 backup object 5 + no. of Backup HOMEDIR name chars + included object 18 built-in function 2.5 COS 19 built-in command 2.5 ROLL 20 address 5 <28FCh> 21 long real 13 Long Real 22 long complex 23.5 Long Complex 23 linked array ? Linked Array 24 character 3.5 Character 25 code ? Code 26 library data ? Library Data The sizes are guesses. 27 FlashPtr ? FlashPtr 27 External ? External 27 Extended Ptr ? Extended Ptr 28 Integer ? 2 29 Object Array (unofficial) [[2 3][4 5]] same internal structure as 5, just a different prologue; this type was added to support symbolic matrices 30 Font ? Ft8_6:Cursive 1 Memory: Named-Registers: none Flags: 128-1 user flags *flags need to be updated 60 units type 61 units usage 63 variable state change -1 principal solution only -2 symbolic constants -3 numeric results -5 to -10 binary word size -11 to -12 base 0)decimal 1)octal 2)binary 3)hex -14 TVM payment mode -15 to -16 coordinates 0)rectangular 2)cylindrical 3)spherical -17 to -18 trig mode 0)degrees 1)radians 2)grads -19 vector/complex -20 underflow is error -21 overflow is error -22 infinite not an error -23 there was positive underflow -24 there was negative underflow -25 there was overflow -26 there was infinite -27 symbolic decompilation -28 plotting multiple functions -29 trace mode -31 disable curve filling -32 graphics cursor dark background -33 I/O to I/R -34 print to serial -35 I/O is binary format -36 receive overwrite variable -37 double-spaced print -38 supress line feed -39 supress Kermit messages -40 display clock -41 24 hour format -42 DD.MM.YY format -43 don't reschedule repeating alarms -44 save acknowledged alarms -45 to -48 set number of digits -49 to -50 display format 0)STD 1)SCI 2)FIX 3)ENG -51 fraction mark comma -52 multi-line object display -53 display () to mark precedence -54 tiny array elements -55 save last arguments -56 beep off -57 alarm beep off -58 verbose messages off -59 fast catalog display -60 alpha key once to lock -61 user key once to lock -62 user mode active -63 vectored enter on -64 set by GETI and PUTI when indices wrap From Joe Horn: -65 Default=Clear: All stack levels can be multi-line. Set: Only level 1 can be multi-line (like HP48). -66 Default=Clear: Strings with newlines display multi-line. Set: Strings always display on one line (like HP48). -67 Default=Clear: If clock is on, use abbreviated digital display. Set: If clock is on, use tiny analog clockface. Note: If clock is on and the header is size 1 or 0, then you will not see the clock but it will still be using extra battery power! So turn off the clock (-40 CF) when the header size is not 2. -68 Default=Clear: Command-line editing like HP48 (no auto-indent). Set: Command-line editing uses auto-indenting like a real editor! -69 Default=Clear: Cursor is restricted to text (like HP48). Set: Cursor can go anywhere on the screen. -70 Default=Clear: ->GROB turns newlines into blobs (like HP48). Set: ->GROB turns strings with newlines into multi-line grobs. -71 Default=Clear: Disassembler includes addresses. Set: Disassembler creates labels instead of addresses. -72 Default=Clear: Stack is displayed with current system font. Set: Stack is displayed with mini-font. -73 Default=Clear: Command line editing uses current system font. Set: Command line editing uses mini-font. -74 Default=Clear: Stack contents are right-justified (like HP48). Set: Stack is left-justified. -75 Default=Clear: Silent keyboard (like HP48). Set: Each keystroke "clicks" (high, brief chirp from beeper). Note: When beeper is turned off (-56 SF), keyboard goes silent. -76 Default=Clear: Filer asks "Are you sure?" when purging. Set: No purge confirmation in Filer. Note: The regular PURGE command never asks! You've been warned! -77 Default=Clear: ? Perhaps unused. Set: ? -78 Default=Clear: ? Perhaps unused. Set: ? -79 Default=Clear: Textbook-style algebraics on stack. Set: Show algebraics on stack HP48-style. -80 Default=Clear: Use current system font for algebraics on stack. Set: Use mini-font for algebraics on stack. -81 Default=Clear: Use current system font for ->GROB on algebraic. Set: Use mini-font for ->GROB on algebraic. -82 Default=Clear: Use current system font in EquationWriter. Set: Use mini-font in EquationWriter. -83 Default=Clear: Display grobs on the stack as pictures. Set: Display grobs on the stack the way the HP48 does. -84 Default=Clear: ? Perhaps unused. Set: ? -85 Default=Clear: Normal stack display (decompile like HP48). Set: Show stack using HP's System RPL syntax. Note: Magic incantation required before this will work. -86 Default=Clear: ? Maybe something to do with the disassembler? Set: ? -87 \ -88 > Not sure... Perhaps used in System RPL stack mode? -89 / -90 Clear: CHOOSE boxes use the current system font. Default=Set: CHOOSE boxes use the mini-font. -91 Default=Clear: MatrixWriter creates a matrix (like HP48). Set: MatrixWriter creates a list of lists. -92 Default=Clear: Assembler defaults to making Code objects. Set: Assembler defaults to making System RPL programs. -93 Default=Clear: ? Perhaps unused. Set= ? -94 Default=Clear: ? Something to do with LASTCMD... not sure... Set: ? -95 Clear: RPN Mode (like HP48). Default=Set: Algebraic Mode (similar to HP 38G). -96 Default=Clear: ? Perhaps unused. Set: ? -97 Default=Clear: Display lists horizontally (like HP48). Set: Display lists vertically. -98 Default=Clear: Display vectors horizontally (like HP48). Set: Display vectors vertically. -99 Default=Clear: CAS does calculus "silently". Set: CAS "Verbose mode" (extra calculus info is shown). -100 Default=Clear: CAS gives final answer immediately. Set: Step-by-Step Mode is on. -101 Default=Clear: ? Perhaps unused. Set: ? -102 Default=Clear: ? Perhaps unused. Set: ? -103 Default=Clear: Real mode. ("R" annunciator in header). Set: Complex mode. ("C" annunciator in header). -104 Default=Clear: ? Perhaps unused. Set: ? -105 Default=Clear: Exact mode. ("=" annunciator in header). Set: Approximate mode, like HP48. ("~" annunciator). -106 Default=Clear: Simplify in series. (?) Set: Don't simplify in series. (?) -107 Default=Clear: ? Perhaps unused. Set: ? -108 Default=Clear: ? Perhaps unused. Set: ? -109 Default=Clear: Factorize symbolically. (?) Set: Factorize numerically. (?) -110 Default=Clear: Use normal-size-matrix code (like HP48). Set: Use code optimized for huge matrices. -111 Default=Clear: Simplify non-rational expressions. Set: Don't simplify non-rational expressions. -112 Default=Clear: ? Perhaps unused. Set: ? -113 Default=Clear: Linear simplification mode on. Set: Linear simplification mode off. -114 Default=Clear: Show terms in descending powers (e.g. X^2+X+1). Set: Show terms in ascending powers (e.g. 1+X+X^2). -115 Default=Clear: ? Perhaps unused. Set: ? -116 Default=Clear: Trig manipulations prefer COS. Set: Trig manipulations prefer SIN. -117 Default=Clear: All menus appear as CHOOSE boxes (bleh!!!). Set: Use softkey menus like God intended. -118 Default=Clear: ? Perhaps unused. Set: ? -119 Default=Clear: Rigorous mode (don't simplify |X| to X). Set: Non-rigorous mode (simplify |X| to X). -120 Default=Clear: Silent mode is off. Set: Silent mode is on. -121 through -128: ? Perhaps unused. Default settings: all clear except these: -5 through -10 (wordsize=64) -11 and -12 (HEX mode) (yay!) -17 (RAD mode) (yay!) -27 (display complex as a+b*i) (yay!) -90 (use mini-font for CHOOSE boxes) (yay!) -95 (ALG mode) (BOO! HISS!) Note: -11, -12, -17, and -27 in the HP48 were clear by default. I *think* that flags -4, -13, and -30 are still unused by the system, but I'm not sure. Register-Usage: ALRMDAT current alarms CST custom menu EQ current equation IERR uncertainty of integration IOPAR I/O parameters {baud parity recv-pacing xmit-pacing checksum translate-code} PICT the graphics display PPAR plotting parameters {(xmin,ymin) (xmax,ymax) indepvar resolution (xaxis,yaxis) type dependvar} PRTPAR printing parameters {delay "remap" linelen "lineterm"} VPAR parameters used by 3D plot commands der... user-defined derivative n1,n2,... integers created by ISOL s1,s2,... signs created by ISOL and QUAD \GSDAT current statistics data \GSPAR statistics parameters {indepcol dependcol intercept slope model } Numbered-Registers: none Program-Steps: memory Program-Editing: insert or replace Program-Display: alpha User-RAM-Bytes: 512K RAM, 1024K Flash for data Total-RAM-Bytes: 2560K ROM-Bytes: 64K ROM, 1024K Flash for code Machine-State: flags stack user memory libraries File-Types: none Physical: Technology-Used: CMOS Processor: Yorke (00048-80063, 160 pin QFP), 4 MHz Chip-Count: *5 (Yorke CPU, 2x SED1181 (display column driver), 512K ROM, 128K RAM) Power-Source: 3 AAA cells Continuous-Memory: yes Expansion-Ports: none I/O-Ports: 10-wire serial, beeper Clock: yes Length: 187mm Width: 89mm Height: 28mm Weight: 264g Temperature-Range: Operating: 0 to 55 deg C Charging: - Storage: -40 to 70 deg C Maximum Operating Humidity: 90% at 40 deg C Keyboard: Switches: none Shift-Keys: left, blue, above left right, red, above right alpha, green, right User-Defined-Keys: 6 menu keys, entire keyboard Key-Arrangement:: ** ** ** ** ** ** **** *** *** *** *** *** *** *** *** **** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** Key-Labels-Base-Keyboard:: F1 F2 F3 F4 F5 F6 ^ APPS MODE TOOL <| |> VAR STO|> NXT v HIST CAT EQW SYMB <- y^x \v/x SIN COS TAN EEX +/- X 1/x \:- ALPHA 7 8 9 x <\ 4 5 6 - /> 1 2 3 + ON 0 . SPC ENTER CANCEL Key-Labels-Left-Blue-Above-Left:: Y= WIN GRAPH 2D/3D TBLSET TABLE triangleup FILES CUSTOM i <||| |||> UPDIR RCL PREV triangledown CMD PRG MTRW MTH DEL e^x x^2 ASIN ACOS ATAN 10^x \=/ \<= \=> ABS USER S.SLV EXP&LN FINANCE [] (brackets) [] CALC MATRICES CONVERT () [] ARITH DEF # {} CONT \oo :: \pi ANS Key-Labels-Right-Red-Above Right:: [] [] [] [] [] [] trianglebarup BEGIN END | |<| |>| COPY CUT PASTE trianglebardown UNDO CHARS ' EVAL CLEAR LN x\v/y \gS \gd \.S LOG = < > ARG ENTRY NUM.LSV TRIG TIME "" [] ALG STAT UNITS _ [] CMPLEX LIB BASE << >> OFF -> <-| , ->NUM Key-Labels-Alpha-Green-Right:: A B C D E F [] G H I [] [] J K L [] M N O P [] Q R S T U V W X Y Z [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] Programmable-Operations:: See next section. Non-Programmable-Operations:: Right Shift + Enter toggles Exact/Approximate (flag -105) Left Shift + Tool toggles Complex Number mode (flag -103) There is an FAQ at http://www.hpcalc.org HP49G, C-1.05 COMMANDS AND MENU PATHS, Joe Horn, 19 Aug 1999 (The following is NOT OFFICIAL and was hobbled together by hand. Please post any corrections or additions needed. This applies to ROM version C-1.05 *only*. See also the accompanying document, MENUS & LIBRARIES.) HP49G programmable commands in CAT order, collected by Joe Horn. A "+" in the first column means "new to the 49 (not in the 48)". A "-" in the first column means "not in the 49 (was in the 48)". Command aliases do not appear in CAT; use the new name as shown. Following each command is its menu path or key sequence (if any) with alternatives separated by a semicolon. "/" means "either". The most efficient key sequence is shown first if several exist, assuming that NXT NXT is better than PREV, etc. "[]" = optional. Note: Libraries 241 and 256 were attached when making this list. Flag -95 is assumed off and flag -117 is assumed set, of course! ! (key alpha-rs-2; MTH NXT PROB) % (key alpha-ls-1; MTH REAL) %CH (MTH REAL) %T (MTH REAL) ' (key 43.3) * (key 75.1) *H (alias for SCALEH) *W (alias for SCALEW) + (key 95.1) - (key 85.1) / (key 65.1) + ; (key rs+SPC; key alpha-ls-2) < (key 63.3; PRG TEST) = (key 62.3) == (PRG TEST) > (key 64.3; PRG TEST) + ? (key alpha-rs-3) + ABCUV (ARITH POLY) ABS (key 65.2; CMPLX; MATRICES OPER; MTH VECTR; MTH REAL NXT; MTH MATRX NORM; MTH NXT CMPLX) ACK (PRG NXT NXT TIME ALRM) ACKALL (PRG NXT NXT TIME ALRM) ACOS (key 54.2) + ACOS2S (TRIG) ACOSH (MTH HYP; TRIG HYP) ADD (MTH LIST) + ADDTMOD (ARITH MODUL) + ADDTOREAL (2270 MENU) ALOG (key 61.2: 10^x) AMORT (79 MENU) AND (PRG TEST NXT; [MTH/CONVERT] BASE NXT LOGIC) ANIMATE (PRG NXT GROB NXT) + ANS (key 105.2) + APEEK (256.04 MENU) APPLY (93.02 MENU) ARC (PRG NXT PICT) ARCHIVE (PRG MEM NXT) ARG (key 65.3; CMPLX; MTH NXT CMPLX) + ARIT (788.23 MENU) ARRY-> (2050.29 MENU) ASIN (key 53.2) + ASIN2C (TRIG) + ASIN2T (TRIG) ASINH (MTH HYP; TRIG HYP) + ASM-> (256.05 MENU) ASN (PRG NXT MODES KEYS) ASR ([MTH/CONVERT] BASE NXT BIT) ATAN (key 55.2) + ATAN2S (TRIG) ATANH (MTH HYP; TRIG HYP) ATICK (83.02 MENU) ATTACH (110 MENU) AUTO (81.02 MENU) AXES (83.02 MENU) + AXL (CONVERT; MATRICES OPER) + AXM (MATRICES OPER) + AXQ (CONVERT; MATRICES QUADF) + A-> (256 MENU) + A->H (256 MENU) BAR (88 MENU) BARPLOT (101 MENU) + BASE (788.22 MENU) BAUD (106 MENU) BEEP (PRG NXT OUT NXT) BESTFIT (90/99 MENU) BIN ([MTH/CONVERT] BASE) BINS (100 MENU) BLANK (PRG NXT GROB) BOX (PRG NXT PICT) BUFLEN (109 MENU) BYTES (PRG MEM) + BetaTesting (256.05 MENU) B->R ([MTH/CONVERT] BASE) + CASCFG (788.22 MENU) CASE (PRG BRCH CASE) + CD-> (256.02 MENU) CEIL (MTH REAL NXT NXT) CENTR (83.02 MENU) CF (PRG TEST NXT NXT; PRG NXT MODES FLAG) + CHINREM (ARITH POLY) CHOOSE (PRG NXT IN) CHR (PRG TYPE NXT; PRG NXT CHARS) CKSM (106 MENU) CLEAR (key 45.3) CLKADJ (PRG NXT NXT TIME NXT NXT) CLLCD (PRG NXT OUT) CLOSEIO (104.02 MENU) CLUSR (alias for CLVAR) CLVAR (must be typed in) CLsigma (91/97 MENU) - CLTEACH (not in 49G) + CMPLX (788.22 MENU) CNRM (MATRICES OPER; MTH MATRX NORM) COL+ (MTH MATRX COL; MATRICES CREAT COL) COL- (MTH MATRX COL; MATRICES CREAT COL) COLCT (93 MENU) COLsigma (must be typed in) COL-> (MTH MATRX COL; MATRICES CREAT COL) COMB (MTH NXT PROB) + COMP-> (256.03 MENU) CON (MATRICES CREAT; MTH MATRX MAKE) COND (MATRICES OPER; MTH MATRX NORM) CONIC (82 MENU) CONJ (CMPLX; MTH NXT CMPLX NXT) CONLIB (115 MENU) CONST (115 MENU) CONT (key 101.02) CONVERT ([CONVERT] UNITS TOOLS) CORR (102 MENU) COS (key 54.1) COSH (MTH HYP; TRIG HYP) COV (102 MENU) CR (107 MENU) CRDIR (PRG MEM DIR) + CRLIB (256.05 MENU) CROSS (MTH VECTR; MATRICES NXT VECT) CSWP (MTH MATRX COL; MATRICES CREAT COL) + CURL (CALC DERIV) CYLIN (MTH VECTR NXT; PRG NXT MODES ANGLE) C->PX (PRG NXT PICT NXT) C->R (PRG TYPE NXT; MTH NXT CMPLX) DARCY (117 MENU) DATE (PRG NXT NXT TIME) DATE+ (PRG NXT NXT TIME NXT) DDAYS (PRG NXT NXT TIME NXT) DEC ([MTH/CONVERT] BASE) DECR (PRG MEM ARITH) DEFINE (key 93.2; SYMB GRAPH) DEG (PRG NXT MODES ANGLE) DELALRM (PRG NXT NXT TIME ALRM) DELAY (108 MENU) DELKEYS (PRG NXT MODES KEYS) DEPND (83 MENU) DEPTH (PRG/TOOL STACK NXT) + DERIV (SYMB CALC; CALC DERIV) + DERVX (SYMB CALC; CALC DERIV) + DESOLVE (S.SLV; CALC DIFF) DET (MATRICES OPER; MTH MATRX NORM NXT) DETACH (110 MENU) DIAG-> (MATRICES CREAT; MTH MATRX NXT; MTH MATRX MAKE NXT NXT) + DIFF (788.23 MENU) DIFFEQ (82 MENU) DIR (must be typed in) DISP (PRG NXT OUT) + DIV (CALC DERIV) + DIV2 (ARITH POLY) + DIV2MOD (ARITH MODUL) + DIVIS (ARITH; SYMB ARITH) + DIVMOD (ARITH MODUL) + DIVPC (CALC LIMIT) DO (PRG BRCH [DO]) DOERR (PRG NXT NXT ERROR) DOLIST (PRG LIST PROC) DOSUBS (PRG LIST PROC) DOT (MTH VECTR; MATRICES NXT VECT) DRAW (81 MENU) + DRAW3DMATRIX (2219.18 MENU) DRAX (81 MENU) DROP (PRG/TOOL STACK) DROP2 (PRG/TOOL STACK NXT NXT) DROPN (PRG/TOOL STACK NXT NXT) DTAG (PRG TYPE NXT) DUP (PRG/TOOL STACK) DUP2 (PRG/TOOL STACK NXT NXT) + DUPDUP (PRG/TOOL STACK NXT NXT) DUPN (PRG/TOOL STACK NXT NXT) D->R (MTH REAL NXT NXT) + EDIT (key ls-downarrow; TOOL ls-EDIT; 2269.02 MENU) + EDITB (key downarrow; TOOL; 2269.02 MENU) + EGCD (ARITH POLY) EGV (MATRICES EIGEN; MTH MATRX NXT) EGVL (MATRICES EIGEN; MTH MATRX NXT) ELSE (PRG BRCH IF; PRG NXT NXT ERROR IFERR) END (PRG BRCH IF/CASE/DO/WHILE; PRG NXT NXT ERROR IFERR) ENDSUB (PRG LIST PROC) ENG (PRG NXT MODES FMT) + EPSX0 (788.23 MENU) - EQNLIB (not in 49G) + EQW (2269.02 MENU) EQ-> (PRG TYPE NXT) ERASE (81 MENU) ERR0 (PRG NXT NXT ERROR) ERRM (PRG NXT NXT ERROR) ERRN (PRG NXT NXT ERROR) + EULER (ARITH INTEG) EVAL (key 44.3) + EXLR (788.19 MENU) EXP (key 51.2: e^x) + EXP&LN (788.23 MENU) EXPAN (93/142 MENU) + EXPAND (ALG; SYMB ALG) + EXPANDMOD (ARITH MODUL) EXPFIT (90/99 MENU) + EXPLN (EXP&LN; CONVERT; SYMB NXT EXPLN) EXPM (EXP&LN; MTH HYP NXT) EYEPT (86.02 MENU) F0lambda (117 MENU) FACT (2050.17 MENU) + FACTOR (ALG; SYMB ALG; ARITH POLY) + FACTORMOD (ARITH MODUL) + FACTORS (ARITH) FANNING (117 MENU) + FAST3D (2289.02 MENU) FC? (PRG TEST NXT NXT; PRG NXT MODES FLAG) FC?C (PRG TEST NXT NXT; PRG NXT MODES FLAG) + FCOEF (ARITH POLY) FFT (MTH NXT FFT) + FILER (key 21.2) FINDALARM (PRG NXT NXT TIME ALRM) FINISH (105 MENU) FIX (PRG NXT MODES FMT) + FLASHEVAL (2219.04 MENU) FLOOR (MTH REAL NXT NXT) + FONT6 (2269.03 MENU) + FONT7 (2269.03 MENU) + FONT8 (2269.03 MENU) + FONT-> (2269 MENU) FOR (PRG BRCH [FOR]) + FOURIER (CALC DERIV) FP (MTH REAL NXT) FREE (must be typed in) - FREE1 (not in 49G) FREEZE (PRG NXT OUT) + FROOTS (ARITH POLY NXT) FS? (PRG TEST NXT NXT; PRG NXT MODES FLAG) FS?C (PRG TEST NXT NXT; PRG NXT MODES FLAG) + FUNCTAB (2289.02 MENU) FUNCTION (82 MENU) + FXND (788.18 MENU) + GAUSS (MATRICES QUADF) + GCD (ARITH POLY NXT) + GCDMOD (ARITH MODUL) GET (PRG LIST ELEM; MATRICES CREAT NXT; MTH MATRX MAKE NXT) GETI (PRG LIST ELEM; MATRICES CREAT NXT; MTH MATRX MAKE NXT) GOR (PRG NXT GROB) GRAD (PRG NXT MODES ANGLE) GRAPH (alias for PICTURE) GRIDMAP (85 MENU) GROB (must be typed in) + GROBADD (788.21 MENU) GXOR (PRG NXT GROB) + HADAMARD (MATRICES OPER NXT) + HALFTAN (TRIG; SYMB TRIG) HALT (PRG NXT NXT RUN) HEAD (PRG LIST ELEM NXT; PRG NXT CHARS NXT) + HEADER-> (2269 MENU) + HERMITE (ARITH POLY NXT) + HESS (CALC DERIV) HEX ([MTH/CONVERT] BASE) + HILBERT (MATRICES CREAT NXT; MTH MATRX MAKE NXT NXT) HISTOGRAM (88 MENU) HISTPLOT (101 MENU) HMS+ (PRG NXT NXT TIME NXT) HMS- (PRG NXT NXT TIME NXT) HMS-> (PRG NXT NXT TIME NXT) HOME (2050.06 MENU) + HORNER (ARITH POLY NXT) + H-> (256 MENU) + H->A (256 MENU) + H->S (256.02 MENU) + IABCUV (ARITH INTEG) + IBP (SYMB CALC; CALC DERIV NXT) + ICHINREM (ARITH INTEG) + IDIV2 (ARITH INTEG) IDN (MATRICES CREAT; MTH MATRX MAKE) + IEGCD (SYMB ARITH; ARITH INTEG) IF (PRG BRCH [IF]) IFERR (PRG NXT NXT ERROR [IFERR]) IFFT (MTH NXT FFT) IFT (PRG BRCH NXT) IFTE (PRG BRCH NXT) + ILAP (CALC DIFF) IM (CMPLX; MTH NXT CMPLX) INCR (PRG MEM ARITH) INDEP (83 MENU) INFORM (PRG NXT IN) INPUT (PRG NXT IN) + INT (must be typed in) + INTVX (SYMB CALC; CALC DERIV NXT) INV (key 64.1: 1/x) + INVMOD (ARITH MODUL NXT) IP (MTH REAL NXT) + IQUOT (SYMB ARITH; ARITH INTEG) + IREMAINDER (SYMB ARITH; ARITH INTEG NXT) ISOL (S.SLV) + ISPRIME? (SYMB ARITH; ARITH INTEG NXT) + I->R (CONVERT NXT) + JORDAN (MATRICES EIGEN) KERRM (104.02 MENU) KEY (PRG NXT IN) + KEYEVAL (788.21 MENU) + KEYTIME-> (2219.19 MENU) KGET (105 MENU) KILL (PRG NXT NXT RUN) LABEL (81.02 MENU) + LAGRANGE (ARITH POLY NXT) + LANGUAGE-> (2269 MENU) + LAP (CALC DIFF) + LAPL (CALC DERIV NXT) LAST (alias for LASTARG) LASTARG (key 105.2: ANS; PRG NXT NXT ERROR) LCD-> (PRG NXT GROB NXT) + LCM (ARITH POLY NXT) + LCXM (137.02/788.15 MENU) + LC~C (256.04 MENU) + LDEC (S.SLV; SYMB SOLVE; CALC DIFF) + LEGENDRE (ARITH POLY NXT NXT) + LGCD (ARITH) LIBEVAL (2219.04 MENU) LIBS (110 MENU) + LIMIT (SYMB CALC; CALC LIMIT) + LIN (ALG; EXP&LN; SYMB ALG; CONVERT NXT; SYMB NXT EXPLN) LINE (PRG NXT PICT) LINFIT (90/99 MENU) LININ (PRG TEST PREV) + LINSOLVE (S.SLV; SYMB SOLVE; MATRICES LIN-S) LIST-> (2050.27 MENU) LN (key 51.3) + LNAME (788.19 MENU) + LNCOLLECT (ALG; EXP&LN; SYMB NXT EXPLN) LNP1 (MTH HYP NXT) LOG (key 61.3) LOGFIT (90/99 MENU) LQ (MATRICES FACT; MTH MATRX FACTR) LR (102 MENU) + LR~R (256.04 MENU) LSQ (MTH MATRX; MATRICES OPER NXT) LU (MATRICES FACT; MTH MATRX FACTR) + LVAR (788.18 MENU) + MAD (MATRICES OPER NXT) + MAIN (788.22 MENU) MANT (MTH REAL NXT) + MAP (788.18 MENU) + MATR (788.22 MENU) MAX (MTH REAL) MAXR (MTH NXT CONST NXT) MAXsigma (100 MENU) - MCALC (not in 49G) MEAN (100 MENU) MEM (PRG MEM) MENU (PRG NXT MODES MENU) + MENUXY (788.21 MENU) MERGE (must be typed in) - MERGE1 (not in 49G) MIN (MTH REAL) - MINEHUNT (not in 49G) + MINIFONT-> (2269.04 MENU) - MINIT (not in 49G) MINR (MTH NXT CONST NXT) MINsigma (100 MENU) - MITM (not in 49G) MOD (MTH REAL; ARITH MODUL NXT) + MODSTO (ARITH MODUL NXT) - MROOT (not in 49G) MSGBOX (PRG NXT OUT) - MSOLVR (not in 49G) + MULTMOD (ARITH MODUL NXT) - MUSER (not in 49G) NDIST (MTH NXT PROB NXT) + NDUPN (PRG/TOOL STACK PREV) NEG (key 62.1: +/-; CMPLX; MTH NXT CMPLX NXT) NEWOB (PRG MEM) NEXT (PRG BRCH START/FOR) + NEXTPRIME (ARITH INTEG NXT) + NIP (PRG/TOOL STACK NXT NXT) NOT (PRG TEST NXT; [MTH/CONVERT] BASE NXT LOGIC) NOVAL (PRG NXT IN) NSUB (PRG LIST PROC) NUM (PRG TYPE NXT; PRG NXT CHARS) NUMX (86.02 MENU) NUMY (86.02 MENU) Nsigma (103 MENU) OBJ-> (PRG TYPE; PRG LIST; PRG NXT CHARS NXT) OCT ([MTH/CONVERT] BASE) OFF (PRG NXT NXT RUN NXT) OLDPRT (108 MENU) OPENIO (109 MENU) OR (PRG TEST NXT; [MTH/CONVERT] BASE NXT LOGIC) ORDER (PRG MEM DIR NXT) OVER (PRG/TOOL STACK) + PA2B2 (ARITH INTEG NXT) PARAMETRIC (82 MENU) + PARAMTAB (2289.02 MENU) PARITY (106 MENU) PARSURFACE (85 MENU) + PARTFRAC (ARITH POLY NXT NXT) PATH (PRG MEM DIR) + PCAR (MATRICES EIGEN) PCOEF (ARITH POLY NXT NXT) PCONTOUR (85 MENU) PCOV (102.02 MENU) PDIM (PRG NXT PICT) + PEEK (256.03 MENU) PERM (MTH NXT PROB) PEVAL (77 MENU) PGDIR (PRG MEM DIR) PICK (PRG/TOOL STACK NXT) + PICK3 (PRG/TOOL STACK NXT) PICT (PRG NXT PICT) PICTURE (key left-arrow; 2050.34 MENU) PINIT (110 MENU) PIX? (PRG NXT PICT NXT) PIXOFF (PRG NXT PICT NXT) PIXON (PRG NXT PICT NXT) PKT (105 MENU) + PLOT (SYMB GRAPH) + PLOTADD (SYMB GRAPH) PMAX (2050.31 MENU) PMIN (2050.31 MENU) + POKE (256.03 MENU) POLAR (82 MENU) + POLARTAB (2289.02 MENU) POS (PRG LIST ELEM; PRG NXT CHARS) + POWMOD (ARITH MODUL NXT) PR1 (104 MENU) PREDV (must be typed in) PREDX (102 MENU) PREDY (102 MENU) + PREVAL (CALC DERIV NXT) + PREVPRIME (ARITH INTEG NXT) PRLCD (107 MENU) (no hotkey?!?) PROMPT (PRG NXT IN NXT) + PROMPTSTO (788.24 MENU) PROOT (ARITH POLY NXT NXT) + PROPFRAC (SYMB ARITH; ARITH NXT) PRST (107 MENU) PRSTC (107 MENU) PRVAR (107 MENU) PSDEV (100.02 MENU) + PTAYL (ARITH POLY NXT NXT) PURGE (TOOL; PRG MEM; PRG MEM DIR) PUT (PRG LIST ELEM; MATRICES CREAT NXT; MTH MATRX MAKE NXT) PUTI (PRG LIST ELEM; MATRICES CREAT NXT; MTH MATRX MAKE NXT) PVAR (100.02 MENU) PVARS (110 MENU) PVIEW (PRG NXT OUT; PRG NXT PICT NXT) PWRFIT (90/99 MENU) PX->C (PRG NXT PICT NXT) QR (MATRICES FACT; MTH MATRX FACTR) QUAD (93 MENU) + QUOT (ARITH POLY NXT NXT) QUOTE (93.03 MENU) + QXA (MATRICES QUADF) RAD (PRG NXT MODES ANGLE) RAND (MTH NXT PROB) RANK (MATRICES OPER NXT; MTH MATRX NORM NXT) RANM (MTH MATRX MAKE; MATRICES CREAT NXT) RATIO (must be typed in) RCEQ (75 MENU rs-EQ) RCI (MTH MATRX ROW; MATRICES CREAT ROW) RCIJ (MTH MATRX ROW; MATRICES CREAT ROW) RCL (key 32.2; TOOL; PRG MEM DIR) RCLALARM (PRG NXT NXT TIME ALRM) RCLF (PRG NXT MODES FLAG NXT) RCLKEYS (PRG NXT MODES KEYS) RCLMENU (PRG NXT MODES MENU) RCLsigma (97 MENU rs-SigmaDAT) RCWS ([MTH/CONVERT] BASE NXT) RDM (MTH MATRX MAKE; MATRICES CREAT NXT NXT) RDZ (MTH NXT PROB) RE (CMPLX NXT; MTH NXT CMPLX) RECN (104.02 MENU) RECT (MTH VECTR NXT; PRG NXT MODES ANGLE) RECV (104 MENU) + REF (MATRICES LIN-S) + REMAINDER (ARITH POLY PREV) + RENAME (2269.04 MENU) + REORDER (788.18 MENU) REPEAT (PRG BRCH WHILE) REPL (PRG LIST; PRG NXT GROB; PRG NXT CHARS; MTH MATRX MAKE NXT; MATRICES CREAT NXT NXT) RES (83 MENU) RESTORE (PRG MEM NXT) REVLIST (MTH LIST; PRG LIST PROC) + RISCH (CALC DERIV NXT) RKF (76 MENU) RKFERR (76 MENU) RKFSTEP (76 MENU) RL ([MTH/CONVERT] BASE NXT BIT) RLB ([MTH/CONVERT] BASE NXT BYTE) RND (MTH REAL NXT NXT) RNRM (MTH MATRX NORM; MATRICES OPER NXT) ROLL (PRG/TOOL STACK NXT) ROLLD (PRG/TOOL STACK NXT) ROOT (75 MENU) ROT (PRG/TOOL STACK) ROW+ (MTH MATRX ROW; MATRICES CREAT ROW) ROW- (MTH MATRX ROW; MATRICES CREAT ROW) ROW-> (MTH MATRX ROW; MATRICES CREAT ROW) + RPL> (must be typed in) RR ([MTH/CONVERT] BASE NXT BIT) RRB ([MTH/CONVERT] BASE NXT BYTE) RREF (MATRICES LIN-S; MTH MATRX FACTR) + RREFMOD (788.21 MENU) RRK (76 MENU) RRKSTEP (76 MENU) RSBERR (76 MENU) RSD (MTH MATRX NXT; MATRICES OPER NXT) RSWP (MTH MATRX ROW NXT; MATRICES CREAT ROW NXT) RULES (must be typed in) + R~SB (256.04 MENU) R->B ([MTH/CONVERT] BASE) R->C (PRG TYPE NXT; MTH NXT CMPLX) R->D (MTH REAL NXT NXT) + R->I (CONVERT NXT) SAME (PRG TEST NXT) SBRK (109 MENU) + SB~B (256.04 MENU) SCALE (83.02 MENU) + SCALEH (83.02 MENU) + SCALEW (83.02 MENU) SCATRPLOT (101 MENU) SCATTER (88 MENU) SCHUR (MATRICES FACT; MTH MATRX FACTR) SCI (PRG NXT MODES FMT) SCLsigma (must be typed in) SCONJ (PRG MEM ARITH NXT) + SCROLL (788.21 MENU) SDEV (100 MENU) SEND (104 MENU) SEQ (PRG LIST PROC NXT) + SEQTAB (2289.03 MENU) + SERIES (SYMB CALC; CALC LIMIT) SERVER (105 MENU) + SEVAL (788.17 MENU) SF (PRG TEST NXT NXT; PRG NXT MODES FLAG) SHOW (93 MENU) SIDENS (117 MENU) SIGN (CMPLX NXT; MTH REAL NXT; MTH NXT CMPLX NXT) + SIGNTAB (SYMB GRAPH) + SIMP2 (ARITH NXT) SIN (key 53) + SINCOS (TRIG NXT; SYMB NXT EXPLN) SINH (MTH HYP; TRIG HYP) SINV (PRG MEM ARITH NXT) SIZE (MTH MATRX MAKE; PRG LIST ELEM; PRG NXT CHARS; PRG NXT GROB NXT; MATRICES OPER NXT NXT) SL ([MTH/CONVERT] BASE NXT BIT) SLB ([MTH/CONVERT] BASE NXT BYTE) SLOPEFIELD (85 MENU) SNEG (PRG MEM ARITH NXT) SNRM (MTH MATRX NORM; MATRICES OPER NXT NXT) + SOLVE (S.SLV; ALG; SYMB SOLVE) - SOLVEQN (not in 49G) + SOLVER (788.23 MENU) + SOLVETAB (2289.03 MENU) + SOLVEVX (S.SLV; SYMB SOLVE) SORT (MTH LIST; PRG LIST PROC NXT) SPHERE (MTH VECTR NXT; PRG NXT MODES ANGLE) SQ (key 52.2: x^2) SR ([MTH/CONVERT] BASE NXT BIT) SRAD (MTH MATRX NORM; MATRICES OPER NXT NXT) SRB ([MTH/CONVERT] BASE NXT BYTE) SRECV (109 MENU) + SREPL (2269.03 MENU) + SREV (109 MENU) START (PRG BRCH [START]) + STAT2TAB (2289.03 MENU) + STATTAB (2289.03 MENU) STD (PRG NXT MODES FMT) STEP (PRG BRCH START/FOR) STEQ (75 MENU ls-EQ) STIME (109 MENU) STO (key 32.1; PRG MEM DIR) STO* (PRG MEM ARITH) STO+ (PRG MEM ARITH) STO- (PRG MEM ARITH) STO/ (PRG MEM ARITH) STOALARM (PRG NXT NXT TIME ALRM) STOF (PRG NXT MODES FLAG NXT) STOKEYS (PRG NXT MODES KEYS) STOsigma (97 MENU ls-SigmaDAT) STREAM (PRG LIST PROC) STR-> (2050.28 MENU) STWS ([MTH/CONVERT] BASE NXT) SUB (PRG LIST; PRG NXT GROB; PRG NXT CHARS; MATRICES CREAT NXT NXT; MTH MATRX MAKE NXT) + SUBST (ALG; SYMB ALG) + SUBTMOD (ARITH MODUL NXT) SVD (MATRICES FACT; MTH MATRX FACTR) SVL (MATRICES FACT; MTH MATRX FACTR NXT) SWAP (PRG/TOOL STACK) + SYLVESTER (MATRICES QUADF) SYSEVAL (2050.09 MENU) + S~N (256.04 MENU) + S->H (256.02 MENU) + TABVAL (142.02 MENU) + TABVAR (SYMB GRAPH) TAIL (PRG LIST ELEM NXT; PRG NXT CHARS NXT) TAN (key 55.1) + TAN2SC (SYMB TRIG; TRIG NXT) + TAN2SC2 (SYMB TRIG; TRIG NXT) TANH (MTH HYP; TRIG HYP) + TAYLOR0 (CALC LIMIT; SYMB CALC NXT) TAYLR (CALC LIMIT) + TCHEBYCHEFF (788.16 MENU) + TCOLLECT (TRIG NXT) TDELTA (117 MENU) + TEVAL (788.17 MENU) - TEACH (not in 49G) + TEXPAND (EXP&LN; SYMB ALG; SYMB TRIG; ALG NXT; TRIG NXT; SYMB NXT EXPLN) TEXT (PRG NXT OUT) THEN (PRG BRCH IF/CASE; PRG NXT NXT ERROR IFERR) TICKS (PRG NXT NXT TIME) TIME (PRG NXT NXT TIME) TINC (117.02 MENU) + TLIN (SYMB TRIG; TRIG NXT) TLINE (PRG NXT PICT) TMENU (PRG NXT MODES MENU) TOT (100 MENU) TRACE (MATRICES OPER NXT NXT; MTH MATRX NORM NXT) + TRAN (MATRICES OPER NXT NXT; MTH MATRX NORM NXT) TRANSIO (106 MENU) + TRIG (SYMB TRIG; TRIG NXT NXT) + TRIGCOS (TRIG NXT NXT) + TRIGO (788.22 MENU) + TRIGSIN (TRIG NXT NXT) + TRIGTAN (TRIG NXT NXT) TRN (MTH MATRX MAKE) TRNC (MTH REAL NXT NXT) + TRUNC (788.17 MENU) TRUTH (82 MENU) + TSIMP (EXP&LN; TRIG NXT NXT) TSTR (PRG NXT NXT TIME NXT NXT) TVARS (PRG MEM DIR NXT) TVM (2219.12 MENU) TVMBEG (2219.13 MENU) TVMEND (2219.13 MENU) TVMROOT (79 MENU) TYPE (PRG TEST NXT; PRG TYPE NXT NXT) UBASE ([CONVERT] UNITS TOOLS) UFACT ([CONVERT] UNITS TOOLS) + UFL1->MINIF (2269.04 MENU) + UNPICK (PRG/TOOL STACK NXT) + UNROT (PRG/TOOL STACK) UNTIL (PRG BRCH DO) UPDIR (key 31.2) UTPC (MTH NXT PROB NXT) UTPF (MTH NXT PROB NXT) UTPN (MTH NXT PROB NXT) UTPT (MTH NXT PROB NXT) UVAL ([CONVERT] UNITS TOOLS) + VANDERMONDE (MATRICES CREAT NXT NXT; MTH MATRX MAKE NXT NXT) VAR (100.02 MENU) VARS (PRG MEM DIR NXT) + VER (788.24 MENU) VERSION (2219.03 MENU) + VISIT (key ls-downarrow; 2269.02 MENU) + VISITB (2269.02 MENU) VTYPE (PRG TYPE NXT NXT) V-> (MTH VECTR) WAIT (PRG NXT IN) WHILE (PRG BRCH [WHILE]) WIREFRAME (85 MENU) WSLOG (2050.04 MENU) XCOL (89/98 MENU) XMIT (109 MENU) + XNUM (142.02 MENU) XOR (PRG TEST NXT; [MTH/CONVERT] BASE NXT LOGIC) XPON (MTH REAL NXT) + XQ (142.02 MENU) XRECV (104.02 MENU) XRNG (83 MENU) XROOT (key 52.3: x-root-of-y) XSEND (104.02 MENU) XVOL (86 MENU) XXRNG (86 MENU) YCOL (89/98 MENU) YRNG (83 MENU) YSLICE (85 MENU) YVOL (86 MENU) YYRNG (86 MENU) + ZEROS (SYMB SOLVE; S.SLV NXT) ZFACTOR (117 MENU) ZVOL (86 MENU) ^ (key 51.1: y^x) _ (key 85.3) dB (117.02 MENU) e (alpha-ls-E; MTH NXT CONST) gmol (117.02 MENU) i (key 23.2; CMPLX; MTH NXT CONST) lbmol (117.02 MENU) rpm (117.02 MENU) + rref (SYMB SOLVE; MATRICES LIN-S) | (key 23.3) sqrt (key 52.1) integral (key 55.3) Sigma (key 53.3) Sigma+ (91/97 MENU) Sigma- (91/97 MENU) SigmaLINE (102 MENU) SigmaLIST (MTH LIST) SigmaX (103 MENU) SigmaX^2 (alias for SigmaX2) SigmaX2 (103 MENU) SigmaX*Y (alias for SigmaXY) SigmaXY (103 MENU) SigmaY (103 MENU) SigmaY^2 (alias for SigmaY2) SigmaY2 (103 MENU) |> (key 32.1: STO in algebraic mode) pi (key 104.2; MTH NXT CONST) derivative (key 54.3) <= (key 63.2; PRG TEST) >= (key 64.2; PRG TEST) <> (key 62.2; PRG TEST) -> (key 102.3) + ->A + ->ALG ->ARRY (PRG TYPE) + ->CD ->COL (MTH MATRX COL; MATRICES CREAT COL) ->DATE (PRG NXT NXT TIME) ->DIAG (MATRICES CREAT; MTH MATRX NXT; MTH MATRX MAKE NXT NXT) + ->FONT (2269 MENU) ->GROB (PRG NXT GROB) + ->H + ->HEADER (2269 MENU) ->HMS (PRG NXT NXT TIME NXT) + ->KEYTIME (2219.19 MENU) + ->LANGUAGE (2269 MENU) ->LCD (PRG NXT GROB NXT) ->LIST (PRG TYPE; PRG LIST) + ->LST + ->MINIFONT (2269.03 MENU) + ->NDISP (2269.02 MENU) ->NUM (key 105.3; CONVERT NXT) + ->PRG ->Q (CONVERT NXT) ->Qpi (CONVERT NXT) + ->RAM ->ROW (MTH MATRX ROW; MATRICES CREAT ROW) ->STR (PRG TYPE; PRG NXT CHARS NXT) ->TAG (PRG TYPE) ->TIME (PRG NXT NXT TIME) ->UNIT (PRG TYPE; [CONVERT] UNITS TOOLS) ->V2 (MTH VECTR) ->V3 (MTH VECTR) vMATCH (93.02 MENU) ^MATCH (93.02 MENU) DeltaLIST (MTH LIST) PiLIST (MTH LIST) + Infinity (key 102.2) << (key 95.3) >> (key 95.3) This information is courtesy Wlodek Mier-Jedrzejowicz from DATAFILE V18 N5. Turn the unit off, then on while holding the D key down. You're now in self-test and ROM upload mode. A memory viewer if you press the down key 12 times, you will see the unit serial number 0..9 and top row: select memory bank up, down, left, right and +, -, x, \:- move around in memory B, C, G, J, M, R, S, T: you get portraits of the team members V original keyboard simulator 9 DON'T DO: this wipes flash memory in preparation for a ROM download! ON (or C and ON): exits this mode Menus:: HP49G, C-1.05, MENUS & LIBRARIES, Joe Horn, 19 Aug 1999 Unofficial. Made by hand. Please post all errors found. Thanx. -jkh- -- MENU NUMBERS -- "*" in the first column means the menu is only available by the MENU command. -- menus 0-117 are semi-compatible with 48G menus -- 0 LAST MENU 1 CUSTOM 2 VAR 3 MTH 4 MTH VECTR 5 MTH MATRX 6 MTH MATRX MAKE 7 MTH MATRX NORM 8 MTH MATRX FACTR 9 MTH MATRX COL 10 MTH MATRX ROW 11 MTH LIST 12 MTH HYP 13 MTH NXT PROB 14 MTH REAL 15 [MTH] BASE 16 [MTH] BASE NXT LOGIC 17 [MTH] BASE NXT BIT 18 [MTH] BASE NXT BYTE 19 MTH NXT FFT 20 MTH NXT CMPLX 21 MTH NXT CONST 22 PRG 23 PRG BRCH 24 PRG BRCH IF 25 PRG BRCH CASE 26 PRG BRCH START 27 PRG BRCH FOR 28 EDIT 29 PRG BRCH DO * 30 old menu-based solver 31 PRG BRCH WHILE 32 PRG TEST 33 PRG TYPE 34 PRG LIST 35 PRG LIST ELEM 36 PRG LIST PROC 37 PRG NXT GROB 38 PRG NXT PICT 39 PRG NXT IN 40 PRG NXT OUT 41 PRG NXT NXT RUN 42 [CONVERT] UNITS 43 [CONVERT] UNITS LENG 44 [CONVERT] UNITS AREA 45 [CONVERT] UNITS VOL 46 [CONVERT] UNITS TIME 47 [CONVERT] UNITS SPEED 48 [CONVERT] UNITS NXT MASS 49 [CONVERT] UNITS NXT FORCE 50 [CONVERT] UNITS NXT ENRG 51 [CONVERT] UNITS NXT POWR 52 [CONVERT] UNITS NXT PRESS 53 [CONVERT] UNITS NXT TEMP 54 [CONVERT] UNITS NXT NXT ELEC 55 [CONVERT] UNITS NXT NXT ANGL 56 [CONVERT] UNITS NXT NXT LIGHT 57 [CONVERT] UNITS NXT NXT RAD 58 [CONVERT] UNITS NXT NXT VISC 59 [CONVERT] UNITS TOOLS 60 PRG NXT NXT ERROR IFERR 61 PRG NXT NXT ERROR 62 PRG NXT CHARS 63 PRG NXT MODES 64 PRG NXT MODES FMT 65 PRG NXT MODES ANGLE 66 PRG NXT MODES FLAG 67 PRG NXT MODES KEYS 68 PRG NXT MODES MENU 69 PRG NXT MODES MISC 70 PRG MEM 71 PRG MEM DIR 72 PRG MEM ARITH 73 PRG/TOOL STACK * 74 old menu-based SOLVE * 75 old menu-based SOLVE ROOT * 76 old menu-based SOLVE DIFFEQ * 77 old menu-based SOLVE POLY * 78 old menu-based SOLVE SYS * 79 old menu-based SOLVE TVM * 80 old menu-based TVM solver * 81 old menu-based PLOT * 82 old menu-based PLOT PTYPE * 83 old menu-based PLOT PPAR * 84 old menu-based PLOT 3D * 85 old menu-based PLOT 3D PTYPE * 86 old menu-based PLOT 3D VPAR * 87 old menu-based PLOT STAT * 88 old menu-based PLOT STAT PTYPE * 89 old menu-based PLOT STAT SigmaPAR * 90 old menu-based PLOT STAT SigmaPAR MODL * 91 old menu-based PLOT STAT DATA * 92 old menu-based PLOT FLAG * 93 old SYMBOLIC menu 94 PRG NXT NXT TIME 95 PRG NXT NXT TIME ALRM * 96 old menu-based STAT * 97 old menu-based STAT DATA * 98 old menu-based STAT SigmaPAR * 99 old menu-based STAT SigmaPAR MODL *100 old menu-based STAT 1VAR *101 old menu-based STAT PLOT *102 old menu-based STAT FIT *103 old menu-based STAT SUMS *104 old menu-based I/O *105 old menu-based I/O SRVR *106 old menu-based I/O IOPAR *107 old menu-based I/O PRINT *108 old menu-based I/O PRINT PRTPAR *109 old menu-based I/O SERIAL *110 LIBRARY commands (PVARS, LIBS, DETACH, ATTACH, PINIT) *111 same result as LIBS *112 same result as LIBS *113 old EQLIB menu *114 old EQLIB EQLIB menu (empty) *115 old EQLIB COLIB menu *116 old EQLIB MES menu (empty) *117 old EQLIB UTILS menu -- new 49G menus start here --- *118 abandoned UNITS TOOLS (same as menu #59) 119 APPS CAS 120 S.SLV 121 EXP&LN 122 TRIG 123 CALC 124 ALG 125 ARITH 126 ARITH POLY 127 ARITH INTEG 128 ARITH MODUL 129 MATRICES 130 CMPLX 131 CONVERT *132 menu-based NUM.SLV *133 menu-based TVM (SOLVR fails if flag -117 is clear) 134 SYMB ARITH *135 abandoned SYMB CONV *136 abandoned SYMB DIFF *137 abandoned SYMB MATRX *138 abandoned SYMB MOD 139 SYMB TRIG *140 abandoned SYMB TRIGC *141 abandoned SYMB UNARY *142 abandoned SYMB BASIC 143 SYMB *144 bad PRG menu: BRCH is malformed *145 malformed PRG BRCH menu 146 MATRICES CREAT *147 abandoned subset of MATRICES OPER 148 MATRICES FACT *149 ? abandoned MATRICES COL ? *150 ? abandoned MATRICES ROW ? 151 SYMB ALG 152 SYMB CALC 153 SYMB GRAPH 154 SYMB SOLVE 155 SYMB NXT EXPLN 156 MATRICES OPER 157 MATRICES QUADF 158 MATRICES LIN-S 159 MATRICES EIGEN 160 MATRICES NXT VECT 161 TRIG HYP 162 CALC DERIV 163 CALC LIMIT 164 CALC DIFF 165 MATRICES CREAT COL 166 MATRICES CREAT ROW *167 abandoned TIME (same as menu #94) 168-255 (nonexistent) -- MENU NUMBERS THAT CORRESPOND TO BUILT-IN LIBRARIES -- 256 Hacker's toolkit 788 CAS version 4.19990717 (new, improved Erable library) 1792 IF/THEN-type structure commands (same as in 48S/G) 2050 Library 2 (48S command set + 15 new ones; see below) 2057 Statistical test functions 2219 Library 171 (48G command set + 3 new ones; see below) 2269 MetaKernel goodies 2270 ADDTOREAL 2289 Stat stuff ------------------- New LIB 2 commands (only 2.5 bytes each!) 342 (algebraic STO) 386 INT 387 ANS 388 ; 389 R->I 390 I->R 391 NOVAL (not in lib 171 any more) 393 RPL> 394 UNROT 395 UNPICK 396 NIP 397 PICK3 398 DUPDUP 399 NDUPN 400 FAST3D New LIB 171 commands: 107 DRAW3DMATRIX 108 ->KEYTIME 109 KEYTIME-> Bugs/ROM-Versions:: None. Notes:: Introduced at the OpenHP conference in Paris. US annoucement at the American Society for Engineering Education conference in Rahleight NC on June 21. Display is black rather than the 48* blue. The whole machine runs faster than the 48* series due to (lots of) code tuning and "locking down" the memory configuration. The case is ice blue. The manuals can be found at: http://www.hp.com/calculators/products/manuals/49g/49g_ug.zip More information can be found at: http://www.hpcalc.org/hp49/docs/faq This is the first use of "rubber" keys. There is no double width ENTER key. Some form of "Technical BASIC" is promised, but not in yet. Tools to support machine language and system RPL are reportedly present, but not officially supported. Compared to the 48* series, this machine drops infra-red, card slots, and the equation library. These changes supposedly make it more acceptable in classrooms. The machine features the return of the 28* CAT function. New functions are CUT, COPY, PASTE, FIND/REPLACE, and a TOOL menu. Try evaluating "RULES". ------------------------------------------------------------ Message-ID: <37AC93A3.6644@intermediatn.net> From: Rick Grevelle <rgrevelle@intermediatn.net> Newsgroups: comp.sys.hp48 Subject: 49 Flash Pointer Date: Sat, 07 Aug 1999 16:14:27 -0400 FLASH POINTERS Hewlett-Packard's latest creation, the HP49G, looks alot like its parents the HP48G and HP48GX; both internally and externally. For the most part, and at least from my view point, the internals are quite the same. Most of the kernel remains intact, although there are positive improvements. Many of the lower memory entries have not changed. This includes several ASSEMBLY entries points and an interesting number of PRIMATIVE CODE OBJECTS beginning at address #02F6Fh (ID1), and which continue through #08DD4h (SYSRRP?). More on this later. Albeit of little value for the larger majority of users, HP has a new object type which functions as a memory mapping utility, and thus allows routines to be moved without having to change entries in later versions. The new object is a FLASH POINTER (FlashPtr) and is atomic. Its prologue address is #026ACh and is prodeeded by the address of its skipover and direct execution code. FlashPtr is only 6 bytes. The forementioned 2.5 byte prologue is followed by 3.5 bytes, or 7 nibbles, which are in fact 2 distinct offsets used to point to the appropriate segment in 2 seperate tables for ultimately executing an object located somewhere within the 49's memory. The direct execution code is responsible for this action and is a secondary located at address #02725h. From an internal standpoint FlashPtr is as follows: 026AC hhh hhhh | | | | | 2nd field | | | 1st field | prologue The 1st field is used to point into a table in system RAM located at #86037h. The value of the 1st field is multiplied by 5 since the table is a list of 2.5 byte values intended to be utilized by the CPU CONFIG instruction in order to soft configure the memory where the object pointed to by FlashPtr is located. The 2nd field is also used to point into another table, but this table contains a list of 2.5 byte values which are actually the addresses of the target objects pointed to by the FlashPtr which is being processed. The 2nd table's address is #40222h, and in itself should make one speculate as to the configuration changes of the devices in this new machine. Overall the scheme outlined here has been reduced to a somewhat simplified form. The actual details are more involved so I'll leave it at that; after all I wouldn't want to spoil any of the fun for those wanting to solve the puzzle on their own. There is however quite a bit of information one will need in order to begin lower level programming this machine. Additionally there is a great possibility that some of addresses will slide before the final revision. More on this later. ------------------------------------------------------------ From: "Art Belmonte (CalcLab)" <belmonte@calclab.math.tamu.edu> Newsgroups: comp.sys.hp48 Subject: Production HP 49G in hand! Date: Thu, 12 Aug 1999 14:32:30 -0500 Message-ID: <Pine.LNX.4.05.9908121357220.16090-100000@calclab3.math.tamu.edu> ... The VER command returns: "HP 49 CAS by Parisse, Heiskanen, & Fiechter" 4.19990717 [ostensibly, Sat, 17/Jul/99] The VERSION command returns: "Version HP-49C" "Revision #1.05" "Copyright HP 1999" Serial port connectivity tests with various operating systems: My setups in the office: 1. Linux workstation running Red Hat 5.2 2. iMac running Mac OS 8.6; USB ports with USB-to-serial converter 3. Windows 98 running under Virtual PC on the iMac Results: 1. For Linux I used the PC serial cable from the HP Graphic Calculator Connectivity Kit (HP F1207B, the 38/48 kit). I ran C-Kermit 6 and put the Linux box in server mode. (Helpful "HP-48 Kermit Hints and Tips" were quite useful in setting things up properly. The URL is: http://www.columbia.edu/kermit/hp48.html ) I uploaded and downloaded variables from the HP 49G by using the 49G commands SEND and KGET; works great. I also downloaded Brett Heath's "kbrowse" program off the www.hpcalc.org site. After hacking the source code a bit (so as to accomodate the output from "pwd" and "ls -ps" on my Linux system), kbrowse also worked quite nicely. 2. Mac OS 8.6: a. I used the HP Graphic Calculator Macintosh Connectivity Kit (HP F1208B, the 38/48 kit) on my iMac via a Keyspan USB-to-serial converter. All features of the program worked fine: uploading and downloading variables, sending remote commands to the 49G from the iMac, and capturing screen shots from 49G. b. I also used Zterm to upload and download variables via both Kermit and XMODEM. 3. Windows 98 (under Virtual PC on the iMac): a. I used the HP Graphic Calculator PC Connectivity kit (HP F1207B, the 38/48 kit). Virtual PC maps the virtual PC hardware to the Mac hardware and the Keyspan USB-to-serial converter did the trick here as well to provide "virtual" serial ports. All features of the program worked fine: uploading and downloading variables, sending remote commands to the 49G, and capturing screen shots from 49G. Even with Windows 98 under Virtual PC emulation, performance was quite satisfactory. b. I also used Hyperterminal to upload and download variables via both Kermit and XMODEM. ... - Art Belmonte Department of Mathematics Texas A&M University ------------------------------------------------------------ Newsgroups: comp.sys.hp48 Subject: Re: Production HP 49G in hand! Date: Thu, 12 Aug 1999 18:06:37 -0500 Organization: Texas A&M University, College Station, Texas Message-ID: <Pine.GSO.4.05.9908121619120.6911-100000@calclab5> On Thu, 12 Aug 1999 gscott@netcom.com wrote: > Can you follow up and tell us about: > The packaging (box or blister pack), G et al., It came in a plastic blister pack which I cut open with scissors. > The documentation and accessories that it comes with, 1. HP 49 G calculator, manufactured in Indonesia; the keyboard cover is Bondi Blue, like that on the original iMac from August 1998 2. _HP 49G Graphing Calculator User's Guide_ (HP F1633-90001), authored by the Australian Calculator Operation [ACO], printed in Singapore 3. _The HP 49G Pocket Guide_ (HP F1633-90101), authored by the ACO, printed in Singapore 4. 49G-to-49G connector cable, with 10-pin connectors on each end; a 10-pin to 4-pin cap (for 49G-to-48 connection) 5. Features and Proof of Purchase card (HP F1633A ABA), describing the 49G's capabilities, etc. 6. A small metal nameplate to stick on the back of the calculator on which to engrave one's name (HP 00048-80067) 7. HP Calculator Registration Card (HP F1633-90601), with prepaid air mail reply to Australia > Fit and finish opinion, Very nice indeed; finely machined; notable along either side of the screen are small runners for extra protection when sliding on the cover. > What do you think of the keyboard, Here is my ranking, from most preferred to least preferred: HP 48 TI-89 HP 49G In my opinion, there is nothing like an HP 48 keyboard, offering as it does a soft (requiring little pressure to push the keys) yet positive tactile response. The TI-89 keyboard is more clicky, but it is still soft (which is good in my opinion). The HP 49G keyboard has rubber keys, which still have a positive response, but require more pressure to push each key. To summarize, HP (in my opinion) had made the perfect keyboard in the HP 48. Why did they change it? Perhaps the new 49G keyboard is less expensive to manufacture. But I would gladly pay hard currency to have that legendary 48-feel back again. > and obviously how does the software look? The computer algebra system (CAS) is quite comprehensive. As a rough analogy, Maple without packages loaded would be like a TI-89, whereas the CAS on the 49G is like having lots of Maple's extra packages loaded. That said, we dearly need the HP 49G _Advanced User's Manual_ (AUM) as soon as possible to find out how to use all this functionality. (Until then, I try to get by with the existing Erable and ALG48 documentation off the Web.) And while I can respect HP's "environmental policy" and appreciate the fact that they will post the AUM on the Web, I want a real paper book that I can hold in my hands when I program. > What do the "TI" keys like APPS, TOOL , and CAT that were inactive in the > emulator actually do in the production version? The "TI" top row left-shift keys (Y=, WIN, GRAPH, 2D/3D, TBLSET, TABLE) are "available" only in ALGEBRAIC MODE. Why? Recall from the HP 48 that left-shift softkey STOres into a variable, as it attempts to do on a 49G in RPN mode. Not to worry, however, since in RPN mode the same functionality is available via APPS -> Plot Functions. Another way to access said functionality is SYMB -> GRAPH. Moreover, in RPN + Soft MENU mode this might be even quicker (once we get that AUM!). Pressing APPS yields the following chooser menu: 1. Plot functions... 2. I/O functions... 3. Constants lib... 4. Numeric solver... 5. Time & date... 6. Equation writer 7. File manager 8. Matrix writer 9. Text Editor 10. Math menu 11. CAS menu Chooser menus have proportionally-sized scroll bars for long lists of items. Of course, many 48-users will prefer soft menu access to many of these functions. The 49G provides both. TOOL gives contextual soft menus; very useful. CAT gives a chooser menu of all 49G commands, but without syntactical hints at the bottom of the screen as on a TI-89. > How does the speed feel? The GUI-stuff (choose menus, input forms, etc.) is *VERY FAST*. I believe they leveraged the MetaKernel code and wrote additional code in assembly to gain the speed---nice work! Some of the CAS commands give results as fast as analogous ones on a TI-89 (quite a feat given the faster Motorola processor on the 89 and a tribute to Parisse, Heiskanen, and Fiechter of Erable and ALG48 fame). On others (including many cookbook problems that students encounter in their texts), the TI-89 with the faster Moto (and/or heuristics in its version of Derive) provides results much more quickly that the 49G. Then of course there are the problems like Parisse posted (and I replied to) that the TI-89 cannot do at all, probably due to his implementation of the RISCH algorithm in the 49G. The good thing is that HP is once again back in the ring (after 6 years since the 48G series appeared). They took existing hardware and obtained some of the best third-party software written to rapidly bring something to market once they put there mind to it (Nov `97 - May `99), as was described by Eric Rechlin's summary of Jake Schwarz's post on hpcalc.org. There is something to be said, however, for massive horsepower. And if a future (say) StrongARM RISC processor in my next HP calculator needs its lithium-ion battery charged on occasion overnight, it's a price I'm willing to pay for performance. For the modern woman in her engineering calculus class wants the answer and she wants it *NOW*! And who are we to deny the customer? > Thanks! Sure thing; glad to oblige. - Art Belmonte Department of Mathematics Texas A&M University ------------------------------------------------------------ From: Joseph K. Horn <joehorn@jps.net> Newsgroups: comp.sys.hp48 Subject: HP49G Non-Obvious Tricks Date: Fri, 20 Aug 1999 12:07:39 GMT Message-ID: <7pjge7$kba$1@nnrp1.deja.com> Holding down the shift key while pressing PREV does a LAST MENU. During warmstarts, the 49G will run a program called 'STARTUP' if it exists. So if you get annoyed that certain things get reset at every warmstart (e.g. the header size), customize your warmstarts! When the 49G times out and powers down, it runs a program called 'STARTOFF' if it exists. I have mine chirp once before going to sleep. Not sure why, but it seems nice. You can control the length of time before the time-out power-down happens. The default is five minutes, but if you store a user binary integer into a variable called 'TOFF', then the time-out will be after that many CLOCK TICKS. (1 second = 8192 clock ticks). Anything less than 5 seconds (#A000h) defaults to 5 seconds. I don't know what the maximum is. Post 'em as you find more! (This is *so* fun!) Happy Hunting! ------------------------------------------------------------ From: "Christian Meland" <christian.meland@pfi.no_spam_> Newsgroups: comp.sys.hp48 Subject: SV: HP49G Non-Obvious Tricks Date: Fri, 20 Aug 1999 14:55:07 +0200 Organization: UNINETT news service Message-ID: <7pjj3c$ech$1@snipp.uninett.no> Joseph K. Horn <joehorn@jps.net> wrote in message news:7pjge7$kba$1@nnrp1.deja.com... > Holding down the shift key while pressing PREV does a LAST MENU. ... Nice. Here are some more: The 49' keyboard is made so that you shall not need to switch to/from alpha mode more than once while programming. To maximize the possibilities, some keys acts different when alpha-rightshifted or alpha and right-shift HELD DOWN: (all alpha lock) rs O ' rs+O omega rs 6 angle-symbol rs+6 degree-symbol rs 2 ! rs+2 i (factorial upside down) rs 3 ? rs+3 ? (upside down) rs spc , rs+spc ; There may be more, but these are the ones I know. -- Christian Meland Research Scientist, PFI N-7491 Trondheim, Norway Phone +4773550976, at home/cell +47 73574614/95961631 ------------------------------------------------------------ From: Joseph K. Horn <joehorn@jps.net> Newsgroups: comp.sys.hp48 Subject: Re: Menu 256 commands Date: Wed, 25 Aug 1999 23:35:00 GMT Message-ID: <7q1uim$krc$1@nnrp1.deja.com> > Ok, so I can find the 256 Menu that JKH says contains "Hacker's tools". Can I use one or more of them to compile SysRPL programs right on the 49? Yes and no. You can hack together anything you like, but almost all the System RPL entry points have moved, so you have to be careful. As best as I can figure, here's what the commands are: [->H] "To Hex". Same as ->ASC in the 48 HACK library. [H->] "From Hex". Same as COD in the 48 HACK library. [->A] "To Address". Same as ADDR in the 48 HACK library. [A->] "From Address". Same as XRCL in the 48 HACK library. [A->H] "Address to Hex". Converts #12345h to "54321". [H->A] "Hex to Address". Converts "54321" to #12345h. [->CD] "To Code". Turns a string of hex digits into a Code object. [CD->] "Code Out". Turns a Code object into a string of hex digits. [S->H] "String to Hex". Changes "Hi!" into "849612". [H->S] "Hex to String". Changes "849612" into "Hi!". [->LST] "Make List". Composite or meta-ob --> list. [->ALG] "Make Algebraic". Composite or meta-ob --> algebraic. [->PRG] "Make Program". Composite or meta-ob --> program. [COMP->] "Composite Out". Composite --> meta-object. [->RAM] "To RAM". Dumps any ROM object into RAM. [SREV] "String Reverse". Turns strings backwards. [POKE] Pokes raw hex into RAM. [PEEK] Extracts the raw hex at any address. [APEEK] ? Indirect PEEK? [R~SB] "Real <-> System Binary". Converts reals to bints & back. [SB~B] "System Binary <-> Binary". Bints to user binaries & back. [LR~R] "Long Real <-> Real". [S~N] "String <-> Name". Change "VERSION" to 'VERSION' & back. [LC~C] "Long Complex <-> Complex". [ASM->] "Assembly Out". Disassembles Code objects into source code. [BetaTesting] --> 184-byte string useful for testing string routines. [CRLIB] "Create Library". Works similar to HP48 lib creators. Please post any corrections and further discoveries. ------------------------------------------------------------ From: Eric Smith <eric-no-spam-for-me@brouhaha.com> Newsgroups: comp.sys.hp48 Subject: HP 49G memory map (was Re: 49g mem scanner and other) Date: 25 Aug 1999 17:41:40 -0700 Message-ID: <qhn1vfz83f.fsf@ruckus.brouhaha.com> Al Arduengo <exal@texas.net> writes: > To any of you privvy to some of the internals of the 49, I have the > following questions: > > 1. Are the keys for the 49 mapped the same as the 48S for purposes of > using the builtin mem scanner? I'm not privy to anything special, but I did learn a lot from the recent 1999 HHUC in Vancover, WA, and figured out a tiny amount on my own. Any errors below are my fault, not HP's. The memory viewer is accessed by pressing On-D (AKA On-F4), then A (F1). (On-D displays a menu which does not list "A". Several other unlisted keys will display various pictures of the developers, some of which can be scrolled with the arrow keys.) This starts you at address 40000. The left and right arrow keys move by one nibble (00001), the up and down keys by sixteen (00010), the add and subtract by 01000, and the multiply and divide by 10000. However, the 0-9 and A-F keys do not modify memory (as far as I can tell; perhaps there's a modify mode that I haven't found). Rather, they select which bank of the flash memory is visible from 40000..7ffff. There are two megabytes of flash, which are divided into sixteen banks of 128K each. Any one of the first four banks can be mapped to 00000..3ffff, and any of the sixteen can be mapped to 40000..7ffff. [Note that the most significant address line from the Saturn is not used by the Flash memory, so the same banks selected for 00000..3ffff and 40000..7ffff will also appear at 80000..bffff and c0000..fffff if you unconfigure the RAM that normally covers that area.] Of the sixteen banks, the first eight contain the HP 49G operating system, and the last eight contain the user Flash (used as port 2). There are hooks in place to handle the case that a future version of the operating system might take more than eight banks, in which case the user Flash would get fewer banks. The first half (64 Kbytes) of bank 0 of the Flash is the boot sector. This area is write-protected such that there is no way to overwrite it without modifying the hardware. This sector contains the boot code which validates the contents of the remaining system banks. If there is a problem, perhaps because of a failed upgrade attempt, the boot code allows the user to download the OS again. On reset, bank 0 is mapped to 00000..3ffff. After boot, a different bank is normally mapped there. (I'm not sure which one, but it can only be 1, 2, or 3.) The second half of bank 0 is not write-protected, and is apparently part of the port 2 user Flash (along with banks 8..f). The range from 40000..7ffff can be mapped to any of the Flash banks, including the user banks. This is also where the "ERAM" (port 1 user RAM) is configured when needed. Since there is 256K of ERAM, only half of it can be configured there at a given time. Since the memory configuration of the Yorke chip is very flexible, it is possible for future software or alternative operating systems to map the memory in different ways. For instance, an all-RAM configuration or a configuration with RAM at low addresses and Flash at high addresses is apparently possible. The "internal" serial number of the HP 49G (which is NOT the same as the "external" serial number stamped on the bottom of the case) is at address 00108 of Flash bank zero. Immediately after entering the memory viewer, this can be seen at 40108 by hitting the down arrow about 12 times. Note that even though the memory viewer maps bank zero to 00000..3ffff, it can't be seen at 00108 because the Yorke chip maps hardware registers at 00100 & up. Note that there is no way from User RPL to get the Flash serial number. According to the developers, this was a deliberate decision because if software depends on that serial number, an unscrupulous person could rewrite the flash with a modified version of the hypothetical serial number command that returned any desired value. But because the serial number is in the boot sector, it can't be changed in such a simple manner. HP said to expect that serial number reading code would be provided to software developers in the future. The boot sector version string may similarly be found in bank zero at 40214. Reportedly out of the remaining sectors of the system Flash, one is the system bank, two are used for the bulk of the HP 48 code, two for Metakernel, and one (or was it two) for the Computer Algebra System. The second half of Bill Wickes' adage "Life is short and ROM is full" is no longer true, as there is apparently still quite a bit of system Flash left over and available for future growth. Let's hope that the HP 49G is a successful product, so that HP will release new and improved software to put that Flash memory to good use. :-) The Metakernel and CAS splash screens can be seen briefly during boot. If you press "ON" at the right time, it will stay on screen for inspection. The CAS version number can be obtained by the "VER" command, and the overall OS version from the "VERSION" command. I haven't found a command to display the MK version, so I've only gotten it via the splash screen. Presumably the memory viewer could also be used to find it. If you want to go spelunking for interesting text messages, view the region >from 40000..7ffff, and don't forget that there are 8 banks worth trying (0..7). Also, remember that some messages start at an odd address. My HP 49G has OS version 1.05; HP said that 1.10 has been released to manufacturing, and that it should soon show up as a downloadable upgrade on the HP web site. Cheers, Eric ----------------------------------------------------------------------------- | 00000 3ffff | 40000 7ffff | 80000 bffff | c0000 fffff | ----------------------------------------------------------------------------- \ can be mapped / \can be mapped to/ \ normally always configured / \ to first four / \any flash, or / \ as user IRAM / \ banks / \ user ERAM / \ (HOME and port 0) / \ / \ (port 1) | \ / |----------/ \----------| -----------------------------| | | | | | | | | | | Flash - 16 banks of 128 KB | RAM - 3 areas | | -------------------- | -------------------- | | | bank 0 64K boot | | | 0-256K | / |\ | sector | /| | IRAM |<--- | --->| -------- |<---- | | (HOME & port 0)| | | 64K normal | |\ -------------------- |\ -------------------- /| --------->| 256-384K ERAM | | --->| bank 1 |<---- |\ ---------- (port 1)| |\ -------------------- /| --------->| 384-512K | | --->| bank 2 |<---- | -------------------- \ -------------------- /| --->| bank 3 |<---- | -------------------- /| | bank 4 |<---- | -------------------- /| | bank 5 |<---- | -------------------- /| | bank 6 |<---- | -------------------- /| | bank 7 |<---- | -------------------- /| | bank 8 |<---- | -------------------- | . | . | . | -------------------- / | bank f |<---- -------------------- ------------------------------------------------------------
Areas
General
Craig's Articles
Last modified Saturday, 2012-02-25T17:29:50-06:00.