cbmimage
Loading...
Searching...
No Matches
blockaccessor.c File Reference

cbmimage: Structure to access specific blocks More...

#include "cbmimage/internal.h"
#include "cbmimage/alloc.h"
#include <assert.h>
Include dependency graph for blockaccessor.c:

Functions

cbmimage_blockaccessorcbmimage_blockaccessor_create (cbmimage_fileimage *image, cbmimage_blockaddress block)
 create a block accessor for a specific block
 
cbmimage_blockaccessorcbmimage_blockaccessor_create_from_ts (cbmimage_fileimage *image, uint8_t track, uint8_t sector)
 create a block accessor for a specific T/S
 
cbmimage_blockaccessorcbmimage_blockaccessor_create_from_lba (cbmimage_fileimage *image, uint16_t lba)
 create a block accessor for a specific LBA
 
void cbmimage_blockaccessor_close (cbmimage_blockaccessor *accessor)
 close a block accessor, freeing its resources
 
int cbmimage_blockaccessor_set_to (cbmimage_blockaccessor *accessor, cbmimage_blockaddress block)
 set a block accessor for a specific block
 
int cbmimage_blockaccessor_set_to_ts (cbmimage_blockaccessor *accessor, uint8_t track, uint8_t sector)
 set a block accessor for a specific T/S
 
int cbmimage_blockaccessor_set_to_lba (cbmimage_blockaccessor *accessor, uint16_t lba)
 set a block accessor for a specific LBA
 
int cbmimage_blockaccessor_advance (cbmimage_blockaccessor *accessor)
 advance a block accessor to the next block
 
int cbmimage_blockaccessor_get_next_block (cbmimage_blockaccessor *accessor, cbmimage_blockaddress *block_next)
 get the next block of this accessor if we follow the chain
 
int cbmimage_blockaccessor_follow (cbmimage_blockaccessor *accessor)
 follow the block chain of a block accessor to the next block
 
int cbmimage_i_blockaccessor_release (cbmimage_blockaccessor *accessor)
 

Detailed Description

cbmimage: Structure to access specific blocks


Author
Spiro Trikaliotis

For CBM disks, the addresses are given by track and sector specifications. On the other side, a so-called LBA (logical block address) is much easier to handle.

These functions specify how on address type is converted into the other