id3cobol/README.md

61 lines
1.7 KiB
Markdown

# MP3 ID3 Tag Reader
![GnuCOBOL](https://img.shields.io/badge/GnuCOBOL-3.2.0%2B-blue)
![Fun COBOL Image](assets/images/cobol.png)
This project is a COBOL-based MP3 ID3 tag reader that parses and displays metadata from MP3 files. It uses GnuCOBOL for compilation and execution.
## Software Requirements
- **GnuCOBOL**: Version 3.2.0 or later
- Ensure GnuCOBOL is installed and accessible via the `cobc` command.
- **Operating System**: Linux (tested on May 5, 2025)
- **Make**: Version 4.3 or later (for building the project)
- **Git**: Version 2.30.0 or later (for version control)
## Project Structure
- `id3cobol.cbl`: Main COBOL program for reading and parsing MP3 ID3 tags.
- `zero-ord.cbl`: COBOL module for zero-based ordinal conversion.
- `Makefile`: Build automation file for compiling and cleaning the project.
- `.gitignore`: Specifies files and directories to be ignored by Git.
## Build Instructions
1. **Compile the `zero-ord` module**:
```bash
make zero-ord
```
2. **Compile the `id3cobol` program**:
```bash
make id3cobol
```
3. **Clean up build artifacts**:
```bash
make clean
```
4. **Perform a deep clean (removes all artifacts)**:
```bash
make distclean
```
## Usage
Run the compiled `id3cobol` program to parse the `audio.mp3` file:
```bash
./id3cobol
```
> **Note**: Ensure you have an `audio.mp3` file in the same directory as the program. This file is required for the program to function.
## Debugging
To enable debugging, ensure the `WS-DEBUG-MODE` variable in `id3cobol.cbl` is set to `1`. This will display additional debug information during execution.
## License
This project is licensed under the MIT License. See the LICENSE file for details.