Movatterモバイル変換


[0]ホーム

URL:


 
 

hp48sx

Model:48SXGeneral:Name:Scientific ExpandableHP-Code-Name:CharlemagneFamily:CharlemagneLogic:RPLFeatures:scientific, programmable, clock, alarmsdate arithmetic, hyperbolics, complexbase w/arithmetic, matrix, vector, lists,solver (algebraic, program), symbolicmath, symbolic integration, differentiation,plotting, graphics, etc., etc.Firsts:real units that work, bidirectional I/R,matrix editor, equation writer, kermit,3D complex, stack application, ->Q,serial port, overhead projectorsupport (from HP)Introduction:Date:1990-03-06Price:$350Discontinuation:Date:<2003-01-01Price:?Production-Run:?Display:Type:LCD, bit-mappedSize:8 lines x 22 chars, 64 x 131 pixelsNumber-Formats:sign, 12 mantissa, ., exp sign, 2 expsee data typesAnnunciators:<\left shift active/>right shift active\Gaalpha keyboard active((.))alarm has gone off or low batteryhourglass  busy/\ -->transmitting data\/the following ones are in the message area:RADradians modeGRADgrads modeR\<)Zpolar/cylindrical modeR\<)\<)polar/spherical modeHALTprogram has been halted1user flag 1 set2user flag 2 set3user flag 3 set4user flag 4 set5user flag 5 set1USRuser keyboard active for one keyUSERuser keyboard modeALGalebraic-entry modePRGprogram entry modeData:User-Visible:Smallest:1E-499Largest:9.99999999999E499Signif.-Digits:12Internal:Smallest:1E-49999Largest:9.99999999999999E49999Signif.-Digits:15Data-Types-and-Sizes:typeobjectsize (bytes)display as0real number10.51.23451complex number18.5(6.7,8.9)(6.7,\<)8.9)2string5 +length"XYZ" or$C 5 hello3real array7.5+8*elements[ 9 8 7 ]4complex array7.5+16*elements[ (1,2) (3,4) ]5list5+2.5*elements+{ "FIN" Name }  element storage6global name5 + lengthX7local name5 + lengthj8programas list\<< Z 4 * \>>9algebraicas list'A=B-3'10binary integer10.5# 1010b  1-64 bits# 765o# 987d# FEDh11graphics object10 + dataGraphic 131 x 64  header 2.5GROB 4 4 70607050  length 2.5  height 2.5  width  2.5  data <as required>12tagged object5+tag+objectarea: 4.8(tags can be applied to any object):area: 2.313unit object?55 km/s^214XLIB name?XLIB 645 215directoryas listDIR ... END16library?Library 645: ...17backup object?Backup HOMEDIR18built-in function 2.5COS19built-in command  2.5ROLL20address?<28FCh>21long real?Long Real22long complex?Long Complex23linked array?Linked Array24character?Character25code?Code26library data?Library Data27external?ExternalThe sizes are guesses.Memory:Named-Registers:noneFlags:64-1user flags-1principal solution only-2symbolic constants-3numeric results-5 to -10binary word size-11base 0)decimal 1)octal 2)binary 3)hex-15coordinates 0)rectangular2)cylindrical 3)spherical-17trig mode 0)degrees 1)radians 2)grads-19vector/complex-20underflow is error-21overflow is error-22infinite not an error-23there was positive underflow-24there was negative underflow-25there was overflow-26there was infinite-30plot y and f(x)-31disable curve filling-32graphics cursor dark background-33I/O to I/R-34print to serial-35I/O is binary format-36receive overwrite variable-37double-spaced print-38supress line feed-39supress Kermit messages-40display clock-4124 hour format-42DD.MM.YY format-43don't reschedule repeating alarms-44save acknowledged alarms-45 to -48set number of digits-49display format 0)STD 1)SCI 2)FIX 3)ENG-51fraction mark comma-52multi-line object display-53display () to mark precedence-55save last arguments-56beep off-57alarm beep off-58verbose messages off-59fast catalog display-60alpha key once to lock-61user key once to lock-62user mode active-63vectored enter on-64set by GETI and PUTI when indices wrapThe default flags are represented by #1008d.Register-Usage:ALRMDATcurrent alarmsCSTcustom menuEQcurrent equationIERRuncertainty of integrationIOPARI/O parameters {baud parity recv-pacingxmit-pacing checksum translate-code}PICTthe graphics displayPPARplotting parameters {(xmin,ymin)(xmax,ymax) indepvar resolution(xaxis,yaxis) type dependvar}PRTPARprinting parameters {delay "remap"linelen "lineterm"}der...user-defined derivativen1,n2,...integers created by ISOLs1,s2,...signs created by ISOL and QUAD\GSDATcurrent statistics data\GSPARstatistics parameters {indepcoldependcol intercept slope model }Numbered-Registers:noneProgram-Steps:memoryProgram-Editing:insert or replaceProgram-Display:alphaUser-RAM-Bytes:32KTotal-RAM-Bytes:32K (288K max)ROM-Bytes:256KMachine-State:flagsstackuser memorylibrariesFile-Types:nonePhysical:Technology-Used:CMOSProcessor:Clarke (147 pin TAB), 2 MHzChip-Count:5 (1LT8 (Clarke) CPU, 2x SED1181(display column driver), 256K ROM,32K RAM)Power-Source:3 AAA cellsContinuous-Memory:yesExpansion-Ports:2I/O-Ports:4-wire serial, I/R I/O, beeperClock:yesLength:180mmWidth:81mmHeight:25mmWeight:264gTemperature-Range:Operating:0 to 45 deg CCharging:-Storage:-20 to 65 deg CKeyboard:Switches:noneShift-Keys:left, orange, above leftright, blue, above rightalpha, white, rightUser-Defined-Keys:6 menu keys, entire keyboardKey-Arrangement::** ** ** ** ** **** ** ** ** ** **** ** ** ** ** **** ** ** ** ** ******* ** ** ** *** *** *** *** **** *** *** *** **** *** *** *** **** *** *** *** ***Key-Labels-Base-Keyboard::[][][][][][]MTHPRGCSTVAR^NXT'STOEVAL<|v|> xSINCOSTAN\v/xy1/xENTER+/-EEXDEL<-\Ga789\:-<\456x/>123-ON0.SPC+(The ON key has a white lower label of ATTN.)Key-Labels-Left-Orange-Above-Left::[][][][][][][PRINT][I/O][MODES][MEMORY][LIBRARY] PREVUPDEF->QGRAPHREVIEWSWAP 2  x xASINACOSATANx10eEQUATION EDIT2DPURGEDROPUSR[SOLVE][PLOT][ALGEBRA] ( )[][TIME][STAT][UNITS][ ]|-- LAST -|[]RADSTACKCMD\<< \>>CONT=,\pi{ }Key-Labels-Right-Blue-Above-Right::[][][][][][][][][][][][]HOMERCL->NUM[][][]\.d\.S\GSx\v/yLOGLNMATRIXVISIT3D[]CLR[][][][]#[][][][]_|-- LAST --|[]POLARARGMENU" "OFF-><--|\<): :Key-Labels-Alpha-White-Right::ABCDEFGHIJKLMNOPQRSTUVWX[]YZ[][][][][][][][][][][][][][][][][][][][][][]([] keys do the same as the base keyboard, but do not insert any extraspaces.)Key-Labels-Alpha-Left-Not-Shown::abcdefghijklmnopqrstuvwx&yz!?LC`^:()[]$L-currency [][]==<\<=\<< \>>CONT=,\pi{}(The three characters starting after LC are non-spacing diacriticsthat compose with the character typed next.)Key-Labels-Alpha-Right-Not-Shown::\Ga\Gb\GD\Gd\Ge\Gh\Gg\Gn\Goo|\|^\Gl'\Gm\GW\<-\|v\Gr\Gs\Gt%~\Gw\Gx-@+-\GZupside!upside?INS'~etc.#[]c|Y=\^o_[]\=/>\>=""OFF\->return\<)::(The three characters starting after INS are non-spacing diacriticsthat compose with the character typed next.)Programmable-Operations::!factorial or gamma" "identify string#identify binary number%compute percent%CHcompute percent change%Tcompute percent total'identify algebraic( )precedence; identify complex number*Hadjust plot height*Wadjust plot width+addition+/-change sign-subtraction->create local variable->ARRYcreate an array->DATEset the date->GROBcreate a grob->HMSconvert to HH.MMSS->LCDput grob into LCD->LISTcreate a list->NUMevaluate an object to a numeric value->Qconverts a number to a fractional equivalent->Q\piconverts a number to a fractional equivalent after factoringout \pi->STRcreate a string->TAGcreate a tagged object->TIMEset the time->UNITcreate a unit object->V2create a 2d vector->V3create a 3d vector0-9, .enter digit1/xreciprocal10^xcommon exponentiation: :identify tag<comparison test="equal" comparison test=="equality" comparison test>comparison testAampere unitaare unit (100 m^2)ABSabsolute valueACKacknowledge displayed past due alarmACKAacknowledge all past due alarmsACOSarc cosineACOSHhyperbolic arc cosineacreacre unitALOGcommon antilogarithmANDlogical / binary andAoAngstrom unitAPPLYapplies an operator to an expressionARCdraw an arcARCHIVEmakes a backup copy of HOMEarcminarc minutes unitarcsarc seconds unitARGcompute polar angle of a coordinateARRAY->separate array (28 compatability)ASINarc sineASINHhyperbolic arc sineASNassign user keyASRarithmetic shift rightATANarc tangentATANHhyperbolic arc tangentatmatmosphere unitATTACHattach a library to a directoryauastronomical unitAUTOauto-scales Y axisAXESset axes intersectionsbbarn unitB->Rconvert binary to realBARselect bar plotbarbar unit (pressure)BARPLOTdraw a bar plotBAUDset baudbblbarrel unitBEEPsound a beepBESTBITselect best fit modelBINselect binary modeBINSsort summation into binsBLANKblank grobBOXdraw a boxBqBecquerel unit of activityBtuBritish Thermal Unitbubushel unitBUFLENreturns the number of characters in the serial in bufferBYTESreturns object size and checksumCCouloumb unitcspeed of light constantC->PXconvert user to pixel coordinatesC->Rconvert complex to realcalcalorie unitCASE ... THEN ... END ... ENDcase statementcdCandela unitCEILnext larger integerCENTRidentify center of plot displayCFclear flagchainchain unitCHRconvert integer to characterCiCurie unitCKSMspecifies Kermit checksumCLEARclears the stackCLKADJadjust clock ticksCLLCDclear displayCLOSEIOclose serial portCLUSRclear all variablesCLVARclear all variablesCL\GSclear statistics datacmcentimeter unitcm/scentimeters/second unitcm^2square centimeters unitcm^3cubic centimeters unitCNRMcompute column normalCOLCTcollect like termsCOL\GSspecifies dependant and independant statistics variablesCOMBcombinationsCONconstant arrayCONICselects conic polotCONJcompute complex conjugateCONTcontinueCONVERTcompute unit conversionCORRcompute correlation coefficentCOScosineCOSHhyperbolic cosineCOVcompute covarianceCRprint a carriage-rightCRDIRcreate directoryCROSScompute cross productCTcarat unitcucup unitdday unitD->Rconvert degrees to radiansDATEreturn the dateDATE+add days to dateDDAYScompute days between datesDECspecify decimal modeDECRdecrements variableDEFINEcreate a user-defined functionDEGspecify degrees modeDELALARMremove an alarmDELAYspecify printing delayDELKEYSdelete key assignmentsDEPNDspecify dependant plot variableDEPTHsize of stackDETcompute determinantDETACHdetach a libraryDISPdisplay object in line of displayDO ... UNTIL ... ENDdo loopDOERRgenerate errorDOTcompute dot productDRAWdraw plotDRAXdraw axesDROPdrop one objectDROP2drop two objectsDROPNdrop N objectsDTAGremove tagsDUPduplicate objectDUP2duplicate two objectsDUPNduplicate N itemsdyndyn unitesymbolic constant 'e'EEXenter exponentELSEcontrol structure componentENDcontrol structure componentENGspecify ENG modeENTERenterEQ->separate equationERASEerase PICTergerg unitERR0clear errorERRMlast error messageERRNlast error numbereVelectron volt unitEVALevaluate objectEXPnatural exponentiationEXPANexpands algebraicEXPMnatural exponentiation - 1e^xnatural exponentiationFFarad unitfathfathom unitfbmboard foot unitfcfootcandle unitFC?is a flag clear?FC?Cis a flag clear? and clearFdyFaraday unitfermiFermi unitFINDALARMfind an alarmFINISHend Kermit server modeFIXspecify FIX display modeflamfootlambert unitFLOORnext smaller integerFOR ... NEXTfor loopFOR ... STEPfor loopFPfractional partFREEfree merged memoryFREEZEfreeze part of displayFS?is a flag set?FS?Cis a flag set? then clearftfoot unitft*lbffoot-pound unitft/sfeet per second unitftUSUS foot unitft^2square feet unitft^3cubic feet unitFUNCTIONspecify function plotggram unitgastandard freefall acceleration constantgalUS gallon unitgalCCanadian gallon unitgalUKUK gallon unitGETget an element from a list, vector, or matrixGETIget an element from a list, vector, or matrix and incrementgfgram-force unitGORgraphics ORGRADspecify GRADS modegradgrads unitgraingrains unitGRAPHenter the graphics environmentGXORgraphics XORGyGray unit of radiationHHenry unithhour unithahectare unitHALTsuspend executionHEXspecify hexadecimal modeHISTOGRAMspecify histogram plotHISTPLOTdraw a histogramHMS+hh.mmss additionHMS-hh.mmss subtractionHMS->convert to hh.mmssHOMEmove to home directoryhphorsepower unitHzHertz unitIDNidentity matrixIF ... THEN ... ELSE ... ENDif-statementIF ... THEN ... ENDif-statementIFERR ... THEN ... ELSE ... ENDerror trapIFERR ... THEN ... ENDerror trapIFTstack-based ifIFTEstack-based if, can be used in algebraicsIMreturn imaginary partininch unitINCRincrement variableINDEPspecify independent variable for plottinginH20inches of water unitinHginches of mercury unitINPUTaccept inputINVreciprocalin^2square inches unitIN^3cubic inches unitIPinteger partISOLisolate an equation variableJJoule unitKKelvin unitkcalkilocalorie unitKERRMreturn last Kermit error messageKEYcheck for key presskgkilogram unitKGETget data using KermitKILLabort all suspended programskipkilopound of force unitkmkilometers unitkm^2square kilometers unitknotknots unitkphkilometers per hour unitlliter unitLABELlabels axeslamlambert unitLASTreturn last argumentsLASTARGreturn last argumentslbAvoirdupois pount unitlbfpound-force unitlbttroy pound unitLCD->return LCD as a grobLIBSlists library objectsLINEdraw lineLINFITspecify linear modelLIST->separate list (28 compatability)lmlumen unitLNnatural logarithmLNP1natural logarithm + 1LOGcommon logarithmLOGFITspecify logarithmic modelLRcompute linear regressionlxlux unitlyrlight-year unitmmeter unitm/smeters per second unitMANTreturn mantissaMAXlarger of two numberMAXRlargest real numberMAX\GSlargest statistics valueMEANcompute meanMEMcompute available memoryMENUselect a built-in menuMERGEmerges RAM card into main memoryMeVmega electron volt unitmhomho unitmiinternational mile unitmilmil unitMINsmaller of two numbersminminutes unitMINRsmallest positive real numberMIN\GSsmallest statistics valuemiUSUS mile unitmiUS^2square US miles unitmi^2square miles unitmlmilliliters unitmmmillimeters unitmmHgmillimeters of mercury unitMODmodulusmolmole unitMpcmega parsec unitMPHmiles per hour unitM^2square meter unitM^3cubic meter unitNNewton unitNEGnegate an argumentNEWOBJcreate a new instance of an objectNEXTcontrol structure componentnminautical mile unitNOTlogical or binary notNUMconvert character to a numberN\GSnumber of entries in summationOBJ->separate objectOCTspecify octal modeOFFoffOLDPRTmaps printer output to HP 82249A character setOPENIOopen serial portORlogical or binary orORDERspecify order of objects in a directoryOVERselect objectozounce unitozflUS fluid ounce unitoztTroy ounce unitozUKUK fluid ounce unitPPoise unit of viscosityPaPascal unitPARAMETRICspecify parametric plotPARITYsets parityPATHreturns current pathpcparsec unitPDIMchanges the size of PICTpdlpoundal unit of forcePERMcompute permutationsPGDIRpurge directoryphphot unit of illuminancePICKfetch objectPICTspecify screen for graphicsPIX?is pixel set?PIXOFFturn pixel offPIXONturn pixel onpkpeck unitPKTsend a Kermit packet to a serverPMAXsets the upper-right plot coordinatePMINsets the lower-left plot coordinatePOLARspecify polar plotPOSfind position of object in anotherPR1print level 1 objectPREDVpredict the dependant variablePREDXcompute X given YPREDYcompute Y given XPRLCDprint screenPROMPTdisplay prompt and print programPRSTprint stackPRSTCprint stack compactlyPRVARprint a variablepsipounds per square inch unitptpint unitPURGEdeletes one or more variablesPUTput an element to a list, vector, or matrixPUTIput an element to a list, vector, or matrix and incremntPVARSreturn a lists of backup and library objectsPVIEWdisplay PICT at locationPWRFITspecify power modelPX->Cconvert pixel to user coordinatesqtquart unitQUADsolve a quadratic polynomialQUOTEreturns an argument unevaluatedRroentgen unitrradian unitR->Bconvert real to binaryR->Cconvert real to complexR->Dconvert radians to degreesRADspecify radians moderadrad unit of absorbed doseRANDcompute random numberRCEQrecalls the current equationRCLrecall valueRCLALARMrecall an alarmRCLFrecall flagsRCLMENUrecall current menuRCL\GSrecall the current statistics matrixRCWSrecall binary word sizerdrod unitRDMredimension a matrixRDZset the random number seedREreturn real partRECNreceive file from remote Kermit, save in nameRECVreceive file from remote Kermit, save as fileremrem unitREPEATcontrol structure componentREPLreplaceRESset the plot resolutionRESTORErestore a backup objectRLrotate leftRLBrotate left byteRNDround numberRNRMcompute row normal of a matrix (maximum of sums of absolutevalues of all elements of all rows)ROLLroll stackROLLDroll stack downROOTcompute numerical rootROTmove level 3 object to level 1RRrotate rightRRBrotate right byteRSDcompute residual to solution of system of linear equationsSSiemens unitssecond unitSAMEcomparison testsbStilb unit of luminanceSBRKsend a break on the serial lineSCALEspecify x and y scaleSCATRPLOTdraw a scatter plotSCIspecify scientific display modeSCONJconjugate the contents of a variableSDEVcompute standard deviationSENDsend the object using KermitSERVERgo into Kermit server modeSFset flagSHOWresolve all name referencesSIGNreturn the sign of a numberSINsineSINHhyperbolic sineSINVinvert the contents of a variableSIZEreturns the dimensions of an objectSLshift leftSLBshift left byteSLOPEcompute slopeslugslug unitSNEGnegates the contents of a variableSQsquaresrsteradian unitSRshift rightSRBshift right byteSRECVreads data from serial portStStoke unit of viscosityststere unit of volumeSTART ... NEXTloop with no index variableSTART ... STEPloop with no index variable, variable stepSTDspecify standard display modeSTEPcontrol structure componentSTEQstore into EQSTIMEsets serial timeoutSTOstore into variableSTO*store with multiplication into variableSTO+store with addition into variableSTO-store with subtraction into variableSTO/store with division into variableSTOALARMstore an alarmSTOFset system flagsSTOKEYSmake user key assignmentsSTO\GSstore into \GSDATSTR->separate string (28 compatability)STWSsets binary wordsizeSUBextracts portion of an objectSvSievert unit of dose equivalentSWAPexchange two objectsSYSEVALevaluates objectTTesla unittmetric ton unitTANtangentTANHhyperbolic tangentTAYLRcompute Taylor series approximationtbsptablespoon unitTEXTselects the stack display (as opposed to graphics)THENcontrol structure componentTHEN ... ENDcontrol structure componentsthermtherm unitTICKSreturn time in clock ticksTIMEreturn the current timeTLINEdraw line toggling pixelsTMENUdisplay temporary menutonshort ton unittonUKUK ton unittorrtorr unitTOTcompute statistics sumsTRANSIOselect character translationTRNtransposeTRUNCtruncates a numberTRUTHspecify truth plottspteaspoon unitTSTRconvert date and time to stringTVARSlists variables of typeTYPEreturns type of an objectuunified atomic mass unitUBASEconvert to SI base unitsUFACTfactor compound unitUNTILcontrol structure componentUPDIRmove up one level in pathUTPCupper-tail Chi-Square distributionUTPFupper-tail F-distributionUTPNupper-tail normal distrbutionUTPTupper-tail t-distributionUVALreturn numeric portion of a unitVvolt unitV->separate a vectorVARcompute variancesVARSreturn list of variablesVTYPEreturn variable's typeWWatt unitWAITpause execution for time or keyWbWeber unitWHILE ... REPEAT ... ENDwhile statementWSLOGreturn warm start logxmultiplicationXCOLspecify independant variableXMITsent serial dataXORlogical or binary xorXPONreturn exponentXRNGspecify x-axis plotting rangeXROOTxth root of yx\v/yxth root of yx^2squareYCOLspecify dependant variableydyard unityd^2square yard unityd^3cubic yard unityryear unitYRNGspecify y-axis plotting rangey^xpower[ ]identify array\.ddifferentiate\.Sintegrate\:-division\<)identify polar or spherical coordinates\<< \>>identify program\<=comparison test\=/comparison test\>=comparison test\Gmmicron unit\GSsum expression over range\GS+add to statistics\GS-add to statistics\GSLINEcompute best-fit line\GSXcompute sum of X data\GSX*Ycompute sum of products of X and Y data\GSX^2compute sum of squares of X data\GSYcompute sum of Y data\GSY^Wcompute sum of squares of Y data\GWohms unit\pisymbolic constant\v/xsquare root\^odegrees units\^oCdegrees C units\^oFdegrees F units\^oRdegrees R units^power_identify unit{ }identify list|where; substitute symbolics for namesNon-Programmable-Operations::(())parenthesize neighbors(<-expand subexpression left/>(<-repeat (<- until no change*1multiply by 1+1-1add and subtract 1+COLinsert a column of zeros+ROWinsert a row of zeros,separate numbers-()double negate and distribute->()distribute prefix->)expand subexpression right/>->)repeat (<- until no change->DEFexpand trig and hyp functions into EXP and LN->STKput object onto stack-COLdelete a matrix column-ROWdelete a matrix row/1divide by 1/>right shift1-VARmakes entry the statistical matrix and displays menu page 21/()double invert and distribute12/24toggle 12 and 24 hour display format2-VARmakes entry the statistical matrix and displays menu page 4 2Dassemble or disassemble a 2d vector3Dassemble or disassemble a 3d vector<-erase last character or object<-->commute arguments<--|enter newline<-Aassociate left/><-Arepeat <-A until no change<-Ddistribute left/><-Drepeat <-D until no change<-DELdelete item to the left/><-DELdelete all items to the end of the line<-Mmerge factors left/><-Mrepeat <-M until no change<-SKIPmove left one item<-Tmove term left/><-Trepeat T-> until no change<-WIDdecrease column width<\left shift<|left arrow>DATEset alarm date>TIMEset alarm timeA->associate right/>A->repeat A-> until no changeA/PMspecify AM/PM format in clockA/PMspecify AM/PM format in alarmADJSTTIME sub-menuAFadd fractionsALGEBRAbring up menuALRMTIME sub-menuANGLUNITS sub-menuAREAcalculate area under plotAREAUNITS sub-menuARGenable/disable LAST ARGASCIIspecify ASCII/binary Kermit transferATTNabort execution; exit special environments; clear messagesAUTOscale Y axis and draw plot/>AXESrecall axes intersectionBASEMTH sub-menuBEEPenable/disable beepBOXdraw boxBRCHPGM sub-menuCATSTAT sub-menuCENTredraw graph centered/>CENTrecall center coordinatesCIRCLdraw circleCLKenable/disable clock displayCLRclears screen or pictCMDenable/disable LAST CMDCNCTenable/disable curve fillingCOLCTcollect like termsCOORDdisplays cursor coordinatesCSTcustom menuCTRLPGM sub-menuD->distribute right/>D->repeat D-> until no changeDAYrepeating alarm intervalDBUGdebuggerDELdelete next itemDEL->delete item to the right/>DEL->delete all items to the end of the line/>DEPNrecall dependant variableDINVdouble invertDNEGdouble negateDOT+turn on pixel drawingDOT-turn off pixel drawingDRAWplot equation with axesDRPNdrop items from stackDSPLPGM sub-menuDUPNduplicate itemsE()replace power-of-power with power-productECHOcopy items to stackEDEQedit equationEDITEDIT menuEDIT\GScopy statistics data to matrix writerELECUNITS sub-menuENRGUNITS sub-menuENTRYtoggle algebraic and program entry modesEQ+add equation to EQ/>EQ+remove last entry from EQEQUATIONequation writer applicationEXECset alarm execution action/>EXECrecall alarm execution actionEXECSshow alarm execution actionEXITexits environemntEXPRhighlights subexpressionEXPR=return expression or equation valuesEXTRmove cursor to extremumE^replace power-of-product with power-of-powerF'plot first derivativeF(X)display value of functionFASTtoggles display of equation names or names and valuesFCNPLOT sub-menuFM,/FM.set fraction markFORCEUNITS sub-menuGO->set matrix entry mode to left-to-rightGOvset matrix entry mode to top-to-bottomGRAPHinvokes scrolling modeHOURrepeating alarm intervalHR+adjust hoursHR-adjust hoursHYPMTH sub-menuI/OI/O menu/>INDEPrecall independent variableINSswitches between insert and replace editingIR/Winfrared/wire selectionISECTmove cursor to closest intersectionKEEPclear stack levels above currentKEYSremove graphics application menu labelsL()replace product-of-log with log-of-powerL*replace log-of-power with product-of-logLABELlabels axesLAST ARGretains stack and restores last argumentsLAST CMDreturn last command lineLAST MENUreturn last menuLAST STACKrestore last stackLENGUNITS sub-menuLEVELenter level number to stackLIBRARYbring up menuLIGHTUNITS sub-menuLINEdraw lineM->merge factors right/>M->repeat M-> until no changeM/Dtoggles date display formatMASSUNITS sub-menuMATRXMTH sub-menuMATRIXmatrix writer applicationMEMORYbring up menuMIN+adjust minutesMIN-adjust minutesMODESbring up menuMODLSTAT sub-menuMTHbring up menuNEWstores algebraic or matrix under new nameNEXTdisplay but doesn't execute next objectNONEcancel alarm repeatNXEQrotate list in EQNXTnext screen or menuOBJPRG sub-menuOFFoffONturn onON + +adjust contrastON + -adjust contrastON + A + Fclear all memoryON + Bcancels ON + selectionON + Cbring calculator to known state without clearing memoryON + Dinteractive self-test, exit with ON + C<-memory scanner (see below)Adisplay CPU speedBpress ENTER for display patternsCcheck internal ROMDcheck internal RAMDELsummary of testsEtest keyboardENTERinitialize test timesFpartial keyboard testGESD testHUART loop back testIwired UART echoJidentify what's plugged inKport RAM device testLblank displayMsent time to I/R portNreceive time from I/R portOwireless loop back testPwriteless UART echo testSshow test start timeTshow test fail timeUlooping testVlooping testWlooping testXlooping testYlooping testZlooping testdebugger / memory scanner commands:+move by + #1h nybbles+/-go to address #F000Ah -move by - #1h nybbles.transmit #10h nibbles to infrared and serial0-9,A-Fenter a digit into memory, move by + #1h nybbles1/Xgo to address #F0A8Ch or #F1210h (display, see below)<-refreshDELgo to port 2 address #C0000hEEXgo to address #80000h (port 1?)ENTERgo to address #00100h (display controller?)EVALexecute at addressON + CexitsSPCtransmit #1000h nybbles to serial (9600 baud)Xgo to display RAM addressxmove by + #100h nybblesYhalt log addressZgo to port 1 address\:-move by - #100h nybbles\|vmove by - #1000h nybbles\|^move by + #1000h nybblesWhen you first enter scan mode, the address is #705D9h.Pressing EVAL at this address displays the version number.(See also notes.)ON + Econtinuous self-test, stop with ON + CON + MTHprint screenON + PRINTgraphics screen dumpON + SPCenters coma mode, which turns off all timers and saves powerON + TIMEcancels next repeating alarmPARTSMTH sub-menu/>PDIMrecall PICT sizePICKcopies object to level 1PLOTbring up menuPLOTRPLOT sub-menuPOLARswitches rectangular and polar coordinatesPORT0LIBRARY sub-menuPORT1LIBRARY sub-menuPORT2LIBRARY sub-menuPOWRUNITS sub-menuPRESSUNITS sub-menuPREVprevious screen or menu/>PREVfirst menu pagePRGbring up menuPRINTbring up menuPROBMTH sub-menuPTYPEPLOT sub-menuPURGpurges selected equationRADswitches radians and degrees modeRADUNITS sub-menuRCLKEYSrecall user key assignments/>RESrecall spacingRESETreset plot parametersREVIEWbrings up data in appropriate applicationROLLroll object to level 1ROLLDroll object in level 1 to hereROOTmove cursor to rootRPTTIME sub-menuRULESequation writer sub-menuR\<)Zspecify polar/cylindrical modeR\<)\<)specify polar/spherical mode/>SCALErecall scaleSECrepeating alarm intervalSEC+adjust secondsSEC-adjust secondsSETTIME sub-menuSETset alarmSETUPI/O sub-menuSKIP->move right over objectSLOPEcompute slopeSOLVEbring up menuSOLVRbring up SOLVE menuSPCtype a spaceSPEEDUNITS sub-menuSSTsingle stepSSTvsingle step enter procedureSTATbring up menuSTKPRG sub-menuSTKenable/disable LAST STKSYMtoggle symbolic/numeric resultsT->move term right/>T->repeat T-> until no changeTEMPUNITS sub-menuTESTPRG sub-menuTIMEbring up menuTIMEUNITS sub-menuTRG*expand trig and hyp functions of sums and differencesUNITSbring up menuUSRuser keyboard: press once and user keyboard is enabledfor one key; press twice and user keyboard is lockedon; third press clears user keyboardvmove downVARvariable sub-menuVECtoggles vector and array modesVECTRMTH sub-menuVIEWviews object in level 1VISCUNITS sub-menuVISITedit object named by level 1 objectvMATCHmatch and replace, beginning with top level expressionVOLUNITS sub-menuWEEKrepeating alarm intervalWID->increase column widthXselect X axis zoomXAUTOselect X axis zoom with auto scaling/>XCOLrecall independant variable/>XRNGrecall x axis display rangeXYselect X and Y axis zoomXYZselect rectangular modeYselect Y axis zoom/>YCOLrecall dependant variable/>YRNGrecall Y axis display rangeZ-BOXzoom in to box/>Z-BOXzoom in to box, autoscaling YZOOMGRAPH sub-menu\Gaalpha keyboard: press once and alpha keyboard is enabledfor one key; press twice and alpha keyboard is lockedon; third press clears alpha keyboard^move up^1raise to power 1^MATCHmatch and replace, beginning with subexpressions^STKselects interactive stack|>right arrowMenus::ALGEBRA:COLCTEXPAISOLQUADSHOWTAYLR^MATvMAT|APPLYQUOT->Q\pi/>ALGEBRA:equation catalogPLOTRSOLVREQ+EDIT->STKVIEWORDERPURGFASTCST:custom menuEDIT:<-SKIPSKIP-><-DELDEL->INS^STKEQUATION:type <| to activate SELECTION menuSELECTION:RULESEDITEXPRSUBREPLEXITRULES:<-TT->DNEGDINV*1^1/1+1-1COLCTthese are not in proper order:(())(<-->)<--><-MM-><-AA->->()<-DD->AF-()1/()L*L()E^E()->DEFTRG*GRAPH:ZOOMZ-BOXCENTCOORDLABELFCNZOOM:XAUTOXYXYEXITFCN:ROOTISECTSLOPEAREAEXTREXITF(X)F'NXEQI/O:SENDRECVSERVEKGETFINISSETUPRECNPKTKERROPENICLOSEXMITSRECVSTIMESBRKBUFLESETUP:IR/WASCIIBAUDPARITCKSMTRAN/>I/O:directly to server modeLIBRARY:current librariesPORT0PORT1PORT2MATRIX:EDITVEC<-WIDWID->GO->GOv+ROW-ROW+COL-COL->STK^STKMEMORY:MEMBYTESVARSORDERPATHCRDIRTVARSPVARSNEWOLIBSATTACDETACMERGFREEARCHIRESTOPGDIR/>MEMORY:STO+STO-STO*STO/INCRDECRSINVSNEGSCONMODES:STDFIXSCIENGSYMBEEPSTKARGCMDCNCMLCLKDEGRADGRADXYZR\<)ZR\<)\<)HEXDECOCTBINFM,/>MODES:ASNSTOKRCLKDELKMENUCSTTMENRCLMSTOFRCLFSFCFFS?FC?FS?CFC?CMTH:PARTSPROBHYPMATRVECTRBASEPARTS:ABSSIGNCONJARGREIMMINMAXMOD%%CH%TMANTXPONIPFPFLOORCEILRNDTRUNCMAXRMINRPROB:COMBPERM!RANDRDZUTPCUTPFUTPNUTPTHYP:SINHASINHCOSHACOSHTANHATANHEXPMLNP1MATR:CONIDNTRNRDMDETRSDABSRNRMCNRMVECTR:XYZR\<)ZR\<)\<)CROSSDOTABSV->->V2->V3D->RR->DBASE:HEXDECOCTBINSTWSRCWSRLRRRLBRRBR->BB->RSLSRSLBSRBASRPLOT:PLOTRPTYPENEWEDEQSTEQCATPLOTR:ERASEDRAWAUTOXRNGYRNGINDEPDEPNPTYPERESCENTSCALERESETAXESDRAXLABEL*H*WPDIM/>INDEP:recall value/>DEPN:recall valuePTYPE:FUNCCONICPOLARPARATRUTHBAR/>RES:recall value/>AXES:recall value/>PDIM:recall valuePTYPE:FUNCCONICPOLARPARATRUTHBAR/>STEQ:RCEQ/>PLOT:direct to PLOTR menuPRG:STKOBJDSPLCTRLBRCHTESTSTK:OVERROTROLLROLLDPICKDEPTHDUPDUP2DUPNDROP2DRPNOBJ:OBJ->EQ->->ARR->LIST->STR->TAGR->CC->RDTAG->UNITTYPEVTYPESIZEPOSREPLSUBNUMCHRPUTGETPUTIGETIDSPL:PICTPVIEWLINETLINEBOXARCPIXONPIXOFPIX?PX->CC->PXSIZE->GROBLANGORGXORREPLSUB->LCDLCD->CLLCDDISPFREEZTEXTCTRL:DBUGSSTSSTVNEXTHALTKILLINPUTPROMDISPMENUWAITKEYDOERRERRNERRMERR0BEEPOFFBRCH:IFCASESTARTFORDOWHILETHENENDNEXTSTEPUNTILREPEAELSEIFERRIFTIFTE<\IF:IF ... THEN ... END/>IF:IF ... THEN ... ELSE ... END<\CASE:CASE ... THEN ... END ... END/>CASE:THEN ... END<\START:START ... NEXT/>START:START ... STEP<\FOR:FOR ... NEXT/>FOR:FOR ... STEP<\DO:DO ... UNTIL ... END<\WHILE:WHILE ... REPEAT ... END<\IFERR:IFERR ... THEN ... END/>IFERR:IFERR ... THEN ... ELSE ... ENDTEST:ANDORXORNOTSAMETYPE==\=/<>\<=\>=SFCFFS?FC?FS?CFC?CPRINT:PR1PRSTPRSTCPRLCDPRVARCRDELAYOLDPR/>PRINT:does a PR1SOLVE:SOLVRROOTNEWEDEQSTEQCAT/>STEQ:RCEQSOLVR:list of solver variablesLEFT=RT= or EXPR=/>SOLVE:direct to SOLVR menunamedoes STO<\namedoes solve for/>namedoes RCLSTACK application menu:ECHOVIEWPICKROLLROLLD->LISTDUPNDRPNKEEPLEVELSTAT:\GS+CL\GSNEWEDIT\GSSTO\GSCATTOTMEANSDEVMAX\GSMIN\GSBINSXCOLYCOLBARPLHISTPSCATR\GSLINELRPREDXPREDYCORRCOVMODL\GSX\GSY\GSX^2\GSY^W\GSX*YN\GS<\\GS+:\GS-/>STO\GS:RCL\GSCAT:1-VARPLOT2-VAREDIT->STKVIEWMODL:LINLOGEXPPWRBEST/>STAT:direct to page 2 of STAT menuTIME:SETADJSTALRMACKACKACATDATE+DDAYSDATETIMETSTRTICKS->HMSHMS->HMS+HMS-SET:->DAT->TIMA/PM12/24M/DADJST:HR+HR-MIN+MIN-SEC+SEC-CLKAALRM:>DATE>TIMEA/PMEXECRPTSETSTOALRCLALDELALFINDARPT:WEEKDAYHOURMINSECNONE/>TIME:direct to alarm catalogPURGEXECSEDIT->STKVIEWUNITS:LENGAREAVOLTIMESPEEDMASSFORCEENRGPOWRPRESSTEMPELECANGLLIGHTRADVISCLENG:MCMMMYDFTINMPCPCLYRAUKMMINMIMIUSCHAINRDFATHFTUSMIL\GmAFERMIAREA:M^2CM^2BYD^2FT^2IN^2KM^2HAAMI^2MIUS^ACREVOL:M^3STCM^3YD^3FT^3IN^3LGALUGALCGALQTPTMLCUOZFLOZUKTBSPTSPBBLBUPKFBMTIME:YRDHMINSHZSPEED:M/SCM/SFT/SKPHMPHKNOTCGAMASS:KGGLBOZSLUGLBTTONTONUTOZTCTGRAINUMOLFORCE:NDYNGFKIPLBFPDLENRG:JERGKCALCALBTUFT*LBTHERMEVEVPOWR:WHPPRESS:PAATMBARPSITORRMMHINHGINH20TEMP:\^oC\^oFK\^oRELEC:VAC\GWFWFDYHMHOSTWBANGL:\^oRGRADARCMIARCSSTLIGHT:FCFLAMLXPHSBLMCDLAMRAD:GYRADREMSVBQCIRVISC:PSTunit:adds the unit to the current object (real number)<\unit:convert to unit/>unit:divide the current object by unit/>UNITS:CONVUBASEUVALUFACT->UNITVAR:user variablesnamedoes EVAL<\namedoes STO/>namedoes RCLBugs/ROM-Versions::ADEFINE rounds values according to the current display format.ABCDentry of complex in form (A,\<)B) returns 'B*COS(A)+i*SIN(B)'and not vice-versa.AExecuting NXEQ from the graphics environment with flag -3 setmay overwrite the current equation with a numeric value.AKGET will erase memory if you transfer a zero length file.AIf flag -41 is set, the alarm catalog will show the incorrectones-digit for minutes.ABCINV returns incorrect result with an 8x8 or larger matrix.?ABCD?Having the time displayed while doing a backup may invalidatethe backup.????"Ubase"-ed units are represented as a seven-byte value, with eachbyte being the intgeral power (-128 to +127) of thecorresponding SI unit.  Consequently, things get a littleweird if you have computations that involve fractional unitsor units to powers outside the specified range.Try: 1 m 255 ^ UBASEThis is not truly a bug.?ABCDThe sequence:-33 SF -34 SFsends printing output to the I/R interface using an 8-bitformat and not the 12-bit "redeye" format.  This is one ofthose holes where HP defines three of the four 2-bitcombinations.?ABCDThe sequence:STD 19 1/x e-12 - \->QProduces a fraction that clearly has not been reduced tolowest terms.?ABCDPVIEW blows up if given pixel coordinates just to the top leftof the grob ("{ #-1 #-1 }").?ABCDIf the clock is running while a GROB is being displayed, theclock valuies are written into and erased from the GROB.?ABCDIn the Matrix Writer, any cell containing an absolute valuebetween 1E5 and 1E6 can't be copied to the stack.Explanatio (from flavio@cflav.sublink.org (Flavio Casetta)):When you press [->STK] a subroutine recalls the current matrix(or vector) along with the cursor coordinates.  Then asubroutine extracts the element from the matrix according withthe actual dimension of the array.  If the element does notexist it returns a null string.  Then a subroutine checks forthe presence of a null string.  And here is the pitfall!  Theroutine checking for the null string does not attempt to checkin advance the object type lying on the stack. Numbers in therange 100000-999999 have the first five nibbles (3 of exponentand 2 of mantissa) matching the null string pattern. Try outwith ->ASC !  Nevertheless the bug applies also to Complexnumbers within the Real part in the same range.  In effect ifyou supply a number like 100000.111111, you will find that the[->STK] works because the last two digits of the mantissa areno longer zeros.  Thus the actual range of numbers is100000-999999 rounded to 10 decimal significant digits.In conclusion the bug is due to a call to a subroutine whoseexpected argument is a string and not a number.  The mainroutine is located at #63209h and always returns the originalobject plus a flag.  A TRUE means that the string is null, aFALSE means it is not null.  Notice that it is not a buggyroutine.  Simply it should not be called unless you have astring on the stack.I don't see a possible workaround in the usual sense of theword, unless you enter all numbers with at least 11significant digits.  What it can be done is a patch routine inRAM consisting of a menu that fixes the problem. Please keepin mind that when the Matrix Writer is not running, you maycorrupt the memory by calling any of these subroutines.Supposedly, no version F ROM will ever be released for the 48.  Thisis due to the "leak" via the release of the System RPL tools lastAugust.  (After each version is released, the internal tools all havetheir version numbers incremented to prevent confusing any code thatthey affect with released code.  Someone forgot to fix this beforereleasing the tools.)  There will also never be a version G ROM.  Thisis because they messed things up while tinkering.  There _may_ (as in,"not impossible") be a version H ROM.A version J ROM (no word on I) appears to have been released aroundDecember 1992.  The only visible difference appears to be a factor oftwo or so speedup in the Equation Writer.Notes::In the spring of 1991, HP offered a "trade in" program whereby all48SX owners could trade their units in on one with Revision E ROMs.The Owner's Manual was completely rewritten and published in early1992.This unit was left in production after the introduction of the 48GXonly because there was a bunch of software out there that didn't followthe rules and wouldn't run on a GX.Don't use PICT STO: this causes display "snow."  Instead, usesomething like PICT { #0h #0h } ROT REPL.These ASCII characters can't be typed from the keyboard: ; \ ^ `The following and memory scanner information is from Alonzo Gariepy(alonzo@microsoft.UUCP, posted to Comp.sys.handhelds on 6 March 1990):00000-0FFFFROM (and registers for the display controller,I/O, and timers)10000-6FFFF     ROM70000-7FFFFUser/Display RAM (overlaid on Font/Strings ROM)80000-BFFFF     128k for plug-inC0000-FFFFF     128k for plug-inF0000-FFFFFUser/Display RAM (when 70000-7FFFF is used forFont/Strings ROM)The most interesting thing about scan mode is that the memory layoutis different than in normal operation.  The 32K of user/display RAM ismoved from 70000 to F0000 so that you can see the ROM that is normallyhidden underneath.  In normal operation, the address space at 70000 isshared between this ROM and display RAM.  The hidden ROM is used forcode and data related to I/O, such as strings and font bitmaps, aswell as for diagnostic functions, such as the self tests and scanmode.The 48 was called the 1152 at least at some point during designdevelopment.  At the March 1992 Drexel Conference, some of the mockupswere on display (courtsy of Dennis York from HP).  The mockupsconsisted of a 41-ish case with a (fake) 3-line display, a 71-ishcase, a clamshell (18C-ish) case, and a case that looked a lot like a48.  In addition was a mockup of a cassette drive.Why can't there be more card slots in the 48SX?  (Other than casetooling.)  The the address space is full.  Of the 512 KBytes (1MNybble) of address space, 256 KBytes is used for the ROM and eachslot has 128 KBytes of address space dedicated to it.  (This is alsowhy the TDS 512 KByte cards must be bank-switched.)  Thus, the addressspace is full already.  But wait!  What about the 32 KBytes ofbuilt-in RAM?  It lives on top of the last 32 KBytes of ROM.  Whencode is executed from here, the 48 must map the ROM in for reading(writes go to the RAM, of course), copy the required code to RAM,unmap the ROM, execute the code, and finally delete it from RAM.  Allof this entails a 20-30% performance hit.Apparently, the HP48's toolmaker dictated that the shift keys had tobe located around the outside edge of the keyboard.  (I assume that ithas to do with where there is enough room for the extra traces.)If you pull a 48 RAM card and hold it in your hand, it has about a 2week lifetime.  If you put the same card (right away!) into thestorage case, the lifetime increases to about a year.  This is becausethe storage case incorporates a conductive strip which keeps the leadsgrounded.For a while during production, 48 cases were being warped.  This wasdue to a capacitor physically interfering with the case duringassembly.  The line was shut down for a week to find this problem.After marketing complained to R&D about (not) making it easy tointernationalize the products, the 48 was designed to be fullycustomizable.  Only one version (English) was released.Some people think that you can reset a 48 by reversing the batteries:    >>> DON'T <<<as you will tend to destroy your machine.The product number (48) was chosend to be a combintion of 41 and 28.----------------------------------------------------------------------Article: 3937 of comp.sys.hp48From: akcs.joehorn@hpcvbbs.cv.hp.com (Joseph K. Horn)Date: Mon, 14 Sep 1992 06:40:02 GMTFor those suffering from failing HP48 LCD's, the following "official"posting about it from HP's BBS sysop is the final word.  Due to itsimportance, it was included on Goodies Disk #7, in the POSTINGSsubdirectory.  Hope it helps.  -jkh-===============(Feedbackto.hp)  Item: 248  Resp: 3 by sanker@hpcvbbs.cv.hp.comAuthor: [Greg Sanker]  Date: Tue Apr 07 1992 14:35 I checked with the Hardware folks, and here is the scoop:There was a specific problem that may or may not occur in a limitedproduction of units. The problem has been isolated to the LCD andhas been resolved with the vendor. The potentially defective LCD'swere installed in HP 48's with serial numbers ranging 3013AXXXXX thru3044AXXXXX. Symptoms of the problem are a pronounced black spot in theupper left hand corner of the display and/or dark/missing columns3,5,7 and/or 9.If a unit is failing for the above reasons, subject toverification by the Corvallis Service Center, it will be covered aspart of the standard warranty, even if the standard warranty periodhas expired.Greg (SYSOP)============----------------------------------------------------------------------From: akcs.joehorn@hpcvbbs.cv.hp.com (Joseph K. Horn)Date: Fri, 23 Oct 1992 07:40:08 GMTMessage-ID: <2ae7a62d.1940.1comp.sys.hp48.1@hpcvbbs.cv.hp.com>There is a little-known "parentheses anomaly" which can easily beturned on and off like this:P.A. ON:  Put '2^3' on the stack and then press and hold down thedown-arrow key and then QUICKLY (before the EquationWriter begins)press the ON key, and release both.  You'll see it change to '2^(3)'.All powers, square roots, and divisions will display withfunction-style parentheses.P.A. OFF: Just enter and then exit the EquationWriter.  A warmstartalso clears this strange mode, but that's a little drastic.----------------------------------------------------------------------From: akcs.joehorn@hpcvbbs.cv.hp.com (Joseph K. Horn)Date: Thu, 4 Feb 1993 08:40:11 GMTSubject: EquationWriter Bug Fixed in Rev JMessage-ID: <2b70ccfa.2935comp.sys.hp48@hpcvbbs.cv.hp.com>              Rev A-E EquationWriter Bug & Rev J Bugfix              -----------------------------------------                         observed by Joe Horn                         +------------------+                         |  Rev E behavior  |                         +------------------+Clear flag -53 first (the Precedence Flag).On a Rev E, put '((1+2)/(3+4))^5' on the stack and press down-arrow.You'll see:                           5                    / 1+2 \                    | --- |                         (A)                    \ 3+4 /which is as it should be.  But now press [orange-shift] [+]; see themessage "Implicit () off" momentarily; press [left-arrow] (notbackspace), then press the [EXIT] softkey.  The expression getsmangled into this:                      1+2                  -----------                       (B)                        (5)                   (3+4)which is not equal to expression (A) above!  Bug, yes?  Press [ON] toabort the process.Now set flag -53, then repeat the above procedure.  First you see:                           5                    / 1+2 \                    | --- |                         (C)                    \ 3+4 /which is the same as (A) above; but continuing as before, you see:                             (5)                    /  1+2  \                    | ----- |                       (D)                    \ (3+4) /which *is* equal to the original.  Thus the bug can be worked aroundby keeping flag -53 set (not a pleasant solution).                         +------------------+                         |  Rev J behavior  |                         +------------------+Major difference: after pressing down-arrow, Rev J goes directly intographic mode, so you have to press ON and then EXIT to get into theequation editor (which Rev E goes directly into).  But that's pettycash compared to the following big change.The same sequence of operations, first with flag -53 clear, then set,exactly as detailed above, yields these four displays in a Rev J:                             5                    / (1+2) \                    | ----- |                       (A')                    \  3+4  /(notice the extra parentheses?) and then:                             5                    / (1+2) \                    | ----- |                       (B')                    \ (3+4) /which *is* equal to (A'); nothing at all like expression (B) above!and then:                             5                    / (1+2) \                    | ----- |                       (C')                    \  3+4  /which is the same as (A') above; and then:                             5                    / (1+2) \                    | ----- |                       (D')                    \ (3+4) /which is also equal to (A').  No bug in Rev J.SUMMARY: Rev A-E have a bug in the EquationWriter that can mangleexpressions if flag -53 is clear (the default) and if "ExplicitParentheses" mode is toggled.  This bug has been fixed in Rev J.Unfortunately (as you can see above) Rev E *always* puts parenthesesaround polynomial numerators.  It is therefore impossible to use the->GROB command on a Rev J to create a GROB that looks like expression(A) above; the simplest that can be had is expression (A').Another minor change, while I'm at it: Rev A-E don't change the menuwhen you press REPL; Rev J automatically flips to the appropriateRULES menu.None of these changes are documented anyplace that I'm aware of.Article: 9912 of comp.sys.hp48From: akcs.joehorn@hpcvbbs.cv.hp.com (Joseph K. Horn)Date: Wed, 9 Jun 1993 07:40:10 GMTSubject: Re: WSLOGMessage-ID: <2c158e10.935.3comp.sys.hp48.1@hpcvbbs.cv.hp.com>Path: news3.cis.umn.edu!umn.edu!news-feed-1.peachnet.edu!gatech!howland.reston.ans.net!wupost!sdd.hp.com!hp-cv!hp-pcd!hpcvra!rnews!hpcvbbs!akcs.joehornNewsgroups: comp.sys.hp48References: <A14794@AC.maus.de> <MHEISKAN.93Jun2005755@delta.hut.fi>Lines: 90>>> There is a command for the HP48 I don't understand: It's WSLOG.>> WSLOG is completely explained on page 97 of Jim Donnelly's "The HP>> 48 Handbook", and on pages 415-416 of HP's "HP 48 Programmer's>> Reference Manual". Unfortunately, both of these works are>> copyrighted, with notices that their contents cannot be reproduced>> or transmitted without permission.> I'd suggest someone with either of the books would ask the damn> permission. This is really getting to be a FAQ....................Excellent suggestion.  So I called Jim Donnelly, and he kindly gavehis permission to duplicate the following page from his book.======================================================================                           SYSTEM HALT LOGThe command WSLOG returns four strings to the stack showing the cause,date, and time of the four most recent system halt events.The system halt log is not cleared when memory is erased, and may onlybe cleared by placing the calculator in coma mode.Example:  3-03/06/90 09:30:10This string shows a type three system halt that occurred on themorning of March 6, 1990.+------+-----------------------------------+| CODE | CONDITION                         |+------+-----------------------------------+|   0  | Coma exit                         ||   1  | Low battery system save           ||   2  | I/O timeout                       ||   3  | Execute through address 0         ||   4  | Corrupt system time               ||   5  | Port change data                  ||   7  | Corrupt RAM test word             ||   8  | Hardware configuration difficulty ||   9  | Corrupt alarm list                ||   A  | Corrupt memory                    ||   B  | Module pulled or card bounce      ||   C  | Hardware reset                    ||   D  | Software difficulty               ||   E  | Corrupt configuration table       ||   F  | Merged RAM card pulled            |+------+-----------------------------------+Note that some events will cause two events to be recorded, and somesystem halt events will cause a coldstart.[page 97 from Jim Donnelly's "The HP 48 Handbook", First Edition;copyright 1990, all rights reserved; reprinted with permission.]======================================================================A few extra notes from Joe Horn:(1) Jim Donnelly will be releasing real soon now a Second Edition of    the book especially for the HP48G/GX, greatly expanded and    containing lots more examples & goodies, including a whole chapter    on System RPL programming!  If you plan on keeping your HP48S/SX    and haven't gotten the First Edition yet, I strongly suggest that    you do so posthaste before it's extinct.(2) The format of the 4 dates in WSLOG's output is controlled by flag    -42, the date format flag.  The 4 times, however, are always in    24-hour format and are *not* affected by flag -41, the clock    format flag.(3) The WSLOG information resides at a fixed RAM address, and    therefore makes an excellent chunk of scratch RAM for assembly    language programmers, as has been done by several folks here on    the net.(4) Darryl Okahata's FAQ list includes a brief discussion of WSLOG as    item #31.(5) At the end of time (differs depending on your ROM revision; for    rev A-E it's 23:59:59 on 31 December 2088; for rev J it's 31    December 2090) a warmstart occurs, and *two* events get recorded,    both with code 4 and date/time of zero.  The following second    time-warps back one century.(6) A code 2 warmstart (I/O timeout) does *not* refer to a Kermit    retry timeout, but to a hardware IR failure only.-Joseph K. Horn-   -Peripheral Vision, Ltd.-akcs.joehorn@hpcvbbs.cv.hp.comDisclaimer: I don't work for HP, EduCALC, or Armstrong Publishing.

Areas

General

Craig's Articles

 

Google

 
 

I amCraig A. Finseth.

Back to Home.

Back to top.

Last modified Saturday, 2012-02-25T23:29:49-06:00.


[8]ページ先頭

©2009-2026 Movatter.jp