background image

5-16    Programmer’s Manual 

U P C E A N I N F O  

The UPCEANINFO data structure contains scanner 
configuration information about UPC and EAN bar codes.  To 
read these values, applications call scnGetUPCEANInfo; to set 
these values, they call scnSetUPCEANInfo.

 

typedef struct _UPCEANInfo 

  unsigned char uchEnableUPCA; 

  unsigned char uchEnableUPCE; 

  unsigned char uchEnableUPCE1; 

  unsigned char uchEnableEAN8; 

  unsigned char uchEnableEAN13; 

  unsigned char uchEnableBookEAN; 

  unsigned char uchEnableSupps; 

  unsigned char uchEnableSuppRedun; 

  unsigned char uchXmitUPCAChkDgt; 

  unsigned char uchXmitUPCEChkDgt; 

  unsigned char uchXmitUPCE1ChkDgt; 

  unsigned char uchUPCAPreamble; 

  unsigned char uchUPCEPreamble; 

  unsigned char uchUPCE1Preamble; 

  unsigned char uchCvtUPCEtoUPCA; 

  unsigned char uchCvtUPCE1toUPCA; 

  unsigned char uchEAN8ZeroExtend; 

  unsigned char uchCvtEAN8toEAN13; 

  unsigned char uchSecurityLevel; 

  unsigned char uchEnableCouponCode; 

} UPCEANINFO; 

Field Description

 

uchEnableUPCA 

Enable/disable the ability to scan UPCA 

bar codes. 

Default:

 

SCN_ENABLE

 

uchEnableUPCE 

Enable/disable the ability to scan 

UPCE0 bar codes. 

Default:

 

SCN_ENABLE

 

Summary of Contents for Gold 6037EX

Page 1: ... ROG TC6037EXPM Rev AA 8 03 Printed in the U S A 2003 Paxar Americas Inc All rights reserved ...

Page 2: ... Trademarks 0 1 2 0 0 3 4 5 6 7 78 ...

Page 3: ...ts 1 3 Related Documentation 1 4 Printer Features 2 1 Display 2 2 Display Pages 2 2 LCD Utility 2 3 Keypad 2 4 Speaker 2 5 Memory 2 5 Fonts 2 7 Using Non Resident Fonts 2 8 Scanners 2 9 Using the Scanners 2 9 Scanner Function Overview 2 10 Boot Process 2 11 Normal Boot 2 11 Display Control 2 12 Boot Options 2 12 Booting from a PC 2 13 Startup Menu 2 14 ...

Page 4: ...ng Applications 3 3 Linking Applications 3 4 Using UServe and UClient 3 4 Test the Application 3 4 Training the End Users 3 5 Function Reference 4 1 kbdClrFunct 4 2 kbdGetMode 4 3 kbdRestoreMode 4 4 kbdSetAlpha 4 6 kbdSetCaps 4 8 kbdSetFunct 4 9 kbdSetNormal 4 11 pclBatteryOkToPrint 4 12 pclCalibrate 4 13 pclCalibratePaper 4 18 pclClearError 4 20 pclClose 4 21 pclFeed 4 22 pclGetBatteryLevel 4 24 ...

Page 5: ...CloseScanner 4 44 scnGetBarCodeType 4 46 scnGetch 4 48 scnGetche 4 50 scnGetCodabarInfo 4 52 scnGetCode128Info 4 53 scnGetCode39Info 4 54 scnGetCode93Info 4 55 scnGetD2of5Info 4 56 scnGetGeneralInfo 4 57 scnGetI2of5Info 4 58 scnGetMSIInfo 4 59 scnGets 4 60 scnGetScanInfo 4 62 scnGetScannedData 4 63 scnGetUPCEANInfo 4 66 scnOpenScanner 4 67 scnOpenScannerShared 4 69 scnScannerHit 4 72 ...

Page 6: ...tMSIInfo 4 88 scnSetScanInfo 4 90 scnSetUPCEANInfo 4 92 scnTrigger 4 95 spkBeep 4 96 sysGetBIOSVersion 4 97 vidBackLightOn 4 99 vidGetState 4 100 vidPutCursor 4 101 vidPutStr 4 102 vidReadCA 4 104 vidReadCursor 4 106 vidScroll 4 107 vidSetCursorType 4 109 vidSetMode 4 111 vidSetPage 4 112 vidWriteC 4 114 vidWriteCA 4 116 Data Structure Reference 5 1 CODABARINFO 5 2 CODE128INFO 5 4 ...

Page 7: ...rinting Single Labels 6 2 Printing Multiple Labels 6 2 Quantity 6 3 Reprinting Labels 6 4 Pausing While Printing 6 4 Loading Multiple Packets Together 6 4 Building Packets Dynamically 6 5 Using the Scanner 6 5 Reading Trigger Pulls 6 5 Audio Visual Feedback 6 6 Using UServe and UClient 7 1 Establishing a PC Printer Connection 7 1 Copying Files 7 3 Example File Copy 7 4 UClient Commands 7 5 Syntax ...

Page 8: ...10 lmd 7 11 lrd 7 11 lwd 7 12 open 7 12 ping 7 13 put 7 13 putbios 7 14 puttrueffs 7 14 quit 7 15 reboot 7 15 setbaud 7 16 setport 7 16 settimeout 7 17 ucd 7 17 udel 7 18 udir 7 18 udiskfree 7 19 umd 7 20 urd 7 21 urun 7 21 uview 7 22 Uwd 7 22 Troubleshooting 7 23 ...

Page 9: ...Table of Contents vii Sample Applications A 1 Sample 1 A 2 Sample 2 A 2 Sample 3 A 3 Sample 4 A 4 Sample 5 A 4 Sample 6 A 5 Sample 7 A 5 Glossary B 1 ...

Page 10: ...viii Table of Contents ...

Page 11: ...d Microsoft C C programmers who write printer applications These programmers should also be familiar with Monarch s MPCL printer language The following table describes the conventions used in this manual Convention Description Brackets indicate optional items Ellipses indicate the preceding item is repeated one or more times Italics An item appearing in italics is a variable a function parameter o...

Page 12: ...th 80486 or higher processor VGA or higher monitor at least 8 MB of memory 16 MB recommended hard disk with 8 MB of free space not including the space needed for C C Windows 95 or higher compatible CD ROM drive serial port a printer to PC cable part number 124054 Software Requirements Your PC needs the following software Microsoft Windows 95 or higher Any third party products for serial communicat...

Page 13: ...veral sub directories as described below Sub directory Description bin Development tools docs Online documentation dos ROM DOS files font MPCL packets containing the printer s external base fonts images Pre built ROM disk images include Include files lib Library files samples Source code samples utilities Utility programs ...

Page 14: ...ting system Equipment Manual Information about printer operation Application Notes Technical information needed for application development beyond writing a C C program It contains information on radio networks memory cards etc Packet Reference Manual Syntax descriptions of the MPCL printer language Datalight Sockets Developer s Guide Describes the TCP IP stack and API for use with radio cards ...

Page 15: ... example just knowing that the printer has a display does not help You must know its size how it treats messages written to it how the rows and columns are numbered and which functions manipulate it This chapter describes the following printer features Display Keypad Speaker Memory Fonts Scanners Boot Process Windows 95 Network Notes 2 ...

Page 16: ...re is no program accessible video memory Display Pages The printer has two display pages numbered 0 1 An application can manipulate any display page regardless of the current page To manipulate the display use the functions with the vid prefix see Chapter 4 Function Reference Each display page has its own cursor Only one page appears on the display at a time To ensure the application begins on the...

Page 17: ...n 20 characters to the display or have a command move the cursor If you use standard C functions such as printf puts and putc in the application the message wraps to the next line and the cursor moves The vid functions truncate the message if it extends beyond the twentieth column and only vidPutCursor moves the cursor LCD Utility Use the LCD Utility to set the display speed turn the display on or...

Page 18: ...y p a d The following table describes the keypad s data entry modes These are described in more detail in the Equipment Manual Mode Acceptable Keys Numeric Symbol Default Numbers and Symbols Alphabetic Letters Special Key Function Keys Normally when entering data the operator must enter and exit the modes manually However with the Kbd functions described in Chapter 4 an application can also change...

Page 19: ...er beep for different lengths of time and frequencies For example you might use the speaker to bring an error to the operator s attention or to indicate a good scan The spkBeep function described in Chapter 4 manipulates the speaker M e m o r y The printer has 2 MB of memory ...

Page 20: ...000 F0000 F0000 FFFFF BIOS EE000 EFFFF Disk On Chip EC000 EDFFF PCMCIA DC000 EBFFF True FFS AA000 ABFFF System Variables A8000 A9FFF Display RAM Video Data Storage A0000 80000 DOS 500 5FF Data Area 1 for ROM BIOS 400 4FF Data Area 2 for ROM BIOS 0 3FF INT Vectors 0 Free Free Up to A0000H ...

Page 21: ...irate Bold Full Character Set 6 5 pt 1000 CG Triumvirate Bold Full Character Set 8 pt 1001 CG Triumvirate Bold Full Character Set 10 pt 1002 CG Triumvirate Bold Full Character Set 12 pt 1003 CG Triumvirate Bold Partial Character Set 18 pt 1004 CG Triumvirate Bold Partial Character Set 22 pt 1005 CG Triumvirate Bold Condensed Full Character Set 6 5 pt 1006 CG Triumvirate Bold Condensed Full Charact...

Page 22: ...t 1013 The partial character set fonts contain only numeric and special characters With fonts 1012 and 1013 the space character is only 70 as wide as the other characters Using Non Resident Fonts To use a non resident font or a font you have created with the MPCL Toolbox Font Utility the application must 1 Initialize the Print subsystem by calling pcllnit See pcllnit in Chapter 4 for more informat...

Page 23: ...S 232 communications but scnOpenScannerShared shares the port Therefore when using scnOpenScanner the application should disable the scanner immediately before serial communications and enable it immediately afterwards To avoid processing delays use scnOpenScannerShared when possible 2 Configure the scanner optional To learn how to configure the scanner see the appropriate scn functions in Chapter...

Page 24: ...ith scnGetch scnGetche scnGetBarCodeType or scnScannerHit Save the data in the application buffer with scnGets continued from step 1 or scnGetScannedData The application buffer must be one byte longer than the largest string that you may scan 3 If needed process the data in the application buffer NOTE Every bar code that the SE 923 scanner is configured for delays boot up by 7 seconds This does no...

Page 25: ...es left to right across the display s bottom to indicate the boot process is working 3 The printer loads CONFIG SYS if it exists and runs AUTOEXEC BAT When AUTOEXEC BAT does not exist is bypassed see Boot Options or does not enable the display the printer prompts the operator for the date and time If the printer never enables the display the startup screen never disappears and the printer waits in...

Page 26: ...mode include the LCD command in AUTOEXEC BAT CONFIG SYS messages are still disabled because the printer processes it first See LCD in Chapter 7 for more information Disabling the Display To disable the display include the LCD N command in AUTOEXEC BAT See LCD in Chapter 7 for more information Boot Options When DOS begins loading you have the following options for processing CONFIG SYS and AUTOEXEC...

Page 27: ... The printer also prompts you for the date and time Press f then 8 to request a prompt at each line of both files Enter Y to process the line or N to bypass it Do nothing and let the printer process every line of both files Booting from a PC To boot the printer from the PC 1 Gather the following files on a floppy disk COMMAND COM REMDISK EXE LCD COM AUTOEXEC BAT at a minimum this file must contain...

Page 28: ... then e quickly If you don t do it quick enough the menu scrolls off the screen 6037 Startup Menu 1 Normal Boot 2 Ultra Server 3 Remote Server 4 System Options Normal Boot Continues the boot process Ultra Server Starts UServe for loading an application see Using UServe and UClient Remote Server Runs REMDISK to enable you to boot the printer from the PC See Booting from a PC System Options Displays...

Page 29: ...Update Flashes the firmware in the printer DOS Prompt Bypasses the AUTOEXEC BAT and CONFIG SYS files during bootup W i n d o w s 9 5 N e t w o r k N o t e s Directory Names The printer does not recognize file names longer than 8 characters not including the extension Copying Data from the Printer to PC 1 Connect the cable between the PC and the printer 2 Use UServe and UClient to copy the file s f...

Page 30: ...2 16 Programmer s Manual ...

Page 31: ...the whole picture For example you must create MPCL packets and assess the application s memory needs This chapter describes this process Following is a summary 1 Create any needed MPCL packets if your application prints labels 2 Write the application 3 Build compile and link the application 4 Use UServe and UClient to copy files to the printer 5 Test the application 6 Train the end users 3 ...

Page 32: ...scrolls off the screen 4 When the Startup menu appears press 2 then e Online Passthrough running appears on the printer display 5 Connect the PC and printer with a cable and send formats to the printer through the COM port To exit Online Passthrough reboot the printer W r i t i n g A p p l i c a t i o n s Although you can write your application using any 16 bit compiler the libraries included in t...

Page 33: ...To build use either the menu choices in the C C development environment or the following DOS prompt commands cl to compile and or link link to link only Refer to your C C documentation for more information Compiling Applications Although you may also use other options when compiling you must specify AL use the large memory model Zp1 pack structure members c use only with multiple source code files...

Page 34: ...port LMS6037 LIB All printing Any scanning except where you configure the scanner for a particular bar code LMSSCNEN LIB None Scanning where you configure the scanner for a particular bar code U s i n g U S e r v e a n d U C l i e n t To install the application on the printer you must use UServe and UClient to copy the files to the printer See Chapter 7 for more information T e s t t h e A p p l i...

Page 35: ...n s complexity this training may include a class written instructions or any other appropriate format The Operators and System Administrators must know how to use the application They also must know how to perform procedures loading supplies for example that may vary from the generic descriptions in the Equipment Manual You must give the Operators and or System Administrators application specific ...

Page 36: ...3 6 Programmer s Manual ...

Page 37: ...ribes these functions It lists them alphabetically The functions are divided into the following categories Prefix Description kbd Keypad Interface pcl Printing Interface scn Scanning Interface spk Speaker Interface sys System Interface vid Video Interface All functions in the same category begin with the same prefix The function names are case sensitive 4 ...

Page 38: ...unct Description Changes the keypad s data entry mode to the mode in effect immediately before the application called kbdSetFunct Syntax void kbdClrFunct void Parameters None Return Values None Example See kbdSetFunct for an example ...

Page 39: ...kbdRestoreMode Syntax int kbdGetMode void Parameters None Return Values 1 Numeric Normal mode 2 Upper case Alpha mode 4 Lower case Alpha mode 9 Function Key mode is set while Numeric Normal mode is in effect 10 Function Key mode is set while Upper case Alpha mode is in effect 12 Function Key mode is set while Lower case Alpha mode is in effect Example See kbdRestoreMode for an example ...

Page 40: ...Upper case Alpha mode 4 Lower case Alpha mode Return Values None Example include stdio h include conio h include mmsultra h void main void int iSavedmode 0 Saved mode int iInput 0 Alpha key entered iSavedmode kbdGetMode Save the current mode To Upper case Alpha kbdSetCaps printf Press an alphabetic nkey Test the mode while _kbhit iInput _getch printf nYou pressed c n iInput Return to prev mode kbd...

Page 41: ...Function Reference 4 5 printf nPress the same key Test the mode while _kbhit iInput _getch printf nYou pressed c n iInput ...

Page 42: ...le include stdio h include conio h include mmsultra h void main void int iSavedmode 0 Saved mode int iInput 0 Key entered kbdSetAlpha Set Lower case Alpha iSavedmode kbdGetMode Save the current mode kbdSetCaps Set Upper case Alpha printf Press an alphabetic nkey Test the mode while _kbhit iInput _getch printf nYou pressed c n iInput kbdRestoreMode iSavedmode Return to prev mode ...

Page 43: ...Function Reference 4 7 printf nPress the same nkey Test the mode while _kbhit iInput _getch printf nYou pressed c n iInput ...

Page 44: ...Programmer s Manual kbdSetCaps Description Changes the keypad s data entry mode to Upper case Alpha mode Syntax void kbdSetCaps void Parameters None Return Values None Example See kbdSetAlpha for an example ...

Page 45: ...Function Reference 4 9 kbdSetFunct Description Changes the keypad s data entry mode to Function Key mode Syntax void kbdSetFunct void Parameters None Return Values None ...

Page 46: ...int iNum 0 of labels to print kbdSetNormal Set Normal mode kbdSetFunct Set Function Key mode printf Press 5 to print nlabels n Get input F5 iInput _getch if iInput 0x00 kbdClrFunct iInput _getch if iInput 0x3F Get of labels printf How many labels do nyou need iNum _getch printf nPrinting c labels iNum Branch to printing routine ...

Page 47: ...eturn Values None Example include stdio h include mmsultra h void main void char cName 25 Entered name char cNumber 4 Entered number Set Upper case Alpha mode kbdSetCaps printf Enter Operator Name Enter operator name gets cName kbdSetNormal Set Normal mode printf Enter Operator Enter operator number gets cNumber branch to name and number processing routine ...

Page 48: ... level before doing any printing Use this function immediately prior to printing but not during printing If you use it during printing the return value is not accurate Syntax unsigned short far pclBatteryOkToPrint void Parameters None Return Values 0 The battery level is too low to allow printing Non zero The battery level is high enough to allow printing Example See pclGetOnDemandSensor for an ex...

Page 49: ...should display a prompt Load your supplies for example and require the operator to press a key the trigger might be easiest prior to calling this function Do not use this function when using fax paper because it has no black mark to detect If an application uses this function it should not use pclCalibratePaper and pclPaperSetup Syntax unsigned short far pascal pclCalibrate unsigned short usStockL...

Page 50: ...r MMS_MEDIUM_ENERGY Fax MMS_HIGH_ENERGY Synthetic 1 Prompt User If you are using linerless supplies experiment with these values to see which one achieves the best results lpfnSupplyTypePrompt Enter 0 lpfnSupplyPrompt Enter 0 Return Values 0 Successful Non zero An error occurred For errors between 703 793 the operator corrects the printer condition Then the application must call pclClearError to r...

Page 51: ...tockPrompt unsigned short far lpusLenInches unsigned short far lpusWidthInches void main PRINTINIT rConfig unsigned short usStatus 0 Initialize the printer usStatus pclInit NULL if usStatus 0 printf Init Failed nError d usStatus exit 1 Calibrate with the function doing all the prompts usStatus pclCalibrate 0xFFFF 0xFFFF 0xFFFF 0 0 if usStatus 0 printf Calibrate Failed nError u usStatus pclClose ex...

Page 52: ...bration callback function to prompt for paper type unsigned short far pascal StockTypePrompt unsigned short far lpusPaperType short sCols sPages sKey for loop doing clear screen vidSetMode vidGetState sCols sPages printf Enter Stock Type n 0 2 n display prompt sKey _getch get key if sKey 0 if extended key _getch clear it out else if sKey 0 sKey 2 if valid type break stop prompting lpusPaperType un...

Page 53: ...alibration callback function to always return constant size unsigned short far pascal StockPrompt unsigned short far lpusLenInches unsigned short far lpusWidthInches lpusLenInches 200 lpusWidthInches 150 return 0 return success ...

Page 54: ...gger might be easiest prior to calling this function Do not use this function when using fax paper because it has no black mark to detect If an application uses this function and pclPaperSetup it should not use pclCalibrate Syntax unsigned short far pclCalibratePaper unsigned short far lpusStockLength unsigned short far lpusStockWidth Parameters lpusStockLength Pointer to the calibrated supply len...

Page 55: ...r occurred For errors between 703 793 the operator corrects the printer condition Then the application must call pclClearError to reset the Motion Control subsystem Refer to the MPCL Packet Reference Manual for more information Example See pclPaperSetup for an example ...

Page 56: ...on control error 703 793 Of the pcl functions only pclGetErrorMsg cannot generate a motion control error The operator must correct the printer condition a supply jam for example before the application calls this function Syntax void far pclClearError void Parameters None Return Values None Example See pclFeed for an example ...

Page 57: ... by freeing all internally allocated resources A call to this function must occur only once at the application s end If the application does not call it the printer locks up Syntax void far pclClose void Parameters None Return Values None Example See pclFeed for an example ...

Page 58: ...short far pclFeed void Parameters None Return Values 0 Successful 703 793 A motion control error occurred After the operator corrects the printer condition the application must call pclClearError to reset the Motion Control subsystem Refer to the MPCL Packet Reference Manual for more information ...

Page 59: ...Command call status sStatus pclInit NULL Start Print subsystem if sStatus 0 printf Init Failed nError d sStatus else usStatus pclGetBatteryLevel Get the battery level if usStatus 711 If level OK usStatus pclFeed Feed supplies if usStatus 0 printf Feed Error press any key when printer is reset _getch pclClearError else printf Charge battery Display low level msg pclClose Close Print subsystem ...

Page 60: ... processing Use this function immediately prior to printing but not during printing If you use this function during printing the return value is not accurate Syntax unsigned short far pclGetBatteryLevel void Parameters None Return Values 711 You must charge the battery 712 831 The battery level is high enough to run the printer but not print 832 The battery level is high enough to run the printer ...

Page 61: ...ls unsigned short usStatus 0 Battery level sStatus pclInit NULL Start Print subsystem if sStatus 0 printf Init Failed nError d sStatus else usStatus pclGetBatteryLevel Get the battery level if usStatus 711 Display results printf Charge the battery else if usStatus 832 printf Can run and print else printf Can run cannot print pclClose Close Print subsystem ...

Page 62: ... pclGetBlackMarkSensor void Parameters None Return Values 1 The supplies are aligned on the black mark 0 The supplies are not aligned on the black mark or the Print subsystem is busy or uninitialized 703 793 A motion control error occurred After the operator corrects the printer condition the application must call pclClearError to reset the Motion Control subsystem Refer to the MPCL Packet Referen...

Page 63: ...art Print subsystem if sStatus 0 printf Init Failed nError d usStatus else usStatus pclGetBatteryLevel Check battery if usStatus 711 printf Charge your battery else usStatus pclGetBlackMarkSensor Get sensor state switch usStatus Display result case 1 printf Supplies are aligned break case 0 printf Supplies misaligned or system error break default printf Error press any key when reset _getch pclCle...

Page 64: ...re longer than 20 characters An application must format the message before displaying it to avoid truncation See Display in Chapter 2 for more information Error numbers that this function can retrieve must be positive Zero indicates success and negative numbers are ROM DOS errors Syntax char far far pclGetErrorMsg unsigned short usMsgNo Parameters usMsgNo The error number Return Values Pointer to ...

Page 65: ...Status NULL Error message PRINTINIT pConfig Print data structure sStatus pclInit NULL Start Print subsystem if sStatus 0 printf Init Failed nError d sStatus else if pclBatteryOkToPrint Check battery printf Low battery error else Open file usStatus pclOpen B MPCL TEST FAB if usStatus 0 cStatus pclGetErrorMsg usStatus printf Fs n cStatus pclClose Close Print subsystem ...

Page 66: ...nsigned short far pclGetOnDemandSensor void Parameters None Return Values 1 The sensor is blocked 0 The sensor is not blocked 703 793 A motion control error occurred After the operator corrects the printer condition the application must call pclClearError to reset the Motion Control subsystem Refer to the MPCL Packet Reference Manual for more information ...

Page 67: ... status char cFormat 100 Format to print sStatus pclInit NULL Start Print subsystem if sStatus 0 printf Init Failed nError d sStatus else if pclBatteryOkToPrint Check battery printf Battery too low else Write format strcpy cFormat F 1 A R E 400 200 1C39 strcat cFormat B 1 12 F 320 29 4 12 20 8 L 0 strcat cFormat R 1 666666666666 strcat cFormat sStatus pclWrite cFormat strlen cFormat ...

Page 68: ... 24 if sStatus 0 printf Batch Write error d sStatus else while sStatus pclStatus 1 Wait until done sStatus pclGetOnDemandSensor Check sensor switch sStatus Display result case 0 printf nNot blocked break case 1 printf nBlocked break default printf Error press any key when reset _getch pclClearError pclClose Close Print subsystem ...

Page 69: ...oid Parameters None Return Values MMS_LOW_ENERGY Paper MMS_MEDIUM_ENERGY Fax MMS_HIGH_ENERGY Synthetic 703 793 A motion control error occurred After the operator corrects the printer condition the application must call pclClearError to reset the Motion Control subsystem Refer to the MPCL Packet Reference Manual for more information ...

Page 70: ...t subsystem if sStatus 0 printf Init Failed nError d sStatus else usStatus pclGetBatteryLevel if usStatus 711 Check battery printf Charge your battery else usType pclGetSupplyType Get supply type switch usType Display result case MMS_LOW_ENERGY printf Using regular paper break case MMS_MEDIUM_ENERGY printf Using fax paper break case MMS_HIGH_ENERGY printf Using synthetic paper break default printf...

Page 71: ... other pcl functions Initialize and close the Print subsystem only once in the application Syntax short far pclInit void Parameters None Return Values 0 Successful Example include conio h include malloc h include stdio h include mmsultra h void main void short sStatus 0 Status of comm calls Start Print subsystem sStatus pclInit NULL ...

Page 72: ...rammer s Manual if sStatus 0 Branch to printing routine else if sStatus 703 sStatus 793 printf Motion Control Error else printf Error press any key when reset _getch pclClearError pclClose Close Print subsystem ...

Page 73: ... the file containing the MPCL packets If it is in the same directory as the application s EXE file specify only the file name You must use the drive that the printer recognizes For example if the files are on the PC s C drive but the printer refers to it as B use B in the path Return Values 0 Successful Non zero An error occurred For errors between 703 793 the operator corrects the printer conditi...

Page 74: ...ointer to the supply length in hundredths of an inch Returned values are 55 400 lpusStockWidth Pointer to the supply width in hundredths of an inch Returned values are 120 150 and 200 lpusStockType Pointer to the supply type Returned values are MMS_LOW_ENERGY Paper MMS_MEDIUM_ENERGY Fax MMS_HIGH_ENERGY Synthetic If you are using linerless supplies experiment with these values to see which one achi...

Page 75: ...te Syntax unsigned short far pclPaperSetup unsigned short usStockLength unsigned short usStockWidth unsigned short usStockType Parameters usStockLength The supply length in hundredths of an inch Values are 55 400 usStockWidth The supply width in hundredths of an inch Values are 120 150 and 200 usStockType The supply type Values are MMS_LOW_ENERGY Paper MMS_MEDIUM_ENERGY Fax MMS_HIGH_ENERGY Synthet...

Page 76: ...ra h void GetSupplyType unsigned short void GetStockLength unsigned short void GetStockWidth unsigned short unsigned short main void unsigned short usStatus Printer completion status unsigned short usStockWidth Stk width in 1 100th inches unsigned short usStockLength Stk length in 1 100th inches unsigned short usSupplyType Supply type 0 2 unsigned short status 0 Print subsystem init status PRINTIN...

Page 77: ...sStockWidth usSupplyType return usStatus usStatus pclCalibratePaper usStockLength usStockWidth if usStatus 0 pclClearError return usStatus GetStockLength is a programmer written function GetStockLength usStockLength GetStockWidth is a programmer written function GetStockWidth usStockWidth usStatus pclPaperSetup usStockLength usStockWidth usSupplyType pclClose ...

Page 78: ... Chapter 6 for more information Syntax short far pclStatus void Parameters None Return Values 0 The Print subsystem is ready 1 The Print subsystem is busy 703 793 A motion control error occurred After the operator corrects the printer condition the application must call pclClearError to reset the Motion Control subsystem Refer to the MPCL Packet Reference Manual for more information Example See pc...

Page 79: ...See Pausing While Printing in Chapter 6 for more information Syntax short far pclWrite char far lpchBuffer unsigned short usCount Parameters lpchBuffer A pointer to the data to write usCount The number of bytes to write The maximum size is 64K Return Values 0 Successful Non zero An error occurred For errors between 703 793 The operator corrects the printer condition Then the application must call ...

Page 80: ... scanner at the end of processing or immediately before any serial communications this function sets the serial communications port back to external RS 232 connection mode It also restores the serial port configuration settings baud rate parity data bits and stop bits saved when the application enabled the scanner Syntax short far scnCloseScanner void Parameters None Return Values 0 Successful 1 T...

Page 81: ...le include stdio h include mmsultra h void main void short sStatus 0 Command calls status sStatus scnOpenScanner Enable scanner if sStatus 2 printf Scanner error d sStatus else Scan Bar Codes sStatus scnCloseScanner Disable scanner ...

Page 82: ...ion reads it Syntax short far scnGetBarCodeType void Parameters None Return Values The following values can be returned when you use either library DCDE_C39 Code 39 3 of 9 code DCDE_CBAR Codabar 2 of 7 code DCDE_C128 Code 128 DCDE_I2of5 I 2 of 5 USD 1 DCDE_UPCA UPCA DCDE_UPCE UPCE DCDE_EAN8 EAN8 DCDE_EAN13 EAN13 DCDE_UPCA_2 UPCA 2 DCDE_UPCE_2 UPCE 2 DCDE_EAN8_2 EAN8 2 DCDE_EAN13_2 EAN13 2 DCDE_UPC...

Page 83: ... open error d sStatus else printf Press trigger to scan n Perform scan iInput _getch if iInput 0 iInput _getch if iInput 0x85 sStatus scnTrigger 1 if sStatus 0 printf Scanner trigger error d sStatus else spkBeep 1 1000 Beep for success Retrieve data sStatus scnGetScannedData cBuffer if sStatus 0 printf Error retrieving scanner data d sStatus else Get bar code type sStatus scnGetBarCodeType printf ...

Page 84: ...example after a scan a call to scnGetch reads the first character Subsequent calls to scnGetch read the subsequent characters in the bar code For example the second call reads the second character the third call reads the third character etc Use scnGetche to retrieve characters and echo them to the display Syntax short far scnGetch void Parameters None Return Values 0 255 The retrieved character 2...

Page 85: ...scnOpenScanner Enable scanner if sStatus 2 printf Scanner error d sStatus printf Press trigger to nscan n Perform scan iInput _getch if iInput 0 iInput _getch if iInput 0x85 pBufptr scnGets cBuffer if pBufptr NULL printf nScanner error else spkBeep 1 1000 Beep for success sStatus scnGetch Get first char if sStatus 0 Display result printf Error getting char d sStatus else printf nFirst Char is c sS...

Page 86: ...e after a scan a call to scnGetche reads the first character Subsequent calls to scnGetche read the subsequent characters in the bar code For example the second call reads the second character the third call reads the third character etc Use scnGetch to retrieve characters without echoing them to the display Syntax short far scnGetche void Parameters None Return Values 0 255 The retrieved characte...

Page 87: ...cnOpenScanner Enable scanner if sStatus 2 printf Scanner error d sStatus printf Press trigger to nscan n Perform scan iInput _getch if iInput 0 iInput _getch if iInput 0x85 pBufptr scnGets cBuffer if pBufptr NULL printf nScanner error else spkBeep 1 1000 Beep for success sStatus scnGetche Get first char if sStatus 0 Display result printf Error getting char d sStatus else printf is the first char s...

Page 88: ...odabarInfo subsequent calls to scnGetCodabarInfo retrieve a pointer to a data structure containing the current values See CODABARINFO in Chapter 5 to learn more about the CODABARINFO data structure Syntax short far scnGetCodabarInfo LPCODABARINFO lprCodabarInfo Parameters lprCodabarInfo A pointer to a CODABARINFO data structure Return Values 0 Successful 9 Scanner is disabled Example See scnSetCod...

Page 89: ...ode128Info subsequent calls to scnGetCode128Info retrieve a pointer to a data structure containing the current values See CODE128INFO in Chapter 5 to learn more about the CODE128INFO data structure Syntax short far scnGetCode128Info LPCODE128INFO lprCode128Info Parameters lprCode128Info A pointer to a CODE129INFO data structure Return Values 0 Successful 9 Scanner is disabled Example See scnSetCod...

Page 90: ...SetCode39Info subsequent calls to scnGetCode39Info retrieve a pointer to a data structure containing the current values See CODE39INFO in Chapter 5 to learn more about the CODE39INFO data structure Syntax short far scnGetCode39Info LPCODE39INFO lprCode39Info Parameters lprCode39Info A pointer to a CODE39INFO data structure Return Values 0 Successful 9 Scanner is disabled Example See scnSetCode39In...

Page 91: ...SetCode93Info subsequent calls to scnGetCode93Info retrieve a pointer to a data structure containing the current values See CODE93INFO in Chapter 5 to learn more about the CODE93INFO data structure Syntax short far scnGetCode93Info LPCODE93INFO lprCode93Info Parameters lprCode93Info A pointer to a CODE93INFO data structure Return Values 0 Successful 9 Scanner is disabled Example See scnSetCode93In...

Page 92: ... scnSetD2of5Info subsequent calls to scnGetD2of5Info retrieve a pointer to a data structure containing the current values See D2OF5INFO in Chapter 5 to learn more about the D2OF5INFO data structure Syntax short far scnGetD2of5Info LPD2OF5INFO lprD2of5Info Parameters lprD2of5Info A pointer to a D2OF5INFO data structure Return Values 0 Successful 9 Scanner is disabled Example See scnSetD2of5Info for...

Page 93: ...eneralInfo subsequent calls to scnGetGeneralInfo retrieve a pointer to a data structure containing the current values See GENERALINFO in Chapter 5 to learn more about the GENERALINFO data structure Syntax short far scnGetGeneralInfo LPGENERALINFO lprGeneralInfo Parameters lprGeneralInfo A pointer to a GENERALINFO data structure Return Values 0 Successful 9 Scanner is disabled Example See scnSetGen...

Page 94: ... scnSetI2of5Info subsequent calls to scnGetI2of5Info retrieve a pointer to a data structure containing the current values See I2OF5INFO in Chapter 5 to learn more about the I2OF5INFO data structure Syntax short far scnGetI2of5Info LPI2OF5INFO lprI2of5Info Parameters lprI2of5Info A pointer to an I2OF5INFO data structure Return Values 0 Successful 9 Scanner is disabled Example See scnSetI2of5Info fo...

Page 95: ...ers with scnSetMSIInfo subsequent calls to scnGetMSIInfo retrieve a pointer to a data structure containing the current values See MSIINFO in Chapter 5 to learn more about the MSIINFO data structure Syntax short far scnGetMSIInfo LPMSIINFO lprMSIInfo Parameters lprMSIInfo A pointer to a MSIINFO data structure Return Values 0 Successful 9 Scanner is disabled Example See scnSetMSIInfo for an example ...

Page 96: ...nary zero do not use this function Instead use scnGetch and scnScannerHit in a loop until the scan is complete Use scnGetScannedData to retrieve the scanner buffer s contents without activating the scanner when the buffer is empty Syntax char far far scnGets char far lpszData Parameters lpszData A pointer to a programmer defined application buffer where the function copies the scanner buffer s con...

Page 97: ...Input 0 Trigger input sStatus1 scnOpenScanner Enable scanner if sStatus1 2 printf Scanner open error d sStatus1 else Perform scan printf Press trigger to nscan n iInput _getch if iInput 0 iInput _getch if iInput 0x85 pStatus2 scnGets cBuffer if pStatus2 NULL printf Scanner buffer read error n else spkBeep 1 1000 Beep for success Display result printf Scan data n s n cBuffer sStatus1 scnCloseScanne...

Page 98: ...calls to scnGetScanInfo retrieve a pointer to a data structure containing the current values This function is invalid with LMSSCEN LIB See SCANINFO in Chapter 5 to learn more about the SCANINFO data structure Syntax short far scnGetScanInfo LPSCANINFO lprScanInfo Parameters lprScanInfo A pointer to a SCANINFO data structure Return Values 0 Successful 9 The scanner is disabled Example See scnSetSca...

Page 99: ...scnGetch and scnScannerHit in a loop until the scan is complete Use scnGets to retrieve the scanner buffer s contents and activate the scanner when the buffer is empty Syntax short far scnGetScannedData char far lpszData Parameters lpszData A pointer to a programmer defined application buffer where the function places the scanner buffer s contents This buffer must be one byte longer than the large...

Page 100: ...C39 Code 39 3 of 9 code DCDE_CBAR Codabar 2 of 7 code DCDE_C128 Code 128 DCDE_I2of5 I 2 of 5 USD 1 DCDE_UPCA UPCA DCDE_UPCE UPCE DCDE_EAN8 EAN8 DCDE_EAN13 EAN13 DCDE_UPCA_2 UPCA 2 DCDE_UPCE_2 UPCE 2 DCDE_EAN8_2 EAN8 2 DCDE_EAN13_2 EAN13 2 DCDE_UPCA_5 UPCA 5 DCDE_UPCE_5 UPCE 5 DCDE_EAN8_5 EAN8 5 DCDE_EAN13_5 EAN13 5 DCDE_MSI MSI ...

Page 101: ...tf Scanner error d sStatus else Perform scan printf Press trigger to nscan n iInput _getch if iInput 0 iInput _getch if iInput 0x85 sStatus scnTrigger 1 if sStatus 0 printf nScanner error d sStatus else Get data from scan sStatus scnGetScannedData cBuffer if sStatus 0 printf Data retrieval error d sStatus else spkBeep 1 1000 Beep for success Display result printf Scan data n s n cBuffer printf Bar...

Page 102: ...ion for UPC and EAN bar codes See UPCEANINFO in Chapter 5 to learn more about the UPCEANINFO data structure Syntax short far scnGetUPCEANInfo LPUPCEANINFO lprUPCEANInfo Parameters lprUPCEANInfo A pointer to a UPCEANINFO data structure Return Values 0 Successful 9 Scanner is disabled Example See scnSetUPCEANInfo for an example ...

Page 103: ...er for the software to determine the scanner type being used Because the scanner takes over the serial communications port the application should disable the scanner immediately before using the port for serial communications and enable it immediately afterwards When possible the application should use scnOpenScannerShared to avoid processing delays enabling and disabling the scanner repeatedly sc...

Page 104: ...mmer s Manual Parameters None Return Values 0 Successful 1 The scanner is already enabled 2 No scanner is installed or the application cannot communicate with the scanner Example See scnCloseScanner for an example ...

Page 105: ...e scanner for the software to determine the scanner type being used Because this function allows the serial port to be shared application does not need to enable and disable the scanner repeatedly to free the serial port for RS 232 communications It can enable the scanner at the beginning of processing and disable the scanner at the end of processing Using this function has the benefit of eliminat...

Page 106: ...t sStatus 0 Command calls status unsigned uStatus 0 bios_serialcom status int iInput 0 Trigger input static char cBuffer 200 Application buffer char far pScan NULL Pointer from scan sStatus scnOpenScannerShared Enable shared scanner if sStatus 0 printf Error opening scanner n d n sStatus else Open port uStatus _bios_serialcom _COM_INIT 0 _COM_9600 _COM_CHR8 _COM_EVENPARITY _COM_STOP1 printf Comm p...

Page 107: ...ut 0x85 pScan scnGets cBuffer if pScan NULL printf Scanning error n else spkBeep 1 1000 printf Scanned data n s nPress Enter n cBuffer _getch Send data out port uStatus _bios_serialcom _COM_SEND 0 0 printf Comm port write n printf return status d nPress Enter uStatus _getch scnCloseScanner Disable scanner ...

Page 108: ...ner buffer is empty Non zero The type of bar code in the scanner buffer When you use either library the following values can be returned DCDE_C39 Code 39 3 of 9 code DCDE_CBAR Codabar 2 of 7 code DCDE_C128 Code 128 DCDE_I2of5 I 2 of 5 USD 1 DCDE_UPCA UPCA DCDE_UPCE UPCE DCDE_EAN8 EAN8 DCDE_EAN13 EAN13 DCDE_UPCA_2 UPCA 2 DCDE_UPCE_2 UPCE 2 DCDE_EAN8_2 EAN8 2 DCDE_EAN13_2 EAN13 2 DCDE_UPCA_5 UPCA 5 ...

Page 109: ...ScanInfo SScnconfig if sStatus 0 printf Scanner is disabled n else SScnconfig uchCode39 SCN_ENABLE sStatus scnSetScanInfo SScnconfig if sStatus 0 printf Scanner is disabled n else printf Scanning n Perform scan sStatus scnTrigger 1 if sStatus 0 printf Scan error d n sStatus else spkBeep 1 1000 sStatus scnScannerHit Check scanner buffer if sStatus 0 printf Scanner buffer is nempty n else Display re...

Page 110: ...n 1 Enables the scanner with scnOpenScanner or scnOpenScannerShared 2 Calls scnGetCodabarInfo 3 Sets the values in the CODABARINFO data structure 4 Calls scnSetCodabarInfo When the application disables the scanner the configuration values return to the defaults Syntax short far scnSetCodabarInfo LPCODABARINFO lprCodabarInfo Parameters lprCodabarInfo A pointer to a CODABARINFO data structure Return...

Page 111: ...r error d sStatus else Get configuration sStatus scnGetCodabarInfo CDBconfig if sStatus 0 printf Scanner is disabled else Set values CDBconfig uchEnable SCN_ENABLE CDBconfig uchLength1 0 CDBconfig uchLength2 0 CDBconfig uchEnableCLSIEdit SCN_DISABLE CDBconfig uchEnableNOTISEdit SCN_DISABLE Save values sStatus scnSetCodabarInfo CDBconfig if sStatus 0 printf Error setting values sStatus else Scan Ba...

Page 112: ... 1 Enables the scanner with scnOpenScanner or scnOpenScannerShared 2 Calls scnGetCode128Info 3 Sets the values in the CODE128INFO data structure 4 Calls scnSetCode128Info When the application disables the scanner the configuration values go back to the defaults Syntax short far scnSetCode128Info LPCODE128INFO lprCode128Info Parameters lprCode128Info A pointer to a CODE128INFO data structure Return...

Page 113: ...f sStatus 2 printf Scanner error d sStatus else Get config sStatus scnGetCode128Info config128 if sStatus 0 printf Scanner is disabled else Set values config128 uchEnableUSS128 SCN_ENABLE config128 uchEnableUCCEAN128 SCN_DISABLE config128 uchEnableISBT128 SCN_DISABLE Save values sStatus scnSetCode128Info config128 if sStatus 0 printf Error setting values sStatus else Scan Bar Codes sStatus scnClos...

Page 114: ...ion 1 Enables the scanner with scnOpenScanner or scnOpenScannerShared 2 Calls scnGetCode39Info 3 Sets the values in the CODE39INFO data structure 4 Calls scnSetCode39Info When the application disables the scanner the configuration values go back to the defaults Syntax short far scnSetCode39Info LPCODE39INFO lprCode39Info Parameters lprCode39Info A pointer to a CODE39INFO data structure Return Valu...

Page 115: ...sStatus 0 printf Scanner is disabled else Set values config39 uchEnable SCN_ENABLE config39 uchEnableTrioptic SCN_DISABLE config39 uchCvtC39toC32 SCN_DISABLE config39 uchEnableC32Prefix SCN_DISABLE config39 uchLength1 0 config39 uchLength2 0 config39 uchVerifyCheckDigit SCN_DISABLE config39 uchXmitCheckDigit SCN_DISABLE config39 uchEnableFullASCII SCN_DISABLE Save values sStatus scnSetCode39Info c...

Page 116: ...ion 1 Enables the scanner with scnOpenScanner or scnOpenScannerShared 2 Calls scnGetCode93Info 3 Sets the values in the CODE93INFO data structure 4 Calls scnSetCode93Info When the application disables the scanner the configuration values go back to the defaults Syntax short far scnSetCode93Info LPCODE93INFO lprCode39Info Parameters lprCode93Info A pointer to a CODE93INFO data structure Return Valu...

Page 117: ...Scanner Enable scanner if sStatus 2 printf Scanner error d sStatus else Get config sStatus scnGetCode93Info config93 if sStatus 0 printf Scanner is disabled else Set values config93 uchEnable SCN_ENABLE config93 uchLength1 0 config93 uchLength2 0 Save values status scnSetCode93Info config93 if sStatus 0 printf Error setting values sStatus else Scan Bar Codes sStatus scnCloseScanner Disable scanner...

Page 118: ...ation 1 Enables the scanner with scnOpenScanner or scnOpenScannerShared 2 Calls scnGetD2of5Info 3 Sets the values in the D2OF5INFO data structure 4 Calls scnSetD2of5Info When the application disables the scanner the configuration values go back to the defaults Syntax short far scnSetD2of5Info LPD2OF5INFO lprD2of5Info Parameters lprD2of5Info A pointer to a D2OF5INFO data structure Return Values 0 S...

Page 119: ...anner Enable scanner if sStatus 2 printf Scanner error d sStatus else sStatus scnGetD2of5Info D25config Get config if sStatus 0 printf Scanner is disabled else Set values D25config uchEnable SCN_ENABLE D25config uchLength1 0 D25config uchLength2 0 Save values sStatus scnSetD2of5Info D25config if sStatus 0 printf Error setting values sStatus else Scan Bar Codes sStatus scnCloseScanner Disable scann...

Page 120: ... 1 Enables the scanner with scnOpenScanner or scnOpenScannerShared 2 Calls scnGetGeneralInfo 3 Sets the values in the GENERALINFO data structure 4 Calls scnSetGeneralInfo When the application disables the scanner the configuration values go back to the defaults Syntax short far scnSetGeneralInfo LPGENERALINFO lprGeneralInfo Parameters lprGeneralInfo A pointer to a GENERALINFO data structure Return...

Page 121: ...ror d sStatus else Get config sStatus scnGetGeneralInfo GENconfig if sStatus 0 printf Scanner is disabled else Set values GENconfig uchLaserOnTime 40 GENconfig uchPowerMode 1 GENconfig uchTriggerMode 1 GENconfig uchSameSymbolTMO 10 GENconfig uchLinearCodeSecur 1 GENconfig uchBiDirRedun SCN_DISABLE Save values sStatus scnSetGeneralInfo GENconfig if sStatus 0 printf Error setting values sStatus else...

Page 122: ...ation 1 Enables the scanner with scnOpenScanner or scnOpenScannerShared 2 Calls scnGetI2of5Info 3 Sets the values in the I2OF5INFO data structure 4 Calls scnSetI2OF5Info When the application disables the scanner the configuration values go back to the defaults Syntax short far scnSetI2of5Info LPI2OF5INFO lprI2of5Info Parameters lprI2of5Info A pointer to an I2OF5INFO data structure Return Values 0 ...

Page 123: ...d sStatus else Get config sStatus scnGetI2of5Info I25config if sStatus 0 printf Scanner is disabled else Set values I25config uchEnable SCN_ENABLE I25config uchLength1 0 I25config uchLength2 0 I25config uchChkDgtAlgorithm 1 I25config uchXmitCheckDigit SCN_ENABLE I25config uchCvtI2of5toEAN13 SCN_DISABLE Save values sStatus scnSetI2of5Info I25config if sStatus 0 printf Error setting values sStatus e...

Page 124: ...pplication 1 Enables the scanner with scnOpenScanner or scnOpenScannerShared 2 Calls scnGetMSIInfo 3 Sets the values in the MSIINFO data structure 4 Calls scnSetMSIInfo When the application disables the scanner the configuration values go back to the defaults Syntax short far scnSetMSIInfo LPMSIINFO lprMSIInfo Parameters lprMSIInfo A pointer to an MSIINFO data structure Return Values 0 Successful ...

Page 125: ...ror d sStatus else sStatus scnGetMSIInfo MSIconfig Get config if sStatus 0 printf Scanner is disabled else Set values MSIconfig uchEnable SCN_ENABLE MSIconfig uchLength1 0 MSIconfig uchLength2 0 MSIconfig uchCheckDigits 0 MSIconfig uchXmitCheckDigit SCN_ENABLE MSIconfig uchChkDgtAlgorithm 0 Save values sStatus scnSetMSIInfo MSIconfig if sStatus 0 printf Error setting values sStatus else Scan Bar C...

Page 126: ...onfigure the scanner the application 1 Enables the scanner with scnOpenScanner or scnOpenScannerShared 2 Calls scnGetScanInfo 3 Sets the values in the SCANINFO data structure 4 Calls scnSetScanInfo When the application disables the scanner the configuration values go back to the defaults Syntax short far scnSetScanInfo LPSCANINFO lprScanInfo Parameters lprScanInfo A pointer to a SCANINFO data stru...

Page 127: ...ture sStatus scnOpenScanner Enable scanner if sStatus 2 printf Scanner error d sStatus sStatus scnGetScanInfo SCNconfig Get config if sStatus 0 printf Scanner is disabled else SCNconfig uchCode39 SCN_ENABLE Set value sStatus scnSetScanInfo SCNconfig Save value if sStatus 0 printf Scanner is disabled else Scan Bar Codes sStatus scnCloseScanner Disable scanner ...

Page 128: ...ion 1 Enables the scanner with scnOpenScanner or scnOpenScannerShared 2 Calls scnGetUPCEANInfo 3 Sets the values in the UPCEANINFO data structure 4 Calls scnSetUPCEANInfo When the application disables the scanner the configuration values go back to the defaults Syntax short far scnSetUPCEANInfo LPUPCEANINFO lprUPCEANInfo Parameters lprUPCEANInfo A pointer to a UPCEANINFO data structure Return Valu...

Page 129: ...SCN_DISABLE UEconfig uchEnableUPCE1 SCN_DISABLE UEconfig uchEnableEAN8 SCN_DISABLE UEconfig uchEnableEAN13 SCN_DISABLE UEconfig uchEnableBookEAN SCN_DISABLE UEconfig uchEnableSupps 2 UEconfig uchEnableSuppRedun 10 UEconfig uchXmitUPCAChkDgt SCN_ENABLE UEconfig uchXmitUPCEChkDgt SCN_DISABLE UEconfig uchXmitUPCE1ChkDgt SCN_DISABLE UEconfig uchUPCAPreamble 2 UEconfig uchUPCEPreamble 0 UEconfig uchUPC...

Page 130: ...4 94 Programmer s Manual Save values sStatus scnSetUPCEANInfo UEconfig if sStatus 0 printf Scanner is disabled else Scan Bar Codes sStatus scnCloseScanner Disable scanner ...

Page 131: ... scanned data Syntax short far scnTrigger short sWait Parameters sWait Flag indicating whether to wait until the scan is complete Values are 0 Return immediately If the application uses this option the scan may still be in progress when the function returns to the application If so it must use scnScannerHit to determine when the scan ends 1 Wait until the scan is complete timed out or un decodable...

Page 132: ...ss invalid values in either parameter the beeper does not sound Syntax void far spkBeep unsigned char uchDuration unsigned short usFrequency Parameters uchDuration The duration in tenths of a second Values are 1 10 usFrequency The frequency in hertz Values are 110 10 000 Return Values None Example See scnGets for an example ...

Page 133: ...example 1 01 S Syntax int far sysGetBIOSVersion unsigned char far lpszVersion unsigned char far lpszDate Parameters lpszVersion Pointer to the BIOS version lpszDate Pointer to the BIOS build date If you do not need the date set this parameter to NULL Return Values 0 Successful 1 Unsuccessful Example include stdio h include mmsultra h void main void int iStatus 0 Status of retrieval unsigned char u...

Page 134: ...tus sysGetBIOSVersion ucVersion ucDate Get info if iStatus 0 printf BIOS Version retrieval failed else vidScroll 0 0 3 11 0 0x07 Display results vidPutCursor 0 0 0 printf BIOS printf Version is s n ucVersion printf Date is s ucDate ...

Page 135: ...hange the backlight to Values are 1 for On and 0 for Off Return Values None Example include conio h include stdio h include mmsultra h void main void int cInput 32 User input printf Turn backlight on n Y N Prompt user cInput _getch Get input switch cInput Take action case N vidBackLightOn 0 break case Y vidBackLightOn 1 break default printf Invalid input ...

Page 136: ...Syntax unsigned short far vidGetState short far lpsColCnt short far lpsPage Parameters lpsColCnt A variable pointer to the number of character columns lpsPage A variable pointer to the current active display page Return Values 0 The current video mode 20 column display Example See pclCalibrate for an example ...

Page 137: ...or 4 row printers values are 0 3 For 8 row printers values are 0 7 usCol Column Values are 0 19 usPage Display page For 4 row printers values are 0 3 For 8 row printers values are 0 1 Return Values None Example include stdio h include mmsultra h void main void vidSetPage 0 Set the page vidScroll 0 0 3 19 0 0x07 Clear the screen vidPutCursor 0 0 0 Move the cursor printf X n Print an X printf The X ...

Page 138: ... the application sets that page as the current one with vidSetPage Strings written to the current page appear immediately Syntax void far vidPutStr char far lpchString unsigned char uchAttr short sPage Parameters lpchString The string to write Bell backspace carriage return and line feed characters are invalid The string s length must be less than or equal to the number of remaining columns in the...

Page 139: ... h void main void vidSetPage 0 Set the page vidScroll 0 0 7 19 0 0x07 Clear the screen vidPutCursor 0 0 0 Move the cursor vidPutStr REVERSE 0x70 0 Print in reverse video vidPutCursor 1 0 0 Move the cursor vidPutStr NORMAL 0x07 0 Print in Normal video ...

Page 140: ...pointer to the character s attribute Returned values are 0x07 Normal video 0x70 Reverse video sPage The display page For 4 row printers values are 0 3 For 8 row printers values are 0 1 Return Values None Example include stdio h include mmsultra h void main void unsigned char ucCharacter 32 Character at position unsigned char ucAttribute 32 Attribute at position vidSetPage 0 Set page vidPutCursor 0...

Page 141: ...Function Reference 4 105 Display results printf Character read is c n ucCharacter if ucAttribute 0x07 printf Attribute read is nnormal else printf Attribute read is nreverse ...

Page 142: ...alues are 0 7 lpusCol A variable pointer to the column Values are 0 19 sPage The display page For 4 row printers values are 0 3 For 8 row printers values are 0 1 Return Values None Example include stdio h include mmsultra h void main void unsigned short usRow 0 Row position unsigned short usColumn 0 Column position vidScroll 0 0 3 11 0 0x07 Clear screen vidPutCursor 0 0 0 Move cursor vidReadCursor...

Page 143: ...ft short sBottom short sRight short sNumber unsigned char uchAttr Parameters sTop The window s top row For 4 row printers values are 0 3 For 8 row printers values are 0 7 sLeft The window s left most column Values are 0 19 sBottom The window s bottom row For 4 row printers values are 0 3 For 8 row printers values are 0 7 sRight The window s right most column Values are 0 19 sNumber The action If y...

Page 144: ...eturn Values None Example include stdio h include conio h include mmsultra h void main void Prompt user printf Press Enter to nclear the display nin reverse video _getch Read Enter vidScroll 0 0 3 11 0 0x70 Clear scr in rev video ...

Page 145: ...fine a cursor style specify a range of consecutive lines On printers with the 4 row printer there is a gap between lines 31 and 32 where nothing displays This gap causes a solid block cursor to look fine on the first three rows but not on the fourth row Due to this gap the application should use cursor line 7 only as a single line cursor Syntax void far vidSetCursorType short sStart short sEnd Par...

Page 146: ...nclude mmsultra h void main void int cStyle 32 Cursor style Prompt user printf Choose cursor type nA block nB underscore cStyle _getch Get input switch cStyle Take action case A vidSetCursorType 0 6 break case B vidSetCursorType 7 7 break default printf nInvalid input ...

Page 147: ...de Description Sets the video mode and clears the screen for the current display page Syntax void far vidSetMode unsigned short usMode Parameters usMode The video mode Enter 0 Return Values None Example See pclCalibrate for an example ...

Page 148: ...dScroll to clear the pages at the application s beginning If the application writes to a display page other than the current one the written string does not appear until the application sets that page as the current one with vidSetPage Strings written to the current page appear immediately Syntax void far vidSetPage short sPage Parameters sPage Display page For 4 line printers values are 0 3 For 8...

Page 149: ...ite to page 0 vidPutStr This is page 0 0x70 0 vidPutCursor 0 0 1 Write to page 1 vidPutStr This is page 1 0x70 1 Prompt user printf nPress any key to nswitch to page 0 _getch vidSetPage 0 Switch pages printf nPress any key to end Prompt user _getch vidScroll 0 0 3 11 0 0x07 Clear page 0 vidSetPage 1 Clear page 1 vidScroll 0 0 3 11 0 0x07 vidSetPage 0 Set to page 0 ...

Page 150: ... application sets that page as the current one with vidSetPage Strings written to the current page appear immediately To write a character and attribute use vidWriteCA Syntax void far vidWriteC unsigned char uchChr short sCount short sPage Parameters uchChr The ASCII character to write Bell backspace carriage return and line feed characters are invalid sCount The number of times to write the chara...

Page 151: ...ce 4 115 Example include mmsultra h void main void int iCharacter 42 An asterisk vidSetPage 0 Set page vidScroll 0 0 7 19 0 0x07 Clear screen vidPutCursor 0 0 0 Position cursor vidWriteC iCharacter 5 0 Write character ...

Page 152: ...current one the written string does not appear until the application sets that page as the current one with vidSetPage Strings written to the current page appear immediately Syntax void far vidWriteCA unsigned char uchChr unsigned char uchAttr short sCount short sPage Parameters uchChr The ASCII character to write Bell backspace carriage return and line feed characters are invalid uchAttr The char...

Page 153: ...are 0 3 For 8 row printers values are 0 1 Return Values None Example include mmsultra h void main void int iCharacter 42 An asterisk vidSetPage 0 Set page vidScroll 0 0 7 19 0 0x07 Clear screen vidPutCursor 0 0 0 Position cursor vidWriteCA iCharacter 0x70 5 0 Write character ...

Page 154: ...4 118 Programmer s Manual ...

Page 155: ...r configuration for Codabar bar codes CODE128INFO Scanner configuration for Code 128 bar codes CODE39INFO Scanner configuration for Code 39 bar codes CODE93INFO Scanner configuration for Code 93 bar codes D2OF5INFO Scanner configuration for D 2 of 5 bar codes GENERALINFO General scanner configuration I2OF5INFO Scanner configuration for I 2 of 5 bar codes MSIINFO Scanner configuration for MSI bar c...

Page 156: ...unsigned char uchEnableCLSIEdit unsigned char uchEnableNOTISEdit CODABARINFO Field Description uchEnable Enable disable the ability to scan Codabar bar codes Default SCN_DISABLE uchLength1 uchLength2 Specifies lengths including start and stop characters for Codabar bar codes You can specify one or two lengths a range of lengths or that any length is valid Enter values as follows Option uchLength1 ...

Page 157: ...lity to strip the start and stop characters from 14 character Codabar bar codes and insert a space after the first fifth and tenth characters Default SCN_DISABLE uchEnableNOTISEdit Enable disable the ability to strip the start and stop characters from Codabar bar codes Default SCN_DISABLE ...

Page 158: ...128Info typedef struct _Code128Info unsigned char uchEnableUSS128 unsigned char uchEnableUCCEAN128 unsigned char uchEnableISBT128 CODE128INFO Field Description uchEnableUSS128 Enable disable the ability to scan Code 128 bar codes Default SCN_ENABLE uchEnableUCCEAN128 Enable disable the ability to scan UCC EAN 128 bar codes Default SCN_ENABLE uchEnableISBT128 Enable disable the ability to scan ISBT...

Page 159: ...ed char uchLength1 unsigned char uchLength2 unsigned char uchVerifyCheckDigit unsigned char uchXmitCheckDigit unsigned char uchEnableFullASCII CODE39INFO Field Description uchEnable Enable disable the ability to scan Code 39 bar codes Default SCN_ENABLE uchEnableTrioptic Enable disable the ability to scan Trioptic Code 39 bar codes Do not enable uchEnableTrioptic and uchEnableFullASCII at the same...

Page 160: ...gth2 1 Length Value 0 2 Lengths High Value Low Value Range Min Value Max Value Any length 0 0 Default 2 uchLength1 and 55 uchLength2 uchVerifyCheckDigit Enable disable the ability to check the integrity of Code 39 bar codes When this parameter is enabled only Code 39 symbols with a modulo 43 check digit are decoded Default SCN_DISABLE uchXmitCheckDigit Enable disable the ability to transmit check ...

Page 161: ...har uchLength1 unsigned char uchLength2 CODE93INFO Field Description uchEnable Enable disable the ability to scan Code 93 bar codes Default SCN_DISABLE uchLength1 uchLength2 Specifies lengths including check digits for Code 93 bar codes You can specify one or two lengths a range of lengths or that any length is valid Enter values as follows Option uchLength1 uchLength2 1 Length Value 0 2 Lengths H...

Page 162: ...Length2 D2OF5INFO Field Description uchEnable Enable disable the ability to scan D 2 of 5 bar codes Default SCN_DISABLE uchLength1 uchLength2 Specifies lengths including check digits for D 2 of 5 bar codes You can specify one or two lengths a range of lengths or that any length is valid Enter values as follows Option uchLength1 uchLength2 1 Length Value 0 2 Lengths Higher Value Lower Value Range M...

Page 163: ...signed char uchBiDirRedun GENERALINFO Field Description uchLaserOnTime The maximum time in increments of 1 seconds of a scan Values are 5 99 Default 30 uchPowerMode Specifies whether power remains on or the scanner goes into low power mode after a scan If uchTriggerMode is 1 Continuous and uchPowerMode is 1 Low Power the scanner remains continually on Values are 0 Continually On 1 Low Power Defaul...

Page 164: ...Levels for more information Default 1 uchBiDirRedun Enable disable the requirement to scan bar codes in both directions forward and reverse Default SCN_DISABLE Scan Security Levels The following table describes the security levels used with the uchLinearCodeSecur parameter Level Number Description 1 The following bar code types provided they meet the specified length requirements must be scanned s...

Page 165: ... the following or these bar codes as long as they do not meet the length specification must be scanned successfully twice MSI 4 characters or less D 2 of 5 8 characters or less I 2 of 5 8 characters or less 4 All bar code types of all lengths must be scanned successfully three times ...

Page 166: ...ed char uchXmitCheckDigit unsigned char uchCvtI2of5toEAN13 I2OF5INFO Field Description uchEnable Enable disable the ability to scan I 2 of 5 bar codes Default SCN_ENABLE uchLength1 uchLength2 Specifies lengths including check digits for I 2 of 5 bar codes You can specify one or two lengths a range of lengths or that any length is valid Enter values as follows Option uchLength1 uchLength2 1 Length ...

Page 167: ...heck the integrity against the USS algorithm 2 Check the integrity against the OPCC algorithm Default 0 uchXmitCheckDigit Enable disable the requirement to transmit check digits with the data Default SCN_DISABLE uchCvtI2of5toEAN13 Enable disable the requirement to convert 14 character I 2 of 5 bar codes into EAN13 bar codes and transmit them as EAN13 bar codes To use this parameter enable uchEnabl...

Page 168: ...unsigned char uchCheckDigits unsigned char uchXmitCheckDigit unsigned char uchChkDgtAlgorithm MSIINFO Field Description uchEnable Enable disable the ability to scan MSI bar codes Default SCN_DISABLE uchLength1 uchLength2 Specifies lengths for MSI bar codes You can specify one or two lengths a range of lengths or that any length is valid Enter values as follows Option uchLength1 uchLength2 1 Length...

Page 169: ...are 0 One check digit 1 Two check digits For this value you must also set uchChkDgtAlgorithm Default 0 uchXmitCheckDigit Enable disable the requirement to transmit data with the check digit Default SCN_DISABLE uchChkDgtAlgorithm Specifies the check digit algorithm to use Values are 0 Mod 10 Mod 11 1 Mod 10 Mod 10 Default 1 ...

Page 170: ...N unsigned char uchEnableSupps unsigned char uchEnableSuppRedun unsigned char uchXmitUPCAChkDgt unsigned char uchXmitUPCEChkDgt unsigned char uchXmitUPCE1ChkDgt unsigned char uchUPCAPreamble unsigned char uchUPCEPreamble unsigned char uchUPCE1Preamble unsigned char uchCvtUPCEtoUPCA unsigned char uchCvtUPCE1toUPCA unsigned char uchEAN8ZeroExtend unsigned char uchCvtEAN8toEAN13 unsigned char uchSecu...

Page 171: ...okEAN Enable disable the ability to scan Bookland EAN bar codes Default SCN_DISABLE uchEnableSupps Enable disable the ability to scan supplemental characters 2 5 according to code format conventions UPCA 2 UPCE0 2 etc You can also specify to scan bar codes with or without supplemental characters Values are 0 Disable can scan with or without supplementals but supplementals are ignored 1 Enable cann...

Page 172: ...s are 2 20 Default 7 uchXmitUPCAChkDgt Enable disable the requirement to transmit UPCA bar codes with the check digit Default SCN_ENABLE uchXmitUPCEChkDgt Enable disable the requirement to transmit UPCE0 bar codes with the check digit Default SCN_ENABLE uchXmitUPCE1ChkDgt Enable disable the requirement to transmit UPCE1 bar codes with the check digit Default SCN_ENABLE uchUPCAPreamble Specifies ho...

Page 173: ... code Default 1 uchCvtUPCEtoUPCA Enable disable the requirement to convert UPCE0 bar codes to UPCA bar codes before transmission After conversion the bar code is affected by UPCA programming selections Default SCN_DISABLE uchCvtUPCE1toUPCA Enable disable the requirement to convert UPCE1 bar codes to UPCA bar codes before transmission After conversion the bar code is affected by UPCA programming se...

Page 174: ...ling this parameter Default SCN_DISABLE Scan Security Levels The security level specifies how aggressive the scanner works during a scan With a low bar code quality the scanner must work more aggressively and vice versa Choose the minimum security level you need according to the following guidelines Level Description 0 Provides security sufficient for bar codes that meet specifications 1 Provides ...

Page 175: ...ding Trigger Pulls Audio Visual Feedback Printing Labels An application prints labels by submitting MPCL packets to the Print subsystem At a minimum the application must submit format and batch packets To submit these packets use either pclWrite or pclOpen For more information see pclWrite or pclOpen in Chapter 4 For information about MPCL packets refer to the Packet Reference Manual A batch packe...

Page 176: ...if pclCalibratePaper was called in the previous step 4 Print using any method listed above 5 Close the Print subsystem with pclClose Printing Single Labels To print single labels send a format and a batch with a quantity of 1 to the printer SAMPLE1 C in the Samples sub directory illustrates printing single labels Printing Multiple Labels An application can print multiple labels in a strip or in a ...

Page 177: ... feeds the supply through the printer in a continuous strip In a print loop the printer may or may not be in peel mode The mode you want depends on how you load the supplies in the printer Refer to the Equipment Manual for more information You cannot use linerless supplies in peel mode Feed Mode Feed mode determines how the printer prints the labels There are two feed modes Mode Description Contin...

Page 178: ...es until the printer finishes The following code illustrates how to pause the application using pclStatus while iStatus pclStatus 1 See pclStatus in Chapter 4 for more information Loading Multiple Packets Together The application can load multiple packets together after it initializes the Print subsystem You can create one or more text files containing any number of packets and then pass those fil...

Page 179: ...enScannerShared 2 If necessary configure the scanner using the scnGetxxx and scnSetxxx functions 3 Use any scanner function to operate the scanner These functions are described in Chapter 4 and all begin with an scn prefix 4 Disable the scanner with scnCloseScanner SAMPLE5 C in the Samples sub directory illustrates how to use the scanner Reading Trigger Pulls Pressing any key including pulling the...

Page 180: ...in the application you include some sort of audio or visual feedback indicating that the trigger has been pulled For example after a trigger pull the application may have the printer beep Without such feedback most users keep pulling not realizing the pull has registered ...

Page 181: ... the printer and PC 2 Copy files between the units Establishing a PC Printer Connection You must establish a connection between the PC and the printer using the UClient and UServe software that runs on the PC and printer respectively To establish this connection 1 Connect the printer and PC with a cable part number 124054 2 Turn on the printer and type USERVE at the DOS prompt You will see USERVE ...

Page 182: ... from the Connection Menu You will see You set the communication defaults on this screen 5 Select the PC communications port you are using and the baud rate for the printer and PC to use Then click OK 6 Select Open from the Connection menu to open the connection between the two units ...

Page 183: ...If one side stops being ready the other one stays ready To re open the connection you only need to make the one side ready again The connection between the units immediately opens Copying Files To copy files between the units you enter commands at the UClient prompt Note that you copy files with the PC only the one exception is the urun command see urun 1 Leaving it powered on the PC printer conne...

Page 184: ...UClient s Connection menu to sever the PC printer connection 5 Select Exit from UClient s File menu to exit UClient 6 Type X on the printer s keypad to exit UServe Example File Copy Suppose that the application consists of a number of files in a directory called App on the PC AUTOEXEC BAT CONFIG SYS Several BAT files The application s EXE file FORMAT FMT GR1 GPH Several GPH files Several TXT files...

Page 185: ...taking the PC out of a ready state get Copies a file from the printer to the PC help Displays a list of available commands or help information about a specific command lcd Changes the directory on the PC ldel Deletes a file on the PC ldir Lists details about files and or directories on the PC as specified lmd Creates a directory on the PC lrd Deletes a directory on the PC lwd Displays the path to ...

Page 186: ... the printer udir Lists details about files and or directories on the printer as specified udiskfree Displays the size of a printer drive and the amount of available space it has umd Creates a directory on the printer urd Deletes a directory on the printer urun Runs a DOS command or program on the printer uview Displays a file s contents on the printer uwd Displays the path to the current director...

Page 187: ...e connection between the printer and the PC displays Connection Closed to Ultra to confirm it get Description Copies a file from the printer to the PC NOTE If a file by the same name already exists it will overwrite the file without warning Syntax get printerfile pcfile Parameters printerfile The name and path of the source file pcfile The name and path of the destination file If you do not specif...

Page 188: ...r to the following Getting File autoexec bat Unknown Size Bytes Received 537 Complete help Description Displays a list of available commands or help information about a specific command Syntax help command Parameters command The name of a command Example help lrd displays the following on the PC Command LRD Description local remove directory Parameters local directory ...

Page 189: ... of a subdirectory indicating one directory higher than the current one Example lcd c backups changes the current directory to c backups and displays this path to confirm ldel Description Deletes a file on the PC Syntax ldel filename Parameters filename The name and optionally the path of a file Example ldel autoexec bat deletes autoexec bat on the PC and displays Deleted File autoexec bat to conf...

Page 190: ...optionally the path of a file or directory The default is the current directory Example ldir projects displays the contents of the projects directory on the PC such as the following 03 14 2003 15 18 13 DIR 03 14 2003 15 18 13 DIR 9850 01 07 2003 17 34 22 DIR adkpm pdf 03 14 2003 15 18 13 1931471 adkpmcv pdf 03 14 2003 14 59 06 1007901 app a doc 03 14 2003 11 04 34 33792 app a pdf 03 14 2003 11 54 ...

Page 191: ...Example lmd tc6035pm creates a directory named tc6035pm on the PC and displays Created directory tc6035pm to confirm it lrd Description Deletes a directory on the PC Syntax lrd directory Parameters directory The name and optionally the path of a directory If the directory does not exist an error occurs Example lrd tc6035pm deletes the tc6035pm directory on the PC and displays Removed directory tc6...

Page 192: ...ts adk open Description Puts the PC in a communications ready state If the printer is ready UServe is running the connection between the printer and the PC opens Syntax open commport baudrate Parameters commport The communications port on the PC that you have attached the cable to baudrate The baud rate for communications Example open com1 9600 opens the com1 port on the PC for communications at 9...

Page 193: ...rinter A PC printer connection must be in place before using this command NOTE If a file by the same name already exists it will overwrite the file without warning Syntax put pcfile printerfile Parameters pcfile The name and optionally the path of the file to copy You can use the wild card to copy multiple files i e txt to copy all txt files printerfile The name and optionally the path of the file...

Page 194: ...example Sending File lookup txt 2000 bytes Bytes Sent 2000 Complete putbios Description Copies a BIOS binary file from the PC to the printer Syntax putbios filename Parameters filename The name of the BIOS file Example putbios bios dat copies bios dat from the PC to the printer displaying the file name and status of the command as it does so puttrueffs Description Copies a TrueFFS binary file from...

Page 195: ...us of the command as it does so quit Description Exits UClient Syntax quit Parameters None Example quit Exits the program and returns PC control to Windows reboot Description Restarts the printer UServe stops running as a result Syntax reboot Parameters None Example reboot restarts the printer If successful the UClient prompt reappears ...

Page 196: ... 4800 9600 19200 38400 57600 and 115200 Example setbaud 9600 sets the baud rate to 9600 setport Description Specifies the port to use on the PC for communication between it and the printer overriding the default set from UClient s Connection menu Syntax setport port Parameters port The communication port on the PC that you have attached the cable to Values are com1 com8 Example setport com1 specif...

Page 197: ...s length The length of the timeout in seconds Example settimeout 10 sets the PC timeout to 10 seconds If the command is successful the UClient prompt reappears ucd Description Changes the directory on the printer Syntax ucd directory Parameters directory The name or path of the new directory Move up one directory the specification does not work with this command Example ucd data changes the printe...

Page 198: ...le udel autoexec bat deletes autoexec bat and displays Deleted File autoexec bat confirming the deletion udir Description Lists details about files and or directories on the printer as specified Details include date and time of creation or last update and size Syntax udir filedirspec Parameters filedirspec A file or directory name and optionally the path The default is the current directory ...

Page 199: ... BAT 03 28 2003 08 52 44 537 APP EXE 04 04 2003 10 14 56 87219 DEBUG EXE 05 31 1994 06 22 00 15718 DIAG EXE 04 03 2003 15 16 36 98782 U EXE 01 04 2003 08 17 56 65367 TP EXE 04 03 2003 15 12 16 6859 UTIL 02 17 1980 22 22 58 DIR CONFIG SYS 03 28 2003 08 46 50 602 udiskfree Description Displays the size of a printer drive and the amount of available space it has Syntax udiskfree disk Parameters disk ...

Page 200: ... Available 659456 bytes umd Description Creates a directory on the printer If the directory already exists an error occurs Syntax umd directory Parameters directory The name and optionally the path of the new directory Example umd backups creates a subdirectory to the current directory called backups on the printer ...

Page 201: ...inter UServe runs beneath this offshoot task When the command or program ends UServe is still running Running this command is the one case of where you would use the printer rather than only using UClient If you run a program such as Diagnostics on the printer Command Failed Did not receive a response from the Ultra appears on the UClient screen This error is nothing to worry about It should not o...

Page 202: ...splays a file s contents on the printer Syntax uview file Parameters file The name and optionally the path of the file to display Example uview test txt displays the contents of test txt Following is an example test txt This is a test Uwd Description Displays the path to the current directory on the printer Syntax uwd Parameters None ...

Page 203: ...nection exists If so then verify the syntax and parameters of the command and re try it Connection Closed to Ultra You tried to close a PC printer connection that already is closed Connection to the Ultra has not been opened Establish a PC printer connection See Establishing a PC Printer Connection Could not create directory There is not enough disk space to create a directory Free some space befo...

Page 204: ...and Did not receive a response from the Ultra Verify that a valid PC printer connection exists If so increase the length of the timeout Then retry the command From the user perspective a command may finish running but there can still be processing going on behind the scenes before the command is truly finished A timeout can occur during this timeframe Therefore when a timeout error occurs check to...

Page 205: ...or spelling and retry the command No matching files found You specified file names with a wild card and there are none fitting the specification Verify the file names and spelling and retry the command Open Failed UServe is not running on the printer Start it and establish a PC printer connection Response could not be read from Ultra Verify that a valid PC printer connection exists and retry the c...

Page 206: ...ease the length of the timeout with the settimeout command and retry the command that timed out Unknown Command Verify the spelling of the command name and re enter it Unknown Drive Letter Retry the udiskfree command but specify either c or d as the drive letter Unknown Error Error xxx A UServe error occurred Physically reboot the printer not with the reboot command start UServe and try the comman...

Page 207: ...s These samples are located in the SDK s samples sub directory This appendix describes these samples Following are the samples discussed Sample Description 1 Prints with the trigger 2 Prints with the on demand sensor 3 Prints a strip of labels 4 Prints using fonts and formats loaded with pclOpen 5 Uses the scanner 6 Scans and prints 7 Scans specific bar codes and prints A ...

Page 208: ...ery is charged enough for printing B Loads a batch packet and prints the format C Waits until the label prints by checking the status repeatedly until it returns something other than busy 4 Closes the Print subsystem Sample 2 Function Prints using the on demand sensor Algorithm 1 Initializes the Print subsystem without allocating font storage memory 2 Loads a format packet This format defines the ...

Page 209: ...hout allocating font storage memory 2 Loads a format packet 3 Performs the following until an error occurs A Checks whether the battery is charged enough for printing B Prompts the operator to enter a quantity and builds the batch dynamically with that number and other data C Builds the batch and prints the label s D Waits until the labels print by checking the status repeatedly until it returns s...

Page 210: ... calibrate supplies A Waits for the operator to press the trigger B Checks whether the battery is charged enough for printing C Loads a batch packet D Waits until the label prints by checking the status repeatedly until it returns something other than busy 4 Closes the Print subsystem Sample 5 Function Uses the scanner Algorithm 1 Enables the scanner 2 Waits for the operator to press the trigger P...

Page 211: ...op or f 0 to calibrate supplies A Initiates a scan B Checks whether the battery is charged enough for printing C Loads the batch prompting for a quantity D Waits until the label prints by checking the status repeatedly until it returns something other than busy 5 Disables the scanner 6 Closes the Print subsystem Sample 7 Function Scans and prints Algorithm 1 Initializes the Print subsystem without...

Page 212: ...ut of the loop or f 0 to calibrate supplies A Initiates a scan B Checks whether the battery is charged enough for printing C Prompts the operator to enter a quantity D Builds the batch dynamically with the entered data E Loads the batch F Waits until the label prints by checking the status repeatedly until it returns something other than busy 6 Disable the scanner 7 Close the Print subsystem ...

Page 213: ...can write data to a display page behind the scenes and display it when ready Motion Control subsystem The printer subsystem that controls how paper feeds through the printer MPCL Monarch Printer Control Language This language contains commands that drive the printer Refer to the Packet Reference Manual for more information Packet A unit of MPCL commands For example to print a particular label the ...

Page 214: ...ernal to the scanner that contains the bar code data immediately after scanning Stock Type The type of supplies you load in the printer They can be paper fax or synthetic Supplies The media that the printer prints on For example it can print labels or tags Supplies can be made of different stock types See Stock Type in this glossary for more information Video Mode The 20 columns on the printer s d...

Page 215: ...ving Codabar bar code values 4 52 retrieving Code 128 bar code values 4 53 retrieving Code 39 bar code values 4 54 retrieving Code 93 bar code values 4 55 retrieving D 2 of 5 bar code values 4 56 retrieving general configuration values 4 57 retrieving I 2 of 5 bar code values 4 58 retrieving MSI bar code values 4 59 retrieving UPC EAN bar code values 4 66 setting general information values 4 84 UP...

Page 216: ... beeper sounding 4 96 BIOS version retrieving 4 97 black mark sensor retrieving state of 4 26 booting normally 2 11 options 2 12 building applications 3 3 packets dynamically 6 5 bypassing CONFIG SYS and AUTOEXEC BAT 2 12 C calibrating supplies 4 13 4 18 characters reading at current cursor location 4 104 retrieving from scanner with echoing 4 50 retrieving from scanner without echoing 4 48 writin...

Page 217: ... Code 93 bar codes configuration data structure 5 7 retrieving configuration values 4 55 setting configuration values 4 80 CODE128INFO data structure 5 4 CODE39INFO data structure 5 5 CODE93INFO data structure 5 7 commands uclient 7 5 commands uclient close 7 7 get 7 7 help 7 8 lcd 7 9 ldel 7 9 ldir 7 10 lmd 7 11 lrd 7 11 lwd 7 12 open 7 12 ping 7 13 put 7 13 putbios 7 14 puttrueffs 7 14 quit 7 15...

Page 218: ...f SDK 1 3 creating MPCLII packets 3 2 current supply type retrieving 4 33 cursor location current reading characters at 4 104 retrieving 4 106 writing characters and attributes at 4 116 writing characters at 4 114 writing strings and attributes at 4 102 cursors defining style 4 109 setting locations 4 101 D D 2 of 5 bar codes configuration data structure 5 8 retrieving configuration values 4 56 se...

Page 219: ... 3 1 disabling display 2 12 scanner 4 44 display 2 2 clearing 4 107 disabling 2 12 enabling 2 12 scrolling up or down 4 107 setting active page 4 112 display speed setting 2 3 display turning on or off 2 3 documentation related 1 4 E EAN bar codes configuration data structure 5 16 retrieving configuration values 4 66 saving configuration values 4 92 enabling display 2 12 scanner 4 67 scanner while...

Page 220: ...canner 4 44 scnGetBarCodeType 4 46 scnGetch 4 48 scnGetche 4 50 scnGetCodabarInfo 4 52 scnGetCode128Info 4 53 scnGetCode39Info 4 54 scnGetCode93Info 4 55 scnGetD2of5Info 4 56 scnGetGeneralInfo function 4 57 scnGetI2of5Info 4 58 scnGetMSIInfo 4 59 scnGets 4 60 scnGetScanInfo 4 62 scnGetScannedData 4 63 scnGetUPCEANInfo 4 66 scnOpenScanner 4 67 scnOpenScannerShared 4 69 scnScannerHit 4 72 scnSetCoda...

Page 221: ... 58 setting configuration values 4 86 I2OF5INFO data structure 5 12 include files 3 3 information about supplies specifying 4 13 4 39 initializing Print subsystem with normal memory 4 35 initiating scans 4 95 K kbdClrFunct function 4 2 kbdGetMode function 4 3 kbdRestoreMode function 4 4 kbdSetAlpha function 4 6 kbdSetCaps function 4 8 kbdSetFunct function 4 9 kbdSetNormal function 4 11 keypad 2 4 ...

Page 222: ... configuration values 4 59 setting configuration values 4 88 MSIINFO data structure 5 14 N network notes 2 15 normal boot 2 11 numeric normal mode activating 4 11 O on demand sensor retrieving state of 4 30 online passthrough 3 2 open command 7 12 options for booting 2 12 P packets MPCLII building dynamically 6 5 creating 3 2 loading from a file 4 37 loading individually 4 43 loading multiple toge...

Page 223: ...ls 6 2 pausing while 6 4 single labels 6 2 programming techniques 6 1 put command 7 13 putbios command 7 14 puttrueffs command 7 14 Q quit command 7 15 R reading characters from current cursor location 4 104 trigger pulls 6 5 reboot command 7 15 receiving prompts for each line in CONFIG SYS and AUTOEXEC BAT 2 12 reference data structures 5 1 reference functions 4 1 REMDISK utility using 3 4 REMSER...

Page 224: ... on demand sensor state 4 30 Print subsystem status 4 42 scanner buffer contents with autotrigger 4 60 scanner buffer contents without autotrigger 4 63 scanner configuration information 4 62 supplies information 4 38 type of last bar code scanned 4 46 S sample applications A 1 scan initiating 4 95 scanner checking for data in buffer 4 72 configuring 4 90 disabling 4 44 enabling 4 67 enabling while...

Page 225: ... function 4 84 scnSetI2of5Info function 4 86 scnSetMSIInfo function 4 88 scnSetScanInfo function 4 90 scnTrigger function 4 95 scnUPCEANInfo function 4 92 scrolling display up or down 4 107 SDK contents 1 3 libraries 3 4 setbaud command 7 16 setport command 7 16 settimeout command 7 17 setting active display page 4 112 cursor location 4 101 video mode 4 111 setting display speed 2 3 software requi...

Page 226: ...g configuration values 4 66 setting configuration values 4 92 UPCEANINFO data structure 5 16 upper case alpha mode activating 4 8 urd command 7 21 urun command 7 21 userve 7 1 using scanner 6 5 utilities LCD 2 3 REMDISK 3 4 REMSERV 3 4 uview command 7 22 uwd command 7 22 V vidBackLightOn function 4 99 video mode retrieving current 4 100 setting 4 111 vidGetState function 4 100 vidPutCursor functio...

Page 227: ... 2 15 writing applications 3 2 characters and attributes at current cursor location 4 116 characters at current cursor location 4 114 MPCLII packets to Print subsystem 4 43 strings and attributes at current cursor location 4 102 ...

Page 228: ...14 Index ...

Page 229: ......

Page 230: ......

Reviews: