Unitech PT600 Programming Reference Manual

Unitech PT600 Programming Reference Manual

Portable terminal
Hide thumbs Also See for PT600:

Advertisement

Quick Links

PT600 Portable Terminal
Programming Reference Guide
Document number: 3506000120

Advertisement

Table of Contents
loading

Summary of Contents for Unitech PT600

  • Page 1 PT600 Portable Terminal Programming Reference Guide Document number: 3506000120...
  • Page 2: Table Of Contents

    Table of Contents Chapter 1 BIOS and System Functions 1.1 Interrupt Vector Assignments for I/Os........1 1.2 Display Font Functions (INT 09H)...........1 1.3 Kermit Server Function (INT 0FH) ..........4 1.4 LCD Control Functions (INT 10H ...........5 1.5 System Functions (INT 21H) ...........9 1.6 Power Management Function (INT 22H) .........47 1.7 Beeper Control (INT 31H) ............48 1.8 RS232 Control Functions (INT 33H) ........48...
  • Page 3: Chapter 1 Bios And System Functions

    Chapter 1 BIOS and System Functions The PT600 operating system supports DOS/BIOS function calls that a programmer can access when developing an application for the portable. Interrupt Vector Assignment for I/Os Vector BIOS Function 09 H Display Font 0F H...
  • Page 4: Alpha

    regs.h.ah = (unsigned char)status; int86(0x09,&regs,&regs); Set Font Type Entry Parameter: AH= 2 AL= 0/1 ; set to large/small font Return Value: None Example: void TL_font(int status) regs.h.ah = (unsigned char)status; regs.h.al = 2; int86(0x09,&regs,&regs); Get Font Type Entry Parameter: AH= 3 Return Value: AL= 0/1 ;...
  • Page 5: Alpha

    void TL_change_all_ASCII_font(int type,unsigned char *str) regs.h.ah=4; regs.h.al=(unsigned char)type; segregs.ds = FP_SEG(str); regs.x.dx = FP_OFF(str); int86x(0x9,&regs,&regs,&segregs); Get Font Data for All Characters Entry Parameter: AH= 5 AL= 0/1 ; large/small font DS:DX ; pointer to the buffer ; ( for large font: buffer size = 16*256 =4096 bytes ;...
  • Page 6: Kermit Server Function (Int 0Fh)

    Kermit Server Function ( INT 0FH ) Entry Parameter: None Return Value: None When INT 0FH is called in user application, PT600 will enter Kermit server. Pressing [CMD] key then [Exit] key to leave it and return to user application. Example : void TC_kermit_mode()
  • Page 8: Lcd Control Functions

    Example: void TL_scroll(int status) regs.h.ah = 1; regs.h.al = (unsigned char)status; int86(0x10,&regs,&regs); Set Cursor Position Entry Parameter: AH = 2 DH = Row DL = Column PT600 8x16 0~15 0~12 Column Return Value: None Example : void TL_gotoxy(int x,int y)
  • Page 9 regs.h.ah = 2; regs.h.dh = (unsigned char)y; regs.h.dl = (unsigned char)x; int86(0x10,&regs,&regs); Get Cursor Position Entry Parameter: AH = 3 Return Value: DH = Row DL = Column Example : void TL_getxy(int *x,int *y) regs.h.ah = 3; int86(0x10,&regs,&regs); *y = regs.h.dh; *x = regs.h.dl;...
  • Page 10 Sample C program to display 16x16 graphic pattern. 9 10 11 12 13 14 15 16 content FF FF 3E 1C C9 E3 F7 FF FF FF FF FF FF FF FF FF ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦...
  • Page 11 regs.h.ah=0; int86(0x9, &regs, &regs); /* set large font */ regs.h.ah=5; regs.h.al=0; int86(0x10, &regs, &regs); /* set cursor off */ buff=logo; regs.h.ah=4; regs.h.dh=1; /* Row */ regs.h.dl=2; /* Column */ regs.x.bx=FP_OFF(buff); sregs.ds=FP_SEG(buff); int86x(0x10, &regs, &regs, &sregs); getch(); Set Cursor On/Off Entry Parameter: AH = 5 AL = 0/1 ;...
  • Page 12: System Functions (Int 21H)

    Display Character Entry Parameter: AH = 0AH AL = 0 - 255 ; character to display Return Value: None Example regs.h.ah = 0x0A; regs.h.al = cc; int86(0x10,&regs,&regs); Display 16*16 Bitmap at Current Cursor Position Entry Parameter: AH = 4FH DS:BX ; pointer to bitmap (32-bytes pattern data) Return Value: None Note: This function is available only in large font.
  • Page 13 Entry Parameter: AH = 1 Return Value: AL = 0 – 255 ; ASCII character Example: unsigned char TS_stdin() regs.h.ah= 1; int86(0x21,&regs,&regs); return(regs.h.al); Write LCD Entry Parameter: AH = 2 DL = 0 – 255 ; ASCII character Return Value: None Example: void TS_stdout(unsigned char ch) regs.h.ah= 2;...
  • Page 14 Return Value: None Note: Only for NONE communication protocol Example: void TS_stdaux_out(unsigned char ch) regs.h.ah= 4; regs.h.dl= ch; int86(0x21,&regs,&regs); return;...
  • Page 15 Direct Console I/O Entry Parameter: AH = DL = 0 – 254 ; write ASCII character in DL to LCD ; read ASCII character from keypad Return Value: 1) When read (DL <> 255): Character in AL if ZERO flag is cleared No input if ZERO flag is set 2) When write (DL= 255): None...
  • Page 17 Write Character String to LCD Entry Parameter: AH = 9 DS:DX ; pointer to string buffer Return Value: None Example: void TS_stdout_string(unsigned char *str) segregs.ds = FP_SEG(str); regs.x.dx = FP_OFF(str); regs.h.ah= 9; int86x(0x21,&regs,&regs,&segregs); return; Buffered Keypad Input Entry parameter: AH = 0AH DS:DX ;...
  • Page 18 regs.h.ah= 0x0b; int86(0x21,&regs,&regs); return(regs.h.al); LCD Backlight ON/OFF Control Entry Parameter: AH = 1AH BH = 0 AL = 0/1 ; set LCD backlight OFF/ON Return Value: None Example: void TL_backlight(int status) regs.h.ah= 0x1A; regs.h.bh= 0; regs.h.al= (unsigned char)status; int86(0x21,&regs,&regs); Buzzer ON/OFF Control Entry Parameter: AH = 1AH BH = 1...
  • Page 19 Example: void TD_beeper_vol(int status) regs.h.ah= 0x1A; regs.h.bh= 3; regs.h.al= (unsigned char)status; int86(0x21,&regs,&regs); Enable/Disable RS232 Port Entry Parameter: AH = 1AH BH = 4 AL = 0/1 ; disable/enable Return Value: None Example: void TD_serial(int status) regs.h.ah= 0x1A; regs.h.bh= 4; regs.h.al= (unsigned char)status; int86(0x21,&regs,&regs);...
  • Page 20 regs.h.bh= 5; regs.h.al= (unsigned char)type; regs.h.bl= (unsigned char)status; int86(0x21,&regs,&regs);...
  • Page 21 Set Keypad Language Entry Parameter: AH = 1AH BH = 7 AL = 0 ; English ; Sweden / Finland ; Danish ; Spanish ; French ; German ; Italian Return Value: None Note: The functions defines input characters in ALPHA mode for key [0]: Mode Display...
  • Page 22 ‘¥’ (9DH) in ASCII is replaced with ‘Ø’ when Danish is selected. Example: void TD_key_language(int status) regs.h.ah= 0x1A; regs.h.bh= 7; regs.h.al= (unsigned char)status; int86(0x21,&regs,&regs); Check Main Battery Status Entry Parameter: AH = 1AH BH = 8 Return Value: AL = 0/1 ;...
  • Page 23 BH = 0AH AL = 0 ; Set the Good-read LED (green light) OFF ; Set the Good-read LED (green light) ON ; Set the Good-read LED controlled by system Return Value: None Note: If the function is called by AL=0 or AL=1, the system will not control Good-read LED ON/OFF when a bar code label is decoded successfully.
  • Page 24 Example: void TS_bar_good_read(int status) regs.h.ah= 0x1A; regs.h.bh= 0x0A; regs.h.al= (unsigned char)status; int86(0x21,&regs,&regs); Set Laser Scanner Trigger Mode Entry Parameter: AH = 1AH BH = 0BH AL = 0/1 ; Normal / Flash mode Return Value: None Example: void TD_flash_trigger(int status) regs.h.ah= 0x1A;...
  • Page 25 BH = 0DH Return Value: AL = 0 ; Has no built-in or clip on laser scanner ; Has built-in or clip on laser scanner Example: int TD_check_scanner() regs.h.ah = 0x1A; regs.h.bh = 0x0D; int86(0x21,&regs,&regs); return(regs.h.al); Support Aim Mode for SE-1200 family laser engines a) Manual Setting USER MENU/ 8.
  • Page 26 int TD_get_bar_type() regs.h.ah = 0x1B; regs.h.bh = 5; int86(0x21,&regs,&regs); return(regs.h.al); Get MULTIPOINT Address Entry Parameter: AH = 1BH BH = 6 Returned Value: AL = Address ; ASCII character ‘A’ - ’Y’ or ’0’ - ’6’ Example: char TC_get_address() regs.h.ah = 0x1B; regs.h.bh = 6;...
  • Page 27 1000xxxx baud 19200 1001xxxx baud 38400 1010xxxx baud 57600 bits 3-2: xxxx00xx none parity xxxx01xx parity xxxx11xx even parity bit 1: xxxxxx0x stop xxxxxx1x stop bits bit 0: xxxxxxx0 7 data bits xxxxxxx1 8 data bits Return Value: None Example: int TC_232_parameter(long baud,int parity,int stop,int data) unsigned char cc=0;...
  • Page 28 case 0 : break; case 1 : cc=cc|0x04; break; case 2 : cc=cc|0x0c; break; switch (stop) case 1 : break; case 2 : cc=cc|0x02; break; switch (data) case 7 : break; case 8 : cc=cc|0x01; break; regs.h.ah = 0x1C; regs.h.bh = 1; regs.h.al = cc;...
  • Page 29 else if (status == 1) regs.h.ah = 0x1C; regs.h.bh = 2; regs.h.al = 0; int86(0x21,&regs,&regs); else regs.h.ah = 0x1C; regs.h.bh = 2; regs.h.al = 1; int86(0x21,&regs,&regs); Hardware Control Flow Entry parameters: AH = 1CH BH = 3 AL = 0 ;...
  • Page 30 Get MULTIPOINT Address Entry Parameter: AH = 1CH BH = 5 Returned Value: AL = Address ; ASCII character ‘A’ - ’Y’ or ’0’ - ’6’ Example: char TC_get_address() regs.h.ah = 0x1C; regs.h.bh = 5; int86(0x21,&regs,&regs); return((char)regs.h.al); Set MULTIPOINT Address Entry Parameter: AH = 1CH BH = 6...
  • Page 31 regs.h.ah= 0x1C; regs.h.bh= 0x0A; regs.h.al= (unsigned char)status; int86(0x21,&regs,&regs); Set Terminal ID Entry Parameter: AH = 1DH BH = 0 DS:DX ; pointer to buffer of 8 characters ID string Return Value: None Example: void TT_id(unsigned char *str) segregs.ds = FP_SEG(str); regs.x.dx = FP_OFF(str);...
  • Page 32 Entry Parameter: AH = 1DH BH = 2 AL = 0/1 ; ECHO ON/OFF Return Value: None Example: void TT_echo(int status) regs.h.ah=0x1D; regs.h.bh=2; regs.h.al=(unsigned char)status; int86x(0x21,&regs,&regs,&segregs); Set AUTOLF ON/OFF in Terminal Mode Entry Parameter: AH = 1DH BH = 3 AL = 0/1 ;...
  • Page 33 regs.h.al= (unsigned char)status; regs.x.dx = (unsigned char)status1; int86(0x21,&regs,&regs); Define LINE Character in Terminal Mode Entry parameters: AH = 1DH BH = 5 AL = 0 – 255 ; ASCII character Return Value: None Example: void TT_line_terminal(unsigned char status) regs.h.ah= 0x1D; regs.h.bh= 5;...
  • Page 34 Define Page Character in Terminal Mode Entry Parameter: AH = 1DH BH = 6 AL = 0 – 255 ; ASCII character Return Value: None Example: void TT_page_terminal(unsigned char status) regs.h.ah= 0x1D; regs.h.bh= 6; regs.h.al= status; int86(0x21,&regs,&regs); Set User-defined Key-map Entry Parameter: AH = 1EH AL = 0...
  • Page 35 Non-ALPHA Mode ALPHA-1 Mode ALPHA-2 Mode ALPHA-3 byte byte byte byte byte Seq. name code Seq. name code Seq. name code Seq. name code Seq. name code … … … … … … ALPHA ALPHA ALPHA ALPHA ALPHA … … …...
  • Page 36 regs.h.ah=0x1E; regs.h.al=1; int86x(0x21,&regs,&regs,&segregs); return(regs.h.al); Enable/Disable Decoding of a Barcode Symbology Entry Parameter: AH = 1FH BH = 1 AL = 1 Enable decoding barcode symbology Disable decoding barcode symbology BL = 0 ; All supported bar code symbologies ; Code 39 ;...
  • Page 37 ; EAN 128 Return Value: AL = 0/1 ; Disable/Enable Example: int TD_get_decode_bar(int type) regs.h.ah = 0x1F; regs.h.bh = 2; regs.h.bl = (unsigned char)type; int86(0x21,&regs,&regs); return(regs.h.al); Code 39 Settings Entry parameter: AH = 1FH BH = 3 BL = 1 AL bit disable/enable Code...
  • Page 38 AL bit ; disable/enable Interleaved 2 of 5 decoding 1= 0/1 disable/enable Check Digit verification 2= 0/1 ; no-send/send Check Digit Return Value: None Example: Same with Code 39's example: Codabar Settings Entry Parameter: AH = 1FH BH = 3 BL = 3 AL bit disable/enable...
  • Page 39 Return Value: None Example: Same with Code 39's example: Code 93 Setting Entry Parameter: AH = 1FH BH = 3 BL = 7 AL bit disable/enable Code decoding Return Value: None Example: Same with Code 39's example: UPC-A Settings Entry Parameter: AH = 1FH BH = 3 BL = 11H...
  • Page 40 Return Value: None Example: Same with Code 39's example: EAN-13 Settings Entry Parameter: AH = 1FH BH = 3 BL = 13H AL bit disable/enable EAN-13 decoding 2= 0/1 ; no-send/send Check Digit 3= 0/1 ; no-send/send Leading Digit Return Value: None Example: Same with Code 39's example: EAN-8 Settings...
  • Page 41 Example: Same with Code 39's example: User Code 2 Setting (TOSHIBA code) Entry Parameter: AH = 1FH BH = 3 BL = 22H AL bit : disable/enable User Code 2 decoding Return Value: None Example: Same with Code 39's example: Set Interrupt Vector Entry Parameter: AH = 25H...
  • Page 42 void TS_get_date(int *year,int *month,int *day,int *week) TD_int_dos1(0x2a,0,0,0); *year = regs.x.cx; *month = regs.h.dh; *day = regs.h.dl; *week = regs.h.al; Set System Date Entry Parameter: AH = 2BH CX = year (1980 - 2079) DH = month (1 - 12) DL = day (1 - 31) Return Value: AL = 0/FFH ;...
  • Page 43 Set System Time Entry Parameter: AH = 2DH CH = hour (0 - 23) CL = minute (0 - 59) DH = second (0 - 59) Return Value: AL = 0/FFH ; OK/Setting error Example: int TS_set_time(int hour,int minute,int second) regs.h.ah = 0x2d;...
  • Page 44 return((int)regs.h.al); Set Alarm Time Entry Parameter: AH = 2FH CH = hour (0 - 23) CL = minute (0 - 59) DH = second (0 - 59) Return Value: AL = 0/FFH ; OK/Setting error Example: int TS_alarm_time(int hour,int minute,int second) regs.h.ah = 0x2F;...
  • Page 45 regs.h.ah= 0x30; regs.h.al= 0; int86(0x21,&regs,&regs); *ver = regs.h.al * 100 + regs.h.ah; *firm= regs.h.cl * 100 + regs.h.ch; *oem = regs.x.bx; return(regs.h.al * 100 + regs.h.ah); Get Interrupt Vector Entry Parameter: AH = 35H AL = interrupt number Return Value: DS:BX = address of interrupt routine Example: void TS_get_interrupt_vector(int vect,unsigned int *es,unsigned int *bx) regs.h.ah= 0x35;...
  • Page 46 Create File with Handle Entry Parameter: AH = 3CH DS:DX ; pointer to file name buffer Return Value: if success, AX = Handle and CARRY flag is cleared if failed, AX = 3 and CARRY flag is set Note: If the file already exists, the function will truncate it to zero length.
  • Page 47 Close File with Handle Entry Parameter: AH = 3EH BX = Handle of file Return Value: if success, CARRY flag is cleared if failed, CARRY flag is set Example: void TS_close_file(int hdl) regs.h.ah= 0x3e; regs.x.bx= hdl; int86(0x21,&regs,&regs); if ((regs.x.cflag & 0x01) == 1) return(-1); else return(1);...
  • Page 48 Entry Parameter: AH = 40H BX = Handle of file CX = number of bytes to write DS:DX ; pointer to data buffer Returned Value: if success, AX = number of written bytes and CARRY flag is cleared if failed, AX = 6 and CARRY flag is set Example: int TS_write_file(int hdl,int cnt,char *str)
  • Page 49 BX = Handle of file CX = most significant half of 32 bits offset DX = least significant half of 32 bits offset Return Value: if success, CARRY flag is cleared AX = least significant half of new current position DX = most significant half of new current position if failed, CARRY flag is set...
  • Page 50 CX = total matched times DX:AX = pointer to current file position (not changed) Search String in Formatted Data File Beginning at the Current Position Entry Parameter: AH = 42H AL = 5 ; search forward (to the end of file) ;...
  • Page 51 BX = file handle CX = block length in bytes Return Value: 1) If the function is successful: Carry flag = clear DX:AX = pointer to current file position (not changed) 2) If the function fails: Carry flag = set DX:AX = pointer to current file position (not changed) Note: For insertion, the content of the inserted data block is...
  • Page 52 Example: int TS_free_mem(unsigned char far *str) unsigned long aa; regs.h.ah=0x49; segregs.es=FP_SEG(str); int86x(0x21,&regs,&regs,&segregs); if ((regs.x.cflag & 0x01) == 0) return(1); else return(-1); Modify Allocated Memory Block Entry Parameter: AH = 4AH ES = segment address of the block to resize BX = new block size in paragraphs (16 bytes) Returned Value: if success , CARRY flag is cleared if failed ,...
  • Page 53 Return Value: None Example: void TS_end_program(int ret_code) regs.h.ah= 0x4C; regs.h.al= (unsigned char)ret_code; int86(0x21,&regs,&regs); Read Data from Scanner Port or RFID Entry Parameter: AH = 50H DS:DX ; pointer to data buffer Return Value: 1) AX =0 ; has data input DS:DX ;...
  • Page 54 *type = regs.h.bl; *dir = regs.h.cl; } while (wait && i); return(i); Set Scanner Port Entry Parameter: AH = 51H AL = 0 ; disable scanner port ; enable scanner Return Value: None Example: void TD_set_bar(int status) regs.h.ah= 0x51; regs.h.al= (unsigned char)status; int86(0x21,&regs,&regs);...
  • Page 55 Create New File Entry Parameter: AH = 5BH DS:DX ; pointer to file name string Return Value: if success, CARRY flag is cleared AX = file Handle if failed, CARRY flay is set AX = 04H ; too many open files 50H ;...
  • Page 56 Return Value: AL = 0 ; successful 1 ; failed (output buffer already has data to be sent) Note: 1) Only for MULTIPOINT communication protocol 2) PT600 will send data out when polled by Host computer Example: int TC_str_O(unsigned char *str,int wait) do { segregs.ds = FP_SEG(str);...
  • Page 58: Power Management Function (Int 22H)

    Power Management Function ( INT 22H ) Entry Parameter: None Return Value: AX = 0 ; awaken by key ; awaken by barcode scanner ; awaken by RS232 The system will enter HALT power saving mode from this BIOS call, on return the value in AX register will define the type of device that awakes the system back to ACTIVE mode.
  • Page 59: Beeper Control (Int 31H)

    int86(0x22,&regs,&regs); /* enter stand-by state if no input from either barcode port or keyboard */ Beeper Control Function ( INT 31H ) Entry Parameter: AX= frequency BX=time duration AX Frequency(Hz) BX Time Duration(ms) 2.5K 1.5K Return Value: None Example: void TD_beep_new(int fz,int tm) regs.x.ax = fz;...
  • Page 60 Entry Parameter: AH = 0 bits 7-4: 0001xxxx baud 150 0010xxxx baud 0011xxxx baud 0100xxxx baud 1200 0101xxxx baud 2400 0110xxxx baud 4800 0111xxxx baud 9600 1000xxxx baud 19200 1001xxxx baud 38400 1010xxxx baud 57600 bits 3-2: xxxx00xx none parity xxxx01xx parity xxxx11xx...
  • Page 61 i_baud = (int)(baud / 10L); switch (i_baud) case 11 : cc=0x00; break; case 15 : cc=0x10; break; case 30 : cc=0x20; break; case 60 : cc=0x30; break; case 120 : cc=0x40; break; case 240 : cc=0x50; break; case 480 : cc=0x60; break; case 1920 : cc=0x80;...
  • Page 62 Example: unsigned char TC_232_char_I() regs.h.ah = 1; int86(0x33,&regs,&regs); if (regs.h.ah == 0) return(regs.h.al); return(255); Send Character to RS232 Port Entry Parameter: AH = 2 AL = character Return Value: None Note: Only for NONE communication protocol Example: void TC_232_char_O(unsigned char ch) regs.h.ah = 2;...
  • Page 63 Example: void TC_232_disable() regs.h.ah = 4; int86(0X33&regs,&regs); Set RTS/DTR Signal of RS232 Port Entry parameter: AH = AL = 1 ; set DTR ; set RTS DH = 0 ; set Enable (High voltage) 1 ; set Disable (Low voltage) Return Value: None Note: Only for NONE communication protocol...
  • Page 64 Example: int TC_232_CTS() regs.h.ah = 6; regs.h.al = 2; int86(0X33&regs,&regs); return((int)regs.h.dh); int TC_232_DSR() regs.h.ah = 6; regs.h.al = 1; int86(0X33&regs,&regs); return((int)regs.h.dh);...
  • Page 65: Chapter 2 Multipoint Communication

    MULTIPOINT protocol is an asynchronous serial multi-drop protocol for communication with the host computer. One host computer can be connected up to 32 PT600 terminals, while each PT600 has a unique address. The address is an ASCII character ( ‘A’ – ‘Y’ or ‘0’ – ‘6’) plus 80H.
  • Page 66 Host Command STX ESC CMD <parameters> CS1 CS2 ADDR Acknowledgement Negative ACK...
  • Page 67 (excluding STX and ADDR/ETX)] MOD 256 2) CS1 = high nibble of CS + 40H 3) CS2 = low nibble of CS + 40H Example packet of command to send the file named A.EXE to PT600 with address ‘A’ Packet: STX ESC CMD <parameters>...
  • Page 68: Data Communication In Multipoint Protocol

    ? STX ESC ‘0’ <data> CS1 CS2 ADDR Format : ACK or NAK Description: PT600 will put the received data in the buffer. The application on PT600 can: 1) Use system call INT 21H/AH=5CH to get data. 2) Use system call INT 21H/AH=5EH to check the buffer status.
  • Page 69 Description: The download command is used to send binary executable program (*.exe file) or data file from host system to the PT600. When the PT600 receives the download command it sends an ACK response back to the host and immediately put itself into file receiving state.
  • Page 70: Host Commands

    Format: ? STX ESC ‘A’ CS1 CS2 ADDR ? ACK or NAK Description: The command causes PT600 stop program execution and return to Ready Mode. Programs and data that have been stored in the PT600 RAM space are preserved. The system parameters remain unchanged.
  • Page 71 Format: ? STX ESC ‘C’ <comtable> CS1 CS2 ADDR ? STX ESC ‘C ‘ <retcode> CS1 CS2 ETX ;<retcode>= 00H successful 01H error Description: The command writes <comtable> to PT600 communication control table. <comtable> is defined as: typedef strut { char baud_rate; // ‘0’~’9’/‘A’:...
  • Page 72 For Example, if the command instructs the RS-232 port to change the baud rate from 9600 to 1200 the PT600 will switch to 1200 right after the command has been received. The next host communication will use 1200 baud rate.
  • Page 73 02H invalid value Description: If PT600 RAM disk has files, its size can’t be changed (<retcode>=01H). 9. Get RAM Memory Configuration (ESC G) ? STX ESC ‘G’ CS1 CS2 ADDR Format: ? STX ESC ‘G’ <s1><s2><s3> CS1 CS2 ETX ; <s1> total RAM memory size in 4 ASCII digits ;...
  • Page 74 Format: ? STX ESC ‘k’ CS1 CS2 ADDR ? ACK or NAK Description: PT600 will enter Kermit Server Mode if the command is received. The MULTIPOINT protocol will be disabled until BYE or EXIT command is issued in Kermit Server Mode.
  • Page 75 For Example, string “19900926234500” will set PT600 clock to September 26, 1990. The time is 11:45 PM. The PT600 reconfigures the real time clock chip as soon as the command has been successfully received. 16. Set Buzzer Volume (ESC N) Format: ? STX ESC ‘N’...
  • Page 76 ? STX ESC ‘V’ <devtable> CS1 CS2 ADDR Format: ? STX ESC ‘V’ <retcode> CS1 CS2 ETX ;<retcode>=00H success 01H error Description: The command sets configuration of PT600 device control table. <devtable> is defined as: typedef struct { char scanner_type; // ‘P’ /‘A’/‘D’ = Pen/Auto/Disable char lcd_backlit;...
  • Page 77 21. Get Portable Model Number and BIOS Version Number (ESC v) Format: ? STX ESC ‘v’ CS1 CS2 ADDR STX ESC ‘v’ ‘PT600 V5.00’ CS1 CS2 ETX Description: The model and BIOS version numbers are separated by a space character.

Table of Contents