Coder Social home page Coder Social logo

nthalexts's Introduction

NT HAL extensions

This repository is for HAL extensions I write, for ARMv7 NT. Please note that headers and libraries from (Win8 M2-era) NT DDK are reproduced here for ease of building. To build, run build.cmd in MSVC cross-compile command prompt.

You need correct CSRT ACPI tables to load these.

halextgit

HAL extension for ARM generic timers. Parses both the old-style (EGIT) and new-style (GTDT) ACPI tables.

Should work on build 789x+ but only tested on 7957+ for now.

SetInterruptVector function is provided as a no-op to work around a bug in Windows 8 M3 and below that can cause boot time bugchecks on some systems when using the HAL-provided Generic Interrupt Timer implementation.

Will not work on builds 8441-9200, due to a bad check in the HAL. For those builds, bring in working prodsigned HAL from build 8400.

halextbcm2709

HAL extension for BCM2709 interrupt controllers (BCM2709 ARM local interrupt controller, and BCM2708 VC4 global interrupt controller). Backported from rs1-era HAL.

Interrupt controller HAL extensions have an interesting history, they were added in 789x but removed again in 799x, for builds since then we have to pattern match to find the functions that are no longer exported. Additionally various data structures changed over time, so that must be detected too.

All of this is done in halextapi.c, bugchecks happen on any kind of failure.

Tested HAL builds 7957, 8061, 8330, 8400; should work up to 9600 but untested.

Some M2-era builds are unstable, setting BCD numproc to use only 1 core helps.

Checked builds appear to be broken although patterns seem to work there.

nthalexts's People

Contributors

wack0 avatar

Stargazers

Leandro Friedrich avatar Michael Shipley avatar Lyssa avatar Stanislav Motylkov avatar Larson T. avatar  avatar kn0 avatar Idan Maman avatar  avatar Ivan Kuzmenko avatar Marcinoo97 avatar pivotman319 avatar Milan Babuljak avatar Liu Wenyuan avatar Richard Gráčik avatar dominduchami avatar

Watchers

 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.