AI prompts
base on Get PC BIOS back on UEFI only system # CSMWrap [](https://github.com/FlyGoat/CSMWrap/actions/workflows/build.yml)
CSMWrap is a cool UEFI application designed to enable legacy BIOS booting on modern UEFI-only systems. It achieves this by leveraging the Compatibility Support Module (CSM) and VESA VBIOS components from the [SeaBIOS project](https://www.seabios.org/), effectively creating a compatibility layer for traditional PC BIOS operation.
## Core Features
* **Native Legacy BIOS Environment:** Provides essential BIOS services (INT 10h, INT 13h, etc.).
* **SeaBIOS Integration:** Utilizes SeaBIOS CSM and VBIOS for compatibility.
* **UEFI Compatibility:** Builds for IA32 and x86_64 UEFI systems.
* **Resource Management:** Handles E820 memory mapping, ACPI/SMBIOS passthrough.
## Prerequisites
Before attempting to use CSMWrap, your system's UEFI firmware settings **MUST** be configured as follows:
1. **Secure Boot MUST be DISABLED.**
2. **"Above 4G Decoding" / "Resizable BAR" / "Smart Access Memory" MUST be DISABLED.**
* This is critical for legacy VBIOS compatibility and ensures PCI resources are mapped within the accessible 4GB address space.
3. **Native CSM (Compatibility Support Module):**
* **Try disabling it first.** CSMWrap aims to be its own CSM. If issues arise, you can experiment with enabling it.
Failure to correctly configure these settings is the most common reason for CSMWrap not working.
## Quick Start
1. **Download:** Get the latest `csmwrap<ARCH>.efi` from the [Releases page](https://github.com/FlyGoat/CSMWrap/releases).
2. **Configure UEFI:** Ensure all **Crucial UEFI Prerequisites** above are met.
3. **Deploy:** Copy `csmwrap<ARCH>.efi` to your EFI System Partition (ESP), typically as `EFI/BOOT/BOOTX64.EFI` (for 64-bit) or `EFI/BOOT/BOOTIA32.EFI` (for 32-bit).
4. **Boot:** Select the UEFI boot entry for CSMWrap.
## Documentation
For detailed installation, usage, advanced scenarios, and troubleshooting, please consult our Wiki.
Please visit [this](https://github.com/FlyGoat/CSMWrap/wiki).
## Contributing
Contributions are welcome! Whether it's reporting bugs, suggesting features, improving documentation, or submitting code changes, your help is appreciated.
Please read the [Contributing](https://github.com/FlyGoat/CSMWrap/wiki/Contributing) guide for more details.
## Credits & Acknowledgements
* The **[SeaBIOS project](https://www.seabios.org/)** for their CSM and VBIOS code.
* **[Nyu-EFI](https://codeberg.org/osdev/nyu-efi)** for the EFI C runtime, build system, and headers.
* **[EDK2 (TianoCore)](https://github.com/tianocore/edk2)** for UEFI specifications and some code snippets.
* **[uACPI](https://github.com/uACPI/uACPI)** for ACPI table handling.
* **@CanonKong** for test feedback and general knowledge.
* All contributors and testers from the community!
", Assign "at most 3 tags" to the expected json: {"id":"13887","tags":[]} "only from the tags list I provide: [{"id":77,"name":"3d"},{"id":89,"name":"agent"},{"id":17,"name":"ai"},{"id":54,"name":"algorithm"},{"id":24,"name":"api"},{"id":44,"name":"authentication"},{"id":3,"name":"aws"},{"id":27,"name":"backend"},{"id":60,"name":"benchmark"},{"id":72,"name":"best-practices"},{"id":39,"name":"bitcoin"},{"id":37,"name":"blockchain"},{"id":1,"name":"blog"},{"id":45,"name":"bundler"},{"id":58,"name":"cache"},{"id":21,"name":"chat"},{"id":49,"name":"cicd"},{"id":4,"name":"cli"},{"id":64,"name":"cloud-native"},{"id":48,"name":"cms"},{"id":61,"name":"compiler"},{"id":68,"name":"containerization"},{"id":92,"name":"crm"},{"id":34,"name":"data"},{"id":47,"name":"database"},{"id":8,"name":"declarative-gui "},{"id":9,"name":"deploy-tool"},{"id":53,"name":"desktop-app"},{"id":6,"name":"dev-exp-lib"},{"id":59,"name":"dev-tool"},{"id":13,"name":"ecommerce"},{"id":26,"name":"editor"},{"id":66,"name":"emulator"},{"id":62,"name":"filesystem"},{"id":80,"name":"finance"},{"id":15,"name":"firmware"},{"id":73,"name":"for-fun"},{"id":2,"name":"framework"},{"id":11,"name":"frontend"},{"id":22,"name":"game"},{"id":81,"name":"game-engine "},{"id":23,"name":"graphql"},{"id":84,"name":"gui"},{"id":91,"name":"http"},{"id":5,"name":"http-client"},{"id":51,"name":"iac"},{"id":30,"name":"ide"},{"id":78,"name":"iot"},{"id":40,"name":"json"},{"id":83,"name":"julian"},{"id":38,"name":"k8s"},{"id":31,"name":"language"},{"id":10,"name":"learning-resource"},{"id":33,"name":"lib"},{"id":41,"name":"linter"},{"id":28,"name":"lms"},{"id":16,"name":"logging"},{"id":76,"name":"low-code"},{"id":90,"name":"message-queue"},{"id":42,"name":"mobile-app"},{"id":18,"name":"monitoring"},{"id":36,"name":"networking"},{"id":7,"name":"node-version"},{"id":55,"name":"nosql"},{"id":57,"name":"observability"},{"id":46,"name":"orm"},{"id":52,"name":"os"},{"id":14,"name":"parser"},{"id":74,"name":"react"},{"id":82,"name":"real-time"},{"id":56,"name":"robot"},{"id":65,"name":"runtime"},{"id":32,"name":"sdk"},{"id":71,"name":"search"},{"id":63,"name":"secrets"},{"id":25,"name":"security"},{"id":85,"name":"server"},{"id":86,"name":"serverless"},{"id":70,"name":"storage"},{"id":75,"name":"system-design"},{"id":79,"name":"terminal"},{"id":29,"name":"testing"},{"id":12,"name":"ui"},{"id":50,"name":"ux"},{"id":88,"name":"video"},{"id":20,"name":"web-app"},{"id":35,"name":"web-server"},{"id":43,"name":"webassembly"},{"id":69,"name":"workflow"},{"id":87,"name":"yaml"}]" returns me the "expected json"