Git Product home page Git Product logo

uefiseven's Introduction

UefiSeven

Summary

UefiSeven is an efi module that enables Windows 7 to boot under UEFI Class 3 systems.

Windows 7 does not fully support UEFI and relies on legacy BIOS interrupt 10 (Int10h) during initial graphics initialization. On computers without proper legacy support Windows 7 might freeze on 'Starting Windows' screen or fail with error code 0xc000000d. Some motherboards have 'CSM' or 'legacy' boot options to fix this problem but it is getting increasingly rare as Intel decided to get rid of legacy BIOS support by 2020, and the option is virtually non-existent on consumer mobile devices. UefiSeven installs a minimal Int10h handler in the memory before Windows boots up so that the boot process do not fail because of the missing interrupt.

UefiSeven also contains a hack to enable screen output on hardwares that do not natively support 1024x768 as is needed by Windows Installer. Int10h handler comes with a macro, when enabled before compiling, that will enable serial console output which can be used to debug the handler itself.

Usage instructions

  1. Prepare Windows 7 installation USB Drive
  2. Rename bootx64.efi at (UsbDrive)\EFI\Boot\ to bootx64.original.efi
  3. Unpack bootx64.efi from UefiSeven archive and copy it to (UsbDrive)\EFI\Boot\
  4. Finish initial installation and wait for reboot prompt
  5. Power off computer
  6. Rename bootmgfw.efi at (HDD)\EFI\Microsoft\Boot\ to bootmgfw.original.efi
  7. Copy UefiSeven bootx64.efi to (HDD)\EFI\Microsoft\Boot\bootmgfw.efi using EFI shell

Settings

Settings can be applied by placing UefiSeven.ini file in the directory containing the main efi file. Refer to the sample configuration file for available options.

Build instructions

git clone https://git.mananet.net/manatails/uefiseven
(Copy or symlink UefiSevenPkg and IntelFrameworkPkg to the edk2 directory)
source ./edksetup.sh
make -C BaseTools/
./MdeModulePkg/Application/UefiSeven/Int10hHandler.sh ; Regenerate Int10h assembly. Optional
build -a X64 -t GCC49 -b RELEASE -p UefiSevenPkg/UefiSevenPkg.dsc --conf=UefiSevenPkg/Conf

Credits

  • Original VgaShim project
  • OVMF project
  • EDK II project

uefiseven's People

Contributors

ajfish avatar anthonyper-ctx avatar bjackman avatar dandanbi avatar darylm503 avatar ftian1 avatar gdong1 avatar hesschen avatar hhtian avatar hliebel avatar hwu25 avatar jcarsey avatar jiaxinwu avatar jljusten avatar jljusten2 avatar jyao1 avatar lersek avatar lgao4 avatar lhauch avatar lushifei avatar lzeng14 avatar manatails avatar mdkinney avatar niruiyu avatar oliviermartin avatar ronald-cron-arm avatar sun-rui avatar vanjeff avatar ydong10 avatar zhangchaointel avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.