MaciASL can fetch patches from a number of online repositories, to be added by the user. Any web hosting service or product which allows arbitrary filenames can host a repository, examples are SourceForge's webspace, GitHub, and Joomla.
A MaciASL repository contains two parts, a manifest file named ".maciasl", and any number of plain-text patch files in the same directory as .maciasl, or its sub-directories. A repository entry in MaciASL is composed of two parts, the name (given by the builder, but can be changed by the user), and the URL (excluding the /.maciasl at the end).
Adding a repository to MaciASL is as easy as adding the repository's URL and name to Preferences > Sources, using the "+" button.
~~~~~~~~~~~~~~~~
Source Provider Definition
Source = {name:<user-defined name="">, url:<url without="" trailing="" slash="">}
URLs are automatically composed <url>/.maciasl, where .maciasl is the manifest
A manifest file is a simple list of patch metadata, one patch per line
Lines are composed like <name>\t<type>\t<url> and separated by newlines (\n)
The only illegal field characters are tab (\t) and newline (\n)
Type is one of DSDT or SSDT, but if absent defaults to DSDT for compatibility
New fields may be added in the future, but <url> will always be last
Patch URLs will automatically be composed like /<patch URL="">
It is recommended that patches start with a comment of the form:
#Maintained by: <name> for: <site>
~~~~~~~~~~
.maciasl
Replace Names DSDT rename.txt Insert DTGP DSDT dtgp.txt HD4k GFX DSDT gfx0.txt HD4k HDMI DSDT hdmi.txt Insert SMBus DSDT sbus.txt Name to String DSDT name.txt Generic SSDT SSDT ssdt.txt 800MHz SSDT SSDT 800mhz.txt
dtgp.txt
#Maintained by: PHPdev32 for: Sourceforge into definitionblock code_regex . insert begin Method (DTGP, 5, NotSerialized)\n {\n If (LEqual (Arg0, Buffer (0x10)\n {\n /* 0000 */ 0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44, \n /* 0008 */ 0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B\n }))\n {\n If (LEqual (Arg1, One))\n {\n If (LEqual (Arg2, Zero))\n {\n Store (Buffer (One)\n {\n 0x03\n }, Arg4)\n Return (One)\n }\n If (LEqual (Arg2, One))\n {\n Return (One)\n }\n }\n }\n Store (Buffer (One)\n {\n 0x00\n }, Arg4)\n Return (Zero)\n } end
Note: Since this method requires a separately-developed data model and can be very complex, a simpler generated repository could be maintained using [Script Generated Repository]
.htaccess
RewriteEngine On RewriteRule ^(.*) index.php?file=$1 [L,QSA]
index.php
<?php if (!($file=$_GET['file']) || strpos($file,'/')!==false) die; if ($file=='.maciasl') { //Print manifest if(!($handle=mysqli_connect('host','user','password','database'))) die; $query=mysqli_query($handle,'select name,type,id from patches where active is true'); $patches=array(); while($row=mysqli_fetch_assoc($query)) $patches[]="$row[name]\t$row[type]\t$row[id].txt"; echo implode("\n",$patches); mysqli_free_result($query); mysqli_close($handle); } elseif (strrchr($file,'.')=='.txt') { //Print file if(!($handle=mysqli_connect('host','user','password','database'))) die; $id=mysqli_real_escape_string($handle,substr($file,0,strlen($file)-4)); $query=mysqli_query($handle,"select data from table patches where id='$id' limit 1"); if($row=mysqli_fetch_assoc($query)) echo $row['data']; mysqli_free_result($query); mysqli_close($handle); } ~~~~~~ Guard Page Example ------ index.html
It looks like you're trying to use this URL in a browser, why not try it in MaciASL instead?