CompuServe Messages

gfx_Get_Path question

    27-Sep-95 10:43:41
Fm: Jonas Ruikis [ADESK] 73172,1351
To: Peter K. Watje 74453,225
HI Peter, << IPAS3 >> As an owner of IPAS3, you're entitled to a free upgrade to IPAS4. The GFX_path calls were extended to also provide the home_path, process_path, vp_path, prj_path, driver_path, temp_path, fli_path and the preview_path. Please call Customer Service at 1-800-538-6401. << Error!.. >> hm…The following should work for you. void v3_get_paths(int type,int num,char *path,char *file) { /* Path offsets for 3DS 3.0 */ static int poffset[] = { 0x19d1a0, /* HOME */ 0x6d00, /* PROCESS */ 0x1f2f8, /* VP */ 0x40d6, /* PRJ */ 0x6cbc, /* DRIVER */ 0x3f8c, /* TEMP */ 0x419c, /* FLI */ 0x415a /* PREVIEW */ }; /* Filename offsets for 3DS 3.0 (0 indicates no appropriate filename) */ static int foffset[] = { 0, /* HOME */ 0, /* PROCESS */ 0x1f33c, /* VP */ 0x426e, /* PRJ */ 0, /* DRIVER */ 0, /* TEMP */ 0x4288, /* FLI */ 0 /* PREVIEW */ }; char _far *p; int index=type-GFX_HOME_PATH; if(index<0) { gfx_get_paths(type,num,path,file); } else { /* Copy path string from 3DS */ ((struct overlay *)&p)->seg=((REGS _far *)GI->regs)->ds; ((struct overlay *)&p)->offset=poffset[index]; fnstrcpy(path,p); /* Copy filename string from 3DS (if appropriate) */ if(foffset[index]!=0) { ((struct overlay *)&p)->seg=((REGS _far *)GI->regs)->ds; ((struct overlay *)&p)->offset=foffset[index]; fnstrcpy(file,p); } else strcpy(file,""); } } Let me know if this helped. jonas[adesk]