diskimage.h File Reference

Back to the index.

Classes | Macros | Functions
diskimage.h File Reference
#include <stdio.h>
#include <sys/types.h>
#include "misc.h"

Go to the source code of this file.

Classes

struct  diskimage_overlay
 
struct  diskimage
 
struct  scsi_transfer
 

Macros

#define DISKIMAGE_SCSI   1
 
#define DISKIMAGE_IDE   2
 
#define DISKIMAGE_FLOPPY   3
 
#define DISKIMAGE_TYPES   { "(NONE)", "SCSI", "IDE", "FLOPPY" }
 
#define OVERLAY_BLOCK_SIZE   512
 
#define SCSICMD_TEST_UNIT_READY   0x00 /* Mandatory */
 
#define SCSICMD_REQUEST_SENSE   0x03 /* Mandatory */
 
#define SCSICMD_INQUIRY   0x12 /* Mandatory */
 
#define SCSICMD_READ   0x08
 
#define SCSICMD_READ_10   0x28
 
#define SCSICMD_WRITE   0x0a
 
#define SCSICMD_WRITE_10   0x2a
 
#define SCSICMD_MODE_SELECT   0x15
 
#define SCSICMD_MODE_SENSE   0x1a
 
#define SCSICMD_START_STOP_UNIT   0x1b
 
#define SCSICMD_PREVENT_ALLOW_REMOVE   0x1e
 
#define SCSICMD_MODE_SENSE10   0x5a
 
#define SCSICMD_SYNCHRONIZE_CACHE   0x35
 
#define SCSIBLOCKCMD_READ_CAPACITY   0x25
 
#define SCSICDROM_READ_SUBCHANNEL   0x42
 
#define SCSICDROM_READ_TOC   0x43
 
#define SCSICDROM_READ_DISCINFO   0x51
 
#define SCSICDROM_READ_TRACKINFO   0x52
 
#define SCSICMD_REWIND   0x01
 
#define SCSICMD_READ_BLOCK_LIMITS   0x05
 
#define SCSICMD_SPACE   0x11
 

Functions

struct scsi_transferscsi_transfer_alloc (void)
 
void scsi_transfer_free (struct scsi_transfer *)
 
void scsi_transfer_allocbuf (size_t *lenp, unsigned char **pp, size_t want_len, int clearflag)
 
int diskimage_scsicommand (struct cpu *cpu, int id, int type, struct scsi_transfer *)
 
int64_t diskimage_getsize (struct machine *machine, int id, int type)
 
int64_t diskimage_get_baseoffset (struct machine *machine, int id, int type)
 
void diskimage_set_baseoffset (struct machine *machine, int id, int type, int64_t offset)
 
void diskimage_getchs (struct machine *machine, int id, int type, int *c, int *h, int *s)
 
int diskimage__internal_access (struct diskimage *d, int writeflag, off_t offset, unsigned char *buf, size_t len)
 
int diskimage_access (struct machine *machine, int id, int type, int writeflag, off_t offset, unsigned char *buf, size_t len)
 
void diskimage_add_overlay (struct diskimage *d, char *overlay_basename)
 
void diskimage_recalc_size (struct diskimage *d)
 
int diskimage_exist (struct machine *machine, int id, int type)
 
int diskimage_bootdev (struct machine *machine, int *typep)
 
int diskimage_add (struct machine *machine, char *fname)
 
int diskimage_getname (struct machine *machine, int id, int type, char *buf, size_t bufsize)
 
int diskimage_is_a_cdrom (struct machine *machine, int id, int type)
 
int diskimage_is_a_tape (struct machine *machine, int id, int type)
 
void diskimage_dump_info (struct machine *machine)
 

Macro Definition Documentation

◆ DISKIMAGE_FLOPPY

#define DISKIMAGE_FLOPPY   3

Definition at line 42 of file diskimage.h.

Referenced by diskimage_add(), and diskimage_dump_info().

◆ DISKIMAGE_IDE

#define DISKIMAGE_IDE   2

◆ DISKIMAGE_SCSI

#define DISKIMAGE_SCSI   1

Definition at line 40 of file diskimage.h.

Referenced by dec_jumptable_func(), diskimage_add(), diskimage_dump_info(), and MACHINE_SETUP().

◆ DISKIMAGE_TYPES

#define DISKIMAGE_TYPES   { "(NONE)", "SCSI", "IDE", "FLOPPY" }

Definition at line 44 of file diskimage.h.

◆ OVERLAY_BLOCK_SIZE

#define OVERLAY_BLOCK_SIZE   512

Definition at line 48 of file diskimage.h.

◆ SCSIBLOCKCMD_READ_CAPACITY

#define SCSIBLOCKCMD_READ_CAPACITY   0x25

Definition at line 172 of file diskimage.h.

◆ SCSICDROM_READ_DISCINFO

#define SCSICDROM_READ_DISCINFO   0x51

Definition at line 177 of file diskimage.h.

◆ SCSICDROM_READ_SUBCHANNEL

#define SCSICDROM_READ_SUBCHANNEL   0x42

Definition at line 175 of file diskimage.h.

◆ SCSICDROM_READ_TOC

#define SCSICDROM_READ_TOC   0x43

Definition at line 176 of file diskimage.h.

◆ SCSICDROM_READ_TRACKINFO

#define SCSICDROM_READ_TRACKINFO   0x52

Definition at line 178 of file diskimage.h.

◆ SCSICMD_INQUIRY

#define SCSICMD_INQUIRY   0x12 /* Mandatory */

Definition at line 157 of file diskimage.h.

◆ SCSICMD_MODE_SELECT

#define SCSICMD_MODE_SELECT   0x15

Definition at line 163 of file diskimage.h.

◆ SCSICMD_MODE_SENSE

#define SCSICMD_MODE_SENSE   0x1a

Definition at line 164 of file diskimage.h.

◆ SCSICMD_MODE_SENSE10

#define SCSICMD_MODE_SENSE10   0x5a

Definition at line 167 of file diskimage.h.

◆ SCSICMD_PREVENT_ALLOW_REMOVE

#define SCSICMD_PREVENT_ALLOW_REMOVE   0x1e

Definition at line 166 of file diskimage.h.

◆ SCSICMD_READ

#define SCSICMD_READ   0x08

Definition at line 159 of file diskimage.h.

◆ SCSICMD_READ_10

#define SCSICMD_READ_10   0x28

Definition at line 160 of file diskimage.h.

◆ SCSICMD_READ_BLOCK_LIMITS

#define SCSICMD_READ_BLOCK_LIMITS   0x05

Definition at line 182 of file diskimage.h.

◆ SCSICMD_REQUEST_SENSE

#define SCSICMD_REQUEST_SENSE   0x03 /* Mandatory */

Definition at line 156 of file diskimage.h.

◆ SCSICMD_REWIND

#define SCSICMD_REWIND   0x01

Definition at line 181 of file diskimage.h.

◆ SCSICMD_SPACE

#define SCSICMD_SPACE   0x11

Definition at line 183 of file diskimage.h.

◆ SCSICMD_START_STOP_UNIT

#define SCSICMD_START_STOP_UNIT   0x1b

Definition at line 165 of file diskimage.h.

◆ SCSICMD_SYNCHRONIZE_CACHE

#define SCSICMD_SYNCHRONIZE_CACHE   0x35

Definition at line 169 of file diskimage.h.

◆ SCSICMD_TEST_UNIT_READY

#define SCSICMD_TEST_UNIT_READY   0x00 /* Mandatory */

Definition at line 155 of file diskimage.h.

◆ SCSICMD_WRITE

#define SCSICMD_WRITE   0x0a

Definition at line 161 of file diskimage.h.

◆ SCSICMD_WRITE_10

#define SCSICMD_WRITE_10   0x2a

Definition at line 162 of file diskimage.h.

Function Documentation

◆ diskimage__internal_access()

int diskimage__internal_access ( struct diskimage d,
int  writeflag,
off_t  offset,
unsigned char *  buf,
size_t  len 
)

Definition at line 547 of file diskimage.cc.

References diskimage::f, and diskimage::writable.

◆ diskimage_access()

int diskimage_access ( struct machine machine,
int  id,
int  type,
int  writeflag,
off_t  offset,
unsigned char *  buf,
size_t  len 
)

◆ diskimage_add()

int diskimage_add ( struct machine machine,
char *  fname 
)

◆ diskimage_add_overlay()

void diskimage_add_overlay ( struct diskimage d,
char *  overlay_basename 
)

◆ diskimage_bootdev()

int diskimage_bootdev ( struct machine machine,
int *  typep 
)

◆ diskimage_dump_info()

void diskimage_dump_info ( struct machine machine)

◆ diskimage_exist()

int diskimage_exist ( struct machine machine,
int  id,
int  type 
)

◆ diskimage_get_baseoffset()

int64_t diskimage_get_baseoffset ( struct machine machine,
int  id,
int  type 
)

◆ diskimage_getchs()

void diskimage_getchs ( struct machine machine,
int  id,
int  type,
int *  c,
int *  h,
int *  s 
)

◆ diskimage_getname()

int diskimage_getname ( struct machine machine,
int  id,
int  type,
char *  buf,
size_t  bufsize 
)

◆ diskimage_getsize()

int64_t diskimage_getsize ( struct machine machine,
int  id,
int  type 
)

◆ diskimage_is_a_cdrom()

int diskimage_is_a_cdrom ( struct machine machine,
int  id,
int  type 
)

◆ diskimage_is_a_tape()

int diskimage_is_a_tape ( struct machine machine,
int  id,
int  type 
)

◆ diskimage_recalc_size()

void diskimage_recalc_size ( struct diskimage d)

Definition at line 165 of file diskimage.cc.

References diskimage::fname, diskimage::is_a_cdrom, diskimage::ncyls, and diskimage::total_size.

Referenced by diskimage_add().

◆ diskimage_scsicommand()

int diskimage_scsicommand ( struct cpu cpu,
int  id,
int  type,
struct scsi_transfer  
)

◆ diskimage_set_baseoffset()

void diskimage_set_baseoffset ( struct machine machine,
int  id,
int  type,
int64_t  offset 
)

◆ scsi_transfer_alloc()

struct scsi_transfer* scsi_transfer_alloc ( void  )

Definition at line 64 of file diskimage_scsicmd.cc.

◆ scsi_transfer_allocbuf()

void scsi_transfer_allocbuf ( size_t *  lenp,
unsigned char **  pp,
size_t  want_len,
int  clearflag 
)

Definition at line 126 of file diskimage_scsicmd.cc.

◆ scsi_transfer_free()

void scsi_transfer_free ( struct scsi_transfer )

Generated on Fri Dec 7 2018 19:52:23 for GXemul by doxygen 1.8.13