- --
Viewing Issue Advanced Details
ID | Category [?] | Severity [?] | Reproducibility | Date Submitted | Last Update |
---|---|---|---|---|---|
07094 | Media Support | Major | Always | Sep 4, 2018, 22:57 | Aug 19, 2020, 10:34 |
Tester | nippur72 | View Status | Public | Platform | |
Assigned To | Robbbert | Resolution | Fixed | OS | |
Status [?] | Resolved | Driver | |||
Version | 0.201 | Fixed in Version | 0.224 | Build | |
Fixed in Git Commit | Github Pull Request # | ||||
Summary | 07094: laser500: cassette WAV files cannot be loaded/saved from/to a real machine | ||||
Description |
WAV files produced by the tape emulator are about 15% faster than they should be, and thus cannot be loaded onto a real machine. At the same time a file from a real machine won't load in the emulator unless it's slowed down by 15% via some external audio tool. |
||||
Steps To Reproduce |
0) unzip the attached file "07094.zip" 1) open laser500 emulator 2) at READY prompt type CRUN and press RETURN 3) "WAITING" in reverse is displayed one row below 4) open UI Panel -> File Manager -> cassette (cass) (might need pressing Scroll Lock to enable UI panel) 5) choose the file "from_real_hardware.wav" from unzipped folder 6) at this point you should be hearing the waveform playing but nothing happens, the program is not loaded 7) open UI Panel -> File Manager -> cassette (cass) 8) choose the file "from_real_hardware_speeded_15_percent.wav" or "from_emulator", and see how both load This proves the emulator can load its own files or files from real hardware that are speeded up by ~ 15% |
||||
Additional Information |
The attached file "07094.zip" contains: from_emulator.wav: waveform generated in MESS from_real_hardware: waveform generated on a real Laser 500 and sampled on a PC from_real_hardware_speeded_15_percent: the real hardware waveform increased in speed by 15% with the audio tool "Audacity". There is also the image "compared.png" which shows MESS vs REAL waveform side by side, where it can be seen that MESS is visibly shorter / faster. One more info: I checked the file "src/lib/formats/vt_cas.cpp" and the numbers seem correct. According to the reference manual, the shortest HI or LO duration should be 277 microseconds, which indeed correspond to 3 samples at 10800 Hz in the source code. I should mention also that vt1 (Laser110 family) and vt2 (Laser500 family) share the same numbers, and they could be reunited into one single common code in vt_cass.cpp. In VT1, the numbers are: 1 sample at 3600 Hz which is 277 microseconds as in VT2. The bit encoding is also the same. |
||||
Github Commit | |||||
Flags | |||||
Regression Version | |||||
Affected Sets / Systems | laser500 | ||||
Attached Files
|
bug07094.zip (963,185 bytes) Sep 5, 2018, 16:03 Uploaded by nippur72 waveforms for reproducing the bug | ||||
Relationships
There are no relationship linked to this issue. |
Notes
2
No.15389
Tafoid Administrator
Sep 4, 2018, 23:33
|
Could you please provide an example "from original hardware" wave and "from emulation" wave (attach them as a .zip) and some instruction on how to use the machine to load/save cassette images? It would go some way to allow people to confirm the issue and help devs by providing those example images. |
---|---|
No.15394
nippur72 Tester
Sep 5, 2018, 16:30
|
@Tafoid I've updated the report with an attached file and all the info that might help. I tried to be more detailed as possible. I tried to look for the bug in the source code myself, but all seems correct to me. |