trunk/src/lib/formats/flopimg.c
| r245703 | r245704 | |
| 1184 | 1184 | void floppy_image_format_t::raw_w(std::vector<UINT32> &buffer, int n, UINT32 val, UINT32 size, int offset) |
| 1185 | 1185 | { |
| 1186 | 1186 | for(int i=n-1; i>=0; i--) |
| 1187 | | bit_w(buffer, (val >> i) & 1, size, offset); |
| 1187 | bit_w(buffer, (val >> i) & 1, size, offset++); |
| 1188 | 1188 | } |
| 1189 | 1189 | |
| 1190 | 1190 | void floppy_image_format_t::mfm_w(std::vector<UINT32> &buffer, int n, UINT32 val, UINT32 size) |
| r245703 | r245704 | |
| 1203 | 1203 | int prec = offset ? bit_r(buffer, offset-1) : 0; |
| 1204 | 1204 | for(int i=n-1; i>=0; i--) { |
| 1205 | 1205 | int bit = (val >> i) & 1; |
| 1206 | | bit_w(buffer, offset++, !(prec || bit), size); |
| 1207 | | bit_w(buffer, offset++, bit, size); |
| 1206 | bit_w(buffer, !(prec || bit), size, offset++); |
| 1207 | bit_w(buffer, bit, size, offset++); |
| 1208 | 1208 | prec = bit; |
| 1209 | 1209 | } |
| 1210 | 1210 | } |
| r245703 | r245704 | |
| 1214 | 1214 | for(int i=n-1; i>=0; i--) { |
| 1215 | 1215 | int bit = (val >> i) & 1; |
| 1216 | 1216 | bit_w(buffer, true, size); |
| 1217 | | bit_w(buffer, bit, size); |
| 1217 | bit_w(buffer, bit, size); |
| 1218 | 1218 | } |
| 1219 | 1219 | } |
| 1220 | 1220 | |
| r245703 | r245704 | |
| 1223 | 1223 | for(int i=n-1; i>=0; i--) { |
| 1224 | 1224 | int bit = (val >> i) & 1; |
| 1225 | 1225 | bit_w(buffer, true, size, offset++); |
| 1226 | | bit_w(buffer, bit, size, offset++); |
| 1226 | bit_w(buffer, bit, size, offset++); |
| 1227 | 1227 | } |
| 1228 | 1228 | } |
| 1229 | 1229 | |
| r245703 | r245704 | |
| 1233 | 1233 | for(int i=start_bit; i>=0; i-=2) { |
| 1234 | 1234 | int bit = (val >> i) & 1; |
| 1235 | 1235 | bit_w(buffer, !(prec || bit), size); |
| 1236 | | bit_w(buffer, bit, size); |
| 1236 | bit_w(buffer, bit, size); |
| 1237 | 1237 | prec = bit; |
| 1238 | 1238 | } |
| 1239 | 1239 | } |