#include "jinclude.h"
#include "jpeglib.h"
#include "jmemsys.h"
Go to the source code of this file.
|
#define | XMS_SUPPORTED 1 |
|
#define | EMS_SUPPORTED 1 |
|
#define | JPEG_INTERNALS |
|
#define | far_malloc(x) malloc(x) |
|
#define | far_free(x) free(x) |
|
#define | READ_BINARY "rb" |
|
#define | DEFAULT_MAX_MEM 300000L /* for total usage about 450K */ |
|
#define | ODD(X) (((X) & 1L) != 0) |
|
#define | FIELD_AT(spec, offset, type) (*((type *) &(spec.bytes[offset]))) |
|
#define | SRC_TYPE(spec) FIELD_AT(spec,4,char) |
|
#define | SRC_HANDLE(spec) FIELD_AT(spec,5,EMSH) |
|
#define | SRC_OFFSET(spec) FIELD_AT(spec,7,unsigned short) |
|
#define | SRC_PAGE(spec) FIELD_AT(spec,9,unsigned short) |
|
#define | SRC_PTR(spec) FIELD_AT(spec,7,EMSPTR) |
|
#define | DST_TYPE(spec) FIELD_AT(spec,11,char) |
|
#define | DST_HANDLE(spec) FIELD_AT(spec,12,EMSH) |
|
#define | DST_OFFSET(spec) FIELD_AT(spec,14,unsigned short) |
|
#define | DST_PAGE(spec) FIELD_AT(spec,16,unsigned short) |
|
#define | DST_PTR(spec) FIELD_AT(spec,14,EMSPTR) |
|
#define | EMSPAGESIZE 16384L /* gospel, see the EMS specs */ |
|
#define | HIBYTE(W) (((W) >> 8) & 0xFF) |
|
#define | LOBYTE(W) ((W) & 0xFF) |
|
|
void *malloc | JPP ((size_t size)) |
|
void free | JPP ((void *ptr)) |
|
char *getenv | JPP ((const char *name)) |
|
short far jdos_open | JPP ((short far *handle, char far *filename)) |
|
short far jdos_close | JPP ((short handle)) |
|
short far jdos_seek | JPP ((short handle, long offset)) |
|
short far jdos_read | JPP ((short handle, void far *buffer, unsigned short count)) |
|
void far jxms_getdriver | JPP ((XMSDRIVER far *)) |
|
void far jxms_calldriver | JPP ((XMSDRIVER, XMScontext far *)) |
|
short far jems_available | JPP ((void)) |
|
void far jems_calldriver | JPP ((EMScontext far *)) |
|
| select_file_name (char *fname) |
|
| jpeg_get_small (j_common_ptr cinfo, size_t sizeofobject) |
|
| jpeg_free_small (j_common_ptr cinfo, void *object, size_t sizeofobject) |
|
| jpeg_get_large (j_common_ptr cinfo, size_t sizeofobject) |
|
| jpeg_free_large (j_common_ptr cinfo, void FAR *object, size_t sizeofobject) |
|
| jpeg_mem_available (j_common_ptr cinfo, long min_bytes_needed, long max_bytes_needed, long already_allocated) |
|
| read_file_store (j_common_ptr cinfo, backing_store_ptr info, void FAR *buffer_address, long file_offset, long byte_count) |
|
| write_file_store (j_common_ptr cinfo, backing_store_ptr info, void FAR *buffer_address, long file_offset, long byte_count) |
|
| close_file_store (j_common_ptr cinfo, backing_store_ptr info) |
|
| open_file_store (j_common_ptr cinfo, backing_store_ptr info, long total_bytes_needed) |
|
| read_xms_store (j_common_ptr cinfo, backing_store_ptr info, void FAR *buffer_address, long file_offset, long byte_count) |
|
| write_xms_store (j_common_ptr cinfo, backing_store_ptr info, void FAR *buffer_address, long file_offset, long byte_count) |
|
| close_xms_store (j_common_ptr cinfo, backing_store_ptr info) |
|
| open_xms_store (j_common_ptr cinfo, backing_store_ptr info, long total_bytes_needed) |
|
| read_ems_store (j_common_ptr cinfo, backing_store_ptr info, void FAR *buffer_address, long file_offset, long byte_count) |
|
| write_ems_store (j_common_ptr cinfo, backing_store_ptr info, void FAR *buffer_address, long file_offset, long byte_count) |
|
| close_ems_store (j_common_ptr cinfo, backing_store_ptr info) |
|
| open_ems_store (j_common_ptr cinfo, backing_store_ptr info, long total_bytes_needed) |
|
| jpeg_open_backing_store (j_common_ptr cinfo, backing_store_ptr info, long total_bytes_needed) |
|
| jpeg_mem_init (j_common_ptr cinfo) |
|
| jpeg_mem_term (j_common_ptr cinfo) |
|
◆ DEFAULT_MAX_MEM
#define DEFAULT_MAX_MEM 300000L /* for total usage about 450K */ |
◆ DST_HANDLE
◆ DST_OFFSET
◆ DST_PAGE
◆ DST_PTR
◆ DST_TYPE
◆ EMS_SUPPORTED
◆ EMSPAGESIZE
#define EMSPAGESIZE 16384L /* gospel, see the EMS specs */ |
◆ far_free
◆ far_malloc
◆ FIELD_AT
◆ HIBYTE
◆ JPEG_INTERNALS
◆ LOBYTE
◆ ODD
◆ READ_BINARY
◆ SRC_HANDLE
◆ SRC_OFFSET
◆ SRC_PAGE
◆ SRC_PTR
◆ SRC_TYPE
◆ XMS_SUPPORTED
◆ EMSPTR
◆ close_ems_store()
◆ close_file_store()
◆ close_xms_store()
Definition at line 401 of file jmemdos.c.
405 ctx.dx =
info->handle.xms_handle;
408 TRACEMS1(cinfo, 1, JTRC_XMS_CLOSE,
info->handle.xms_handle);
#define TRACEMS1(cinfo, lvl, code, p1)
static XMSDRIVER xms_driver
Referenced by open_xms_store().
◆ jpeg_free_large()
◆ jpeg_free_small()
◆ jpeg_get_large()
◆ jpeg_get_small()
◆ jpeg_mem_available()
Definition at line 208 of file jmemdos.c.
long long long already_allocated
◆ jpeg_mem_init()
◆ jpeg_mem_term()
◆ jpeg_open_backing_store()
Definition at line 599 of file jmemdos.c.
613 ERREXITS(cinfo, JERR_TFILE_CREATE,
"");
open_ems_store(j_common_ptr cinfo, backing_store_ptr info, long total_bytes_needed)
backing_store_ptr long total_bytes_needed
open_file_store(j_common_ptr cinfo, backing_store_ptr info, long total_bytes_needed)
open_xms_store(j_common_ptr cinfo, backing_store_ptr info, long total_bytes_needed)
#define ERREXITS(cinfo, code, str)
◆ JPP() [1/11]
◆ JPP() [2/11]
◆ JPP() [3/11]
◆ JPP() [4/11]
◆ JPP() [5/11]
◆ JPP() [6/11]
◆ JPP() [7/11]
◆ JPP() [8/11]
◆ JPP() [9/11]
◆ JPP() [10/11]
◆ JPP() [11/11]
◆ open_ems_store()
Definition at line 554 of file jmemdos.c.
560 if (! jems_available())
583 info->handle.ems_handle =
ctx.dx;
unsigned short(__cdecl typeof(TIFFCurrentDirectory))(struct tiff *)
write_ems_store(j_common_ptr cinfo, backing_store_ptr info, void FAR *buffer_address, long file_offset, long byte_count)
#define TRACEMS1(cinfo, lvl, code, p1)
read_ems_store(j_common_ptr cinfo, backing_store_ptr info, void FAR *buffer_address, long file_offset, long byte_count)
backing_store_ptr long total_bytes_needed
close_ems_store(j_common_ptr cinfo, backing_store_ptr info)
Referenced by jpeg_open_backing_store().
◆ open_file_store()
Definition at line 288 of file jmemdos.c.
namespace GUID const ADDRINFOEXW ADDRINFOEXW struct timeval OVERLAPPED LPLOOKUPSERVICE_COMPLETION_ROUTINE HANDLE * handle
read_file_store(j_common_ptr cinfo, backing_store_ptr info, void FAR *buffer_address, long file_offset, long byte_count)
#define TRACEMSS(cinfo, lvl, code, str)
close_file_store(j_common_ptr cinfo, backing_store_ptr info)
write_file_store(j_common_ptr cinfo, backing_store_ptr info, void FAR *buffer_address, long file_offset, long byte_count)
#define ERREXITS(cinfo, code, str)
select_file_name(char *fname)
Referenced by jpeg_open_backing_store().
◆ open_xms_store()
Definition at line 414 of file jmemdos.c.
427 if (
ctx.ax < (
unsigned short) 0x0200)
438 info->handle.xms_handle =
ctx.dx;
write_xms_store(j_common_ptr cinfo, backing_store_ptr info, void FAR *buffer_address, long file_offset, long byte_count)
unsigned short(__cdecl typeof(TIFFCurrentDirectory))(struct tiff *)
#define TRACEMS1(cinfo, lvl, code, p1)
backing_store_ptr long total_bytes_needed
You forgot to define USE_MSDOS_MEMMGR in jconfig h typedef void far * XMSDRIVER
static XMSDRIVER xms_driver
close_xms_store(j_common_ptr cinfo, backing_store_ptr info)
read_xms_store(j_common_ptr cinfo, backing_store_ptr info, void FAR *buffer_address, long file_offset, long byte_count)
Referenced by jpeg_open_backing_store().
◆ read_ems_store()
Definition at line 491 of file jmemdos.c.
505 DST_PTR(spec) = buffer_address;
507 ctx.ds_si = (
void far *) & spec;
unsigned short(__cdecl typeof(TIFFCurrentDirectory))(struct tiff *)
Referenced by open_ems_store().
◆ read_file_store()
Definition at line 243 of file jmemdos.c.
247 if (jdos_seek(
info->handle.file_handle, file_offset))
248 ERREXIT(cinfo, JERR_TFILE_SEEK);
250 if (byte_count > 65535
L)
251 ERREXIT(cinfo, JERR_BAD_ALLOC_CHUNK);
252 if (jdos_read(
info->handle.file_handle, buffer_address,
253 (
unsigned short) byte_count))
254 ERREXIT(cinfo, JERR_TFILE_READ);
Referenced by open_file_store().
◆ read_xms_store()
Definition at line 333 of file jmemdos.c.
345 spec.
length = byte_count & (~ 1
L);
349 spec.
dst.
ptr = buffer_address;
351 ctx.ds_si = (
void far *) & spec;
357 if (
ODD(byte_count)) {
359 file_offset + byte_count - 1
L, 2
L);
360 ((
char FAR *) buffer_address)[byte_count - 1
L] = endbuffer[0];
static XMSDRIVER xms_driver
read_xms_store(j_common_ptr cinfo, backing_store_ptr info, void FAR *buffer_address, long file_offset, long byte_count)
Referenced by open_xms_store(), and write_xms_store().
◆ select_file_name()
select_file_name |
( |
char * |
fname | ) |
|
Definition at line 128 of file jmemdos.c.
147 if (
ptr[-1] !=
'\\' &&
ptr[-1] !=
'/')
#define sprintf(buf, format,...)
_Check_return_opt_ _CRTIMP int __cdecl fclose(_Inout_ FILE *_File)
_Check_return_ _CRTIMP FILE *__cdecl fopen(_In_z_ const char *_Filename, _In_z_ const char *_Mode)
_Check_return_ char *__cdecl getenv(_In_z_ const char *_VarName)
static LPCWSTR LPCWSTR LPCWSTR env
Referenced by open_file_store().
◆ write_ems_store()
Definition at line 516 of file jmemdos.c.
526 SRC_PTR(spec) = buffer_address;
532 ctx.ds_si = (
void far *) & spec;
536 ERREXIT(cinfo, JERR_EMS_WRITE);
unsigned short(__cdecl typeof(TIFFCurrentDirectory))(struct tiff *)
Referenced by open_ems_store().
◆ write_file_store()
Definition at line 259 of file jmemdos.c.
263 if (jdos_seek(
info->handle.file_handle, file_offset))
264 ERREXIT(cinfo, JERR_TFILE_SEEK);
266 if (byte_count > 65535
L)
267 ERREXIT(cinfo, JERR_BAD_ALLOC_CHUNK);
268 if (jdos_write(
info->handle.file_handle, buffer_address,
269 (
unsigned short) byte_count))
270 ERREXIT(cinfo, JERR_TFILE_WRITE);
Referenced by open_file_store().
◆ write_xms_store()
Definition at line 366 of file jmemdos.c.
378 spec.
length = byte_count & (~ 1
L);
380 spec.
src.
ptr = buffer_address;
384 ctx.ds_si = (
void far *) & spec;
388 ERREXIT(cinfo, JERR_XMS_WRITE);
390 if (
ODD(byte_count)) {
392 file_offset + byte_count - 1
L, 2
L);
393 endbuffer[0] = ((
char FAR *) buffer_address)[byte_count - 1
L];
395 file_offset + byte_count - 1
L, 2
L);
write_xms_store(j_common_ptr cinfo, backing_store_ptr info, void FAR *buffer_address, long file_offset, long byte_count)
static XMSDRIVER xms_driver
read_xms_store(j_common_ptr cinfo, backing_store_ptr info, void FAR *buffer_address, long file_offset, long byte_count)
Referenced by open_xms_store().
◆ next_file_num
◆ xms_driver
◆ XMSDRIVER