Working
This commit is contained in:
parent
d55935c54b
commit
8e7c90a770
16
src/voc.rs
16
src/voc.rs
|
@ -29,7 +29,7 @@
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
pub struct VocFile {
|
pub struct VocFile {
|
||||||
pub version: (u8, u8),
|
pub version: (u8, u8),
|
||||||
pub blocks: Vec<BlockT>
|
pub blocks: Vec<BlockT>,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl VocFile {
|
impl VocFile {
|
||||||
|
@ -128,14 +128,14 @@
|
||||||
|
|
||||||
let block = SoundData::new(block_size, sample_rate, codec, data);
|
let block = SoundData::new(block_size, sample_rate, codec, data);
|
||||||
voc.blocks.push(Box::new(block));
|
voc.blocks.push(Box::new(block));
|
||||||
},
|
}
|
||||||
BlockType::SoundDataContinuation => {
|
BlockType::SoundDataContinuation => {
|
||||||
let mut data: Vec<u8> = vec![0; (next - address) as usize];
|
let mut data: Vec<u8> = vec![0; (next - address) as usize];
|
||||||
drop(fp.read(&mut data));
|
drop(fp.read(&mut data));
|
||||||
|
|
||||||
let block = SoundDataContinuation::new(block_size, data);
|
let block = SoundDataContinuation::new(block_size, data);
|
||||||
voc.blocks.push(Box::new(block));
|
voc.blocks.push(Box::new(block));
|
||||||
},
|
}
|
||||||
BlockType::Silence => {
|
BlockType::Silence => {
|
||||||
let mut length_buffer: [u8; 2] = [0; 2];
|
let mut length_buffer: [u8; 2] = [0; 2];
|
||||||
drop(fp.read(&mut length_buffer));
|
drop(fp.read(&mut length_buffer));
|
||||||
|
@ -154,11 +154,9 @@
|
||||||
|
|
||||||
let block = Text { block_type, size: block_size, data };
|
let block = Text { block_type, size: block_size, data };
|
||||||
voc.blocks.push(Box::new(block));
|
voc.blocks.push(Box::new(block));
|
||||||
|
}
|
||||||
},
|
|
||||||
_ => panic!("block Type {:?} not implemented", block_type),
|
_ => panic!("block Type {:?} not implemented", block_type),
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
voc
|
voc
|
||||||
}
|
}
|
||||||
|
@ -185,7 +183,7 @@
|
||||||
size_bytes[1],
|
size_bytes[1],
|
||||||
size_bytes[2],
|
size_bytes[2],
|
||||||
frequency_divisor,
|
frequency_divisor,
|
||||||
self.codec as u8
|
self.codec as u8,
|
||||||
];
|
];
|
||||||
|
|
||||||
result.extend_from_slice(&self.data);
|
result.extend_from_slice(&self.data);
|
||||||
|
@ -291,7 +289,7 @@
|
||||||
size,
|
size,
|
||||||
sample_rate,
|
sample_rate,
|
||||||
codec,
|
codec,
|
||||||
data
|
data,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -315,7 +313,7 @@
|
||||||
Self {
|
Self {
|
||||||
block_type: BlockType::SoundDataContinuation,
|
block_type: BlockType::SoundDataContinuation,
|
||||||
size,
|
size,
|
||||||
data
|
data,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue