Sharp PC-G850V BASIC programmable calculator

General specifications
Type BASIC programmable calculator
Production years 2002 - -
New price -
Operating system n.a.
Chipset/CPU Z80 @ 8MHz
I/O Sharp IO (11-pin / 9600 baud), 40-pin system bus
Performance index 0
Entry method Unknown
Precision digits
Advanced functions

Forensic result -

BASIC programmable calculator: Sharp PC-G850V
Programming model BASIC and C
Programming features

Program display Text
Program editing Text editor
Programming 32 kB
Data 32 kB
ROM 256 kB
Type LCD
Size 14448 pixels
LWH 1959520 mm
Weight 340 g
Batteries 4AAA / R03
External power 6 VDC
Link to this page

If you've found this page useful, consider linking to us so that others can benefit.

Suggestions appreciated

Think you've spotted something incomplete or incorrect on this page? Please let me know!

Related calculators (system generated)

Sharp EL-5400
Sharp EL-5500
Sharp EL-5500II
Sharp EL-5500III
Sharp PC-1100
Sharp PC-1140
Sharp PC-1150
Sharp PC-1210
Sharp PC-1211
Sharp PC-1212
Sharp PC-1245
Sharp PC-1246


The last one, derived from the PC-G850. Besides CASL, BASIC and C, the 850V can also be programmed using Z80 assembler.
When compiling C programs byte-code is generated, not machine-code. The byte-code is interpreted at run-time.
The BASIC dialect has a BEEP keyword, but the calculator lacs a piezo buzzer. The print-board does still have the connection points to solder a piezo buzzer in.
Notable is the existence of a PICMicro Assembler inside the 256kB ROM. This allows the 850v to control PIC microcontrollers with the help of some additional hardware.

Also have a look at Christian's great pocket computer site


Thanks to the contribution of Jamel, one of the pocket computer enthusiasts at MySilicium (the most active pocket computer forum) heres an overview of function prototypes for programming the PC-G850V in C language.

void abort(void);
int abs(int x);
double acos(double x);
double acosh(double x);
void angle(unsigned n);
double asin(double x);
double asinh(double x);
double atan(double x);
double atanh(double x);
void breakpt(void);
void * calloc(unsigned n, unsigned size);
int circle(int x, int y, int r, double s-angle, double e-angle, double
ratio, int reverse, unsigned short kind);
void clearerr(FILE * stream);
void clrscr(void);
double cos(double x);
double cosh(double x);
void exit(int status);
double exp(double x);
int fclose(FILE *stream);
int feof(FILE *stream);
int fflush(FILE * stream);
int fgetc(FILE *stream);
char fgets(char , int n, FILE *stream);
unsigned long flof(FILE *stream);
FILE fopen(char path, char *type);
int fprintf(FILE stream, const char format [, arg, ]);
int fputc(int c, FILE * stream);
int fputs(const char s, FILE stream);
void free(void *ptr);
int fscanf(FILE stream, const char format [, address, ]);
int gcursor(int x, int y);
int getc(FILE *stream);
int getch(void);
int getchar(void);
char gets(char s);
void gotoxy(unsigned x, unsigned y);
int gprint(char *image);
int isalnum(int c);
int isalpha(int c);
int iscntrl(int c);
int isdigit(int c);
int isgraph(int c);
int islower(int c);
int isprint(int c);
int ispunct(int c);
int isspace(int c);
int isupper(int c);
int isxdigit(int c);
int kbhit(void);
int line(int x1, int y1, int x2, int y2, int reverse, unsigned short
mask, int rectangle);
double log(double x);
double log20(double x);
void * malloc(unsigned size);
int miniget(void);
void miniput(char byte);
int paint(int x, int y, unsigned short kind);
int pioget(void);
void pioput(char byte);
void pioset(char byte);
int point(int x, int y);
double pow(double x, double y);
int preset(int x, int y);
int printf(const char * format [, arg, ]);
int pset(int x, int y, int reverse);
int putc(int c, FILE * stream);
int putchar(int c);
int puts(const char *s);
int scanf(const char * format [, address, ]);
double sin(double x);
double sinh(double x);
int sprintf(char s, const char format [, arg, ]);
double sqrt(double x);
int sscanf(char s, const char format [, address, ]);
char strcat(char s1, const char *s2);
char strchr(const char s, int c);
int strcmp(const char s1, const char s2);
char strcpy(const char s1, const char *s2);
int strlen(const char *string);
double tan(double x);
double tanh(double x);
int tolower(int c);
int toupper(int c);


BASIC programmable calculator: Sharp PC-G850V

Calculators on this site are not for sale. If you are looking to buy a calculator, please visit our eBay page.
Please note we do not offer any calculators ourselves, we mearly display what others are selling on eBay.
All rights reserved. Trademarks and brand names are respected. Information on this page is stricly for personal use. No part of it is garanteed to be correct.
This page was last modified on January 15th, 2009

Want to leave a comment?

Please use our forum to post messages and get in touch with other calculator collectors and enthusiasts!

Programmable Calculator Forum »