DIRECTORY NSString USING [String], RavenBansheeMessage USING [Key, totalKeys], RefText USING [Equal], XMessage USING [AllocateMessages, FreeMsgDomainsStorage, Get, Handle, Messages, MsgDomains, MsgEntry, MsgID, RegisterMessages]; RavenBansheeMessageImpl: CEDAR PROGRAM IMPORTS RefText, XMessage EXPORTS RavenBansheeMessage = BEGIN sDomainName: REF TEXT = "Raven Banshee Engine Msgs"; MsgEntry: TYPE = RECORD [ key: RavenBansheeMessage.Key, msg: REF TEXT, id: XMessage.MsgID, translatable: BOOLEAN _ TRUE]; ravenBansheeEngineMsgs: XMessage.Handle _ NIL; RegisterMsgs: PROCEDURE = BEGIN allDomains: REF XMessage.MsgDomains; messageFileAvailable: BOOLEAN _ FALSE; IF messageFileAvailable THEN BEGIN FOR i: CARDINAL IN [0 .. allDomains.length) DO IF RefText.Equal[allDomains.data[i].applicationName, sDomainName] THEN { ravenBansheeEngineMsgs _ allDomains[i].handle; EXIT}; ENDLOOP; XMessage.FreeMsgDomainsStorage[allDomains]; END ELSE InitMessages[]; END; -- of RegisterMsgs InitMessages: PROCEDURE = BEGIN entries: ARRAY [0..RavenBansheeMessage.totalKeys) OF MsgEntry = [ [host, "<1>Host # <2>", 1], [printServiceName, "<1>Print Service <2>", 2], [softwareOf, "<1>Software of <2>", 3], [lastResetOn, "<1>Last Reset on <2>", 4], [feedsSinceLastReset, "<1><2> Total feeds (since last reset)", 5], [jamCountersTotalRate, "<1>++ Jam Counters ++ Total Rate *", 6], [rateTotalTotalFeeds, "* Rate = (Total/Total Feeds)*1000", 7], [statusCounters, "<1>++ Status Counters ++", 8], [commandCounters, "<1>++ Command Counters ++", 9], [plateStatusCounters, "<1>++ Plate Status Counters ++", 10], [statusExtrasCounters, "<1>++ Status Extras Counters ++", 11], [e3PreExitJam, "E3 - Pre Exit Jam:................................<1>.....<2>", 20], [solicitStatus, "<1>Solicit Status: <2>", 21], [solicitPaperSize, "<1>Solicit Paper Size: <2>", 22], [beep, "<1>Beep: <2>", 23], [readyToFeed, "<1>Ready To Feed: <2>", 24], [pageSync, "<1>Page Sync: <2>", 25], [pageAtOutputTray, "<1>Page At Output Tray: <2>", 26], [keyOffLine, "<1>Key Off Line: <2>", 27], [parityError, "<1>Parity Error: <2>", 28], [noStatus, "<1>No Status: <2>", 29], [statusError, "<1>Status Error: <2>", 30], [statusOverRun, "<1>Status Overrun: <2>", 31], [undefinedStatus, "<1>Undefined Status: <2>", 32], [bandOverrun, "<1>Band Overrun: <2>", 33], [pageSyncMiss, "<1>Page Sync Miss: <2>", 34], [imageFault1, "<1>Image Fault 1: <2>", 35], [imageFault2, "<1>Image Fault 2: <2>", 36], [imageFault3, "<1>Image Fault 3: <2>", 37], [sequenceFault, "<1>Sequence Fault: <2>", 38], [communicationFault, "<1>Command/Status Communication Fault: <2>", 39], [xerox804xTechRepLogOf, "<1>Xerox 8040 Tech Rep Log of <2>", 50], [c4BottomFeederFault, "C4 - Bottom Feeder Fault:.........................<1>.....<2>", 51], [c4TopFeederFault, "C4 - Top Feeder Fault:............................<1>.....<2>", 52], [e2PostRegistrationJam, "E2 - Post Registration Jam:.......................<1>.....<2>", 53], [e4OutputTrayFullB0B1PostExitJamB2, "E4 - Output Tray Full (B1) - Post Exit Jam (B2):..<1>.....<2>", 54], [f5OutputTrayFullB2, "F5 - Output Tray Full (B2):.......................<1>.....<2>", 55], [feedBottomAligned, "<1>Feed Bottom Aligned: <2>", 56], [feedBottomOffset, "<1>Feed Bottom Offset: <2>", 57], [feedTopAligned, "<1>Feed Top Aligned: <2>", 58], [feedTopOffset, "<1>Feed Top Offset: <2>", 59], [display, "<1>Display: <2>", 60], [dozeOff, "<1>Doze Off: <2>", 61], [wakeUp, "<1>Wake Up: <2>", 62], [warming, "<1>Warming: <2>", 63], [standBy, "<1>StandBy:<2>", 64], [feeding, "<1>Feeding: <2>", 65], [fuserCold, "<1>Fuser Cold: <2>", 66], [tonerLow, "<1>TonerLow: <2>", 67], [interlockOpen, "<1>Door Open: <2>", 68], [feedTraysNotEngaged, "<1>Feed Trays Not Engaged: <2>", 69], [displayAcknowledge, "<1>Display Acknowledge: <2>", 70], [aboutToDozeOff, "<1>About To Doze Off: <2>", 71], [paperSmallSmall, "<1>Paper Small Small: <2>", 72], [paperSmallLarge, "<1>Paper Small Large: <2>", 73], [paperLargeSmall, "<1>Paper Large Small: <2>", 74], [paperLargeLarge, "<1>Paper Large Large: <2>", 75], [key0to9, "<1>Key 0 to 9: <2>", 76], [keyClear, "<1>Key Clear: <2>", 77], [keyTest, "<1>Key Test: <2>", 78], [keyOnLine, "<1>Key On Line: <2>", 79], [onLine, "<1>On Line: <2>", 80], [goingOffLine, "<1>Going Off Line: <2>", 81], [offLine, "<1>Off Line: <2>", 82], [illegalCharacter, "<1>Illegal Character: <2>", 83], [illegalSequence, "<1>Illegal Sequence: <2>", 84], [xeroxBansheeTechRepLogOf, "<1>Xerox NS 8000 Laser CP Tech Rep Log of <2>", 100], [iotRevision, "<1>IOT Firmware Revision # <2>", 101], [e2PreregistrationJam, "E2 - Preregistration Jam:.........................<1>.....<2>", 102], [e4PostExitJam, "E4 - Post Exit Jam:...............................<1>.....<2>", 103], [c4noPaper, "C4 - No Paper:....................................<1>.....<2>", 104], [feed, "<1>Feed: <2>", 105], [enterLoopbackMode, "<1>Enter Loopback Mode: <2>", 106], [feedRejected, "<1>Feed Rejected: <2>", 107], [noToner, "<1>No Toner: <2>", 108], [clamShellOpen, "<1>Clam Shell Open: <2>", 109], [feedTrayNotEngaged, "<1>Feed Tray Not Engaged: <2>", 110], [diagnosticMode, "<1>Diagnostic Mode: <2>", 111], [callForService, "<1>Call For Service: <2>", 112], [copyMode, "<1>Copy Mode: <2>", 113], [paperLetter, "<1>Paper Letter: <2>", 114], [paperLegal, "<1>Paper Legal: <2>", 115], [paperA4, "<1>Paper A4: <2>", 116], [paper215X330, "<1>Paper 215X330: <2>", 117], [paperEnvelope10, "<1>Paper Envelope 10: <2>", 118], [paperEnvelopeRX, "<1>Paper Envelope RX: <2>", 119], [keyReset, "<1>Key Reset: <2>", 120], [keyLastPage, "<1>Key Last Page: <2>", 121], [diagnostic36, "<1>Diagnostic 36: <2>", 122], [diagnostic37, "<1>Diagnostic 37: <2>", 123], [diagnostic38, "<1>Diagnostic 38: <2>", 124], [diagnostic39, "<1>Diagnostic 39: <2>", 125], [diagnostic40, "<1>Diagnostic 40: <2>", 126], [diagnostic41, "<1>Diagnostic 41: <2>", 127], [diagnostic42, "<1>Diagnostic 42 Print Alignment Pattern: <2>", 128], [diagnostic43, "<1>Diagnostic 43 Print Tech Rep Log: <2>", 129], [diagnostic44, "<1>Diagnostic 44 Image Test: <2>", 130], [diagnostic45, "<1>Diagnostic 45: <2>", 131], [diagnostic46, "<1>Diagnostic 46: <2>", 132], [diagnostic47, "<1>Diagnostic 47 Loopback Test: <2>", 133], [stopDiagnostic, "<1>Stop Diagnostic: <2>", 134], [softReset, "<1>Soft Reset: <2>", 135], [exit, "Exit", 150], [commandStatusTurnaroundTest, "Command/Status Turnaround Test", 151], [imageTest, "Image Test", 152], [displayTechRepLog, "Display Tech Rep Log", 153], [printTechRepLog, "Print Tech Rep Log", 154], [resetTechRepLog, "Reset Tech Rep Log", 155], [selectFrom, "Select from...", 156], [installTurnaroundPlug, "Install Turnaround plug and type Y to continue", 157], [commandStatusTurnaroundTest2, "Command/Status Turnaround Test...", 158], [repeatTest, "Repeat test", 159], [pleaseConfirm, "Are you sure", 160], [working, "Working.", 161], [failing, "Failing!", 162], [removeTurnaroundPlug, "Remove Turnaround plug and type Y to continue", 163], [reconnectPrinter, "Reconnect Printer and type Y to continue", 164], [imageTest2, "Image Test...", 165], [imageTestFailingCode1, "Failing: Code # 1, VideoData: stuck, LineSync: N/A, VideoClock: N/A.", 166], [imageTestFailingCode2, "Failing: Code # 2, VideoData: stuck, LineSync: N/A, VideoClock: N/A.", 167], [imageTestFailingCode3, "Failing: Code # 3, VideoData: ok, LineSync: stuck low, VideoClock: ok.", 168], [imageTestFailingCode4, "Failing: Code # 4, VideoData: ok, LineSync: stuck low, VideoClock: stuck.", 169], [imageTestFailingCode5, "Failing: Code # 5, VideoData: ok, LineSync: stuck high, VideoClock: ok.", 170], [imageTestFailingCode6, "Failing: Code # 6, VideoData: ok, LineSync: stuck high, VideoClock: stuck.", 171], [imageTestFailingCode7, "Failing: Code # 7, VideoData: ok, LineSync: ok, VideoClock: stuck low.", 172], [imageTestFailingCode8, "Failing: Code # 8, VideoData: ok, LineSync: ok, VideoClock: stuck high.", 173], [imageTestAbortedTPProblem, "Aborted: Test Pattern file problem.", 174], [imageTestAbortedOther, "Aborted: Other error.", 175], [repairMode, "Repair Mode", 176]]; messages: REF XMessage.Messages _ NEW[XMessage.Messages[RavenBansheeMessage.totalKeys]]; FOR i: CARDINAL IN [0..RavenBansheeMessage.totalKeys) DO messages.data[i] _ [ msgKey: ORD[entries[i].key], msg: entries[i].msg, translationNote: NIL, translatable: entries[i].translatable, type: userMsg, id: entries[i].id]; ENDLOOP; ravenBansheeEngineMsgs _ XMessage.AllocateMessages[ applicationName: sDomainName, maxMessages: RavenBansheeMessage.totalKeys, clientData: NIL, proc: NIL]; XMessage.RegisterMessages[h: ravenBansheeEngineMsgs, messages: messages, stringBodiesAreReal: TRUE]; END; -- InitMessages GetNSMessage: PUBLIC PROCEDURE [key: RavenBansheeMessage.Key] RETURNS [nsString: NSString.String] = BEGIN nsString _ XMessage.Get[ravenBansheeEngineMsgs, ORD[key]]; END; -- GetNSMessage RegisterMsgs[]; END. -- RavenBansheeMessageImpl LOG When / Who / What 31-Jul-85 0:23:31 / Strickberger / Created for Euclid. 12-Aug-85 18:10:21 / Strickberger / Fix NIL pleaseConfirm message. 23-Aug-85 15:54:11 / Strickberger / Change wording and spacing on some messages. 19-Sep-85 11:20:44 / Strickberger / Change spacing on some messages. 29-Sep-85 16:25:53 / Strickberger / Fixed statusExtrasCounters message. 8-Oct-85 11:16:03 / Strickberger / Fixed 2 msgs with same ID - AR 21605. 18-Mar-86 12:33:16 / Strickberger / Shortened 80 char log messages to 75 char to allow use of PutAsyncMessage with PS client ID (AR3873). ζRavenBansheeMessageImpl.mesa Copyright (C) 1985, 1986 by Xerox Corporation. All rights reserved. Last edited by Strickberger: 18-Mar-86 12:33:16 Tim Diebert: October 28, 1986 3:13:56 pm PST MsgOps USING [DomainsFromFile, Error], allDomains _ MsgOps.DomainsFromFile[ file: "RavenBansheeEngine.messages", clientData: NIL, proc: NIL ! MsgOps.Error => BEGIN messageFileAvailable _ FALSE; CONTINUE; END]; common log intro common headings common jam counters common command counters common status counters common plate status counters common status extras counters Raven log intro Raven jam counters Raven commands Raven status counters Banshee log intro Banshee jam counters Banshee command counters Banshee status counters UI messages Κ˜codešœ™KšœD™DKšœ/™/K™,—K˜šΟk ˜ Kšœœ™&Kšœ œ ˜Kšœœ˜+Kšœœ ˜Kšœ œq˜—K˜šΟnœœ˜&Kšœœ˜=—˜Kšœ œ˜4—˜šœ œœ˜K˜Kšœœœ˜K˜Kšœœœ˜——˜Kšœ*œ˜.—˜šž œ œ˜Kšœ œ˜$Kšœœœ˜&K˜™$Kšœ1œœ™AKš œœœœœ™C—K˜šœ ˜"šœœœ˜.šœ@œ˜HKšœ/œ˜5—Kšœ˜—K˜+Kš˜—Kšœ˜KšœΟc˜——˜šž œ œ˜šœ œ$œ ˜AKšœ™K˜K˜.K˜&K˜)K˜BKšœ™K˜K˜VK˜>K˜0K˜2K˜Kšœ™K˜K˜EKšœ™K˜.K˜5K˜Kšœ™K˜+K˜$K˜6K˜)K˜*K˜$K˜*K˜.K˜2Kšœ™K˜*K˜-Kšœ™K˜+K˜+K˜+K˜.K˜GK˜Kšœ™K˜AKšœ™K˜K˜EK˜K˜EK˜K˜EK˜#K˜EK˜K˜EKšœ™K˜7K˜5K˜1K˜/K˜!K˜"K˜ Kšœ™K˜!K˜ K˜!K˜&K˜#K˜)K˜