commit 1e1e16e728fc5bf4c29efa346322bb1a02764a32 Author: GitHub Actions Date: Tue Jan 11 23:04:42 2022 +0000 Deploy exoticorn/microw8 to exoticorn/microw8:gh-pages diff --git a/404.html b/404.html new file mode 100644 index 0000000..f8414f0 --- /dev/null +++ b/404.html @@ -0,0 +1,3 @@ + +404 Not Found +

404 Not Found

diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 0000000..4767d23 --- /dev/null +++ b/docs/index.html @@ -0,0 +1,431 @@ + + + + + + Docs | + + + + + + + + + + + + + + + +
+ + + + + + + + +
+ + +
+ + + + + +
+
+ +
+ Overview +
+ + + + + +
+ API +
+ + +
+ - Math +
+ +
+ - Random +
+ + + +
+ - Input +
+ + + + + + + + +
+ - uw8 run +
+ + + + + + + + + + + + + + + + +
+ - Itch.io +
+ + + + + + + + + + + + + + +
+
+ + + +
+ +
Docs
+

Overview

+

MicroW8 loads WebAssembly modules with a maximum size of 256kb. You module needs to export +a function fn upd() which will be called once per frame. +After calling upd MicroW8 will display the 320x240 8bpp framebuffer located +at offset 120 in memory with the 32bpp palette located at 0x13000.

+

The memory has to be imported as env memory and has a maximum size of 256kb (4 pages).

+

Memory map

+
00000-00040: user memory
+00040-00044: time since module start in ms
+00044-0004c: gamepad state
+0004c-00078: reserved
+00078-12c78: frame buffer
+12c78-13000: reserved
+13000-13400: palette
+13400-13c00: font
+13c00-14000: reserved
+14000-40000: user memory
+
+

API

+

All API functions are found in the env module.

+

Math

+

These all do what you'd expect them to. All angles are in radians.

+

fn asin(x: f32) -> f32

+

Returns the arcsine of x.

+

fn acos(x: f32) -> f32

+

Returns the arccosine of x.

+

fn atan(f32) -> f32

+

Returns the arctangent of x.

+

fn atan2(y: f32, y: f32) -> f32

+

Returns the angle between the point (x, y) and the positive x-axis.

+

fn sin(angle: f32) -> f32

+

Returns the sine of angle.

+

fn tan(angle: f32) -> f32

+

Returns the tangent of angle.

+

fn cos(angle: f32) -> f32

+

Returns the cosine of angle.

+

fn exp(x: f32) -> f32

+

Returns e^x.

+

fn log(x: f32) -> f32

+

Returns the natural logarithmus of x. Ie. e^log(x) == x.

+

fn pow(x: f32, y: f32) -> f32

+

Returns x^y.

+

fn fmod(x: f32, y: f32) -> f32

+

Returns x modulo y, ie. x - floor(x / y) * y. This means the sign of the result of fmod is the same as y.

+

Random

+

MicroW8 provides a pretty good PRNG, namely xorshift64*. It is initialized to a constant seed at each startup, so if you +want to vary the random sequence you'll need to provide a seed yourself.

+

fn random() -> i32

+

Returns a (pseudo-)random 32bit integer.

+

fn randomf() -> f32

+

Returns a (pseudo-)random float equally distributed in [0,1).

+

fn randomSeed(seed: i32)

+

Seeds the PRNG with the given seed. The seed function is reasonably strong so that you can use

+
randomSeed(index);
+random()
+
+

as a cheap random-access PRNG (aka noise function).

+

Graphics

+

The default palette can be seen here. (Press Z on the keyboard to switch to palette.)

+

The palette can be changed by writing 32bit rgba colors to addresses 0x13000-0x13400.

+

The drawing functions are sub-pixel accurate where applicable (line, circle). Pixel centers lie halfway between integer +coordinates. Ie. the top-left pixel covers the area 0,0 - 1,1, with 0.5,0.5 being the pixel center.

+

fn cls(color: i32)

+

Clears the screen to the given color index. Also sets the text cursor to 0, 0 and disables graphical text mode.

+

fn setPixel(x: i32, y: i32, color: i32)

+

Sets the pixel at x, y to the given color index.

+

fn getPixel(x: i32, y: i32) -> i32

+

Returns the color index at x, y. Returns 0 if the given coordinates are outside the screen.

+

fn hline(left: i32, right: i32, y: i32, color: i32)

+

Fills the horizontal line [left, right), y with the given color index.

+

fn rectangle(x: f32, y: f32, w: f32, h: f32, color: i32)

+

Fills the rectangle x,y - x+w,y+h with the given color index.

+

(Sets all pixels where the pixel center lies inside the rectangle.)

+

fn circle(cx: f32, cy: f32, radius: f32, color: i32)

+

Fills the circle at cx, cy and with radius with the given color index.

+

(Sets all pixels where the pixel center lies inside the circle.)

+

fn rectangle_outline(x: f32, y: f32, w: f32, h: f32, color: i32)

+

Draws a one pixel outline on the inside of the given rectangle.

+

(Draws the outermost pixels that are still inside the rectangle area.)

+

fn circle_outline(cx: f32, cy: f32, radius: f32, color: i32)

+

Draws a one pixel outline on the inside of the given circle.

+

(Draws the outermost pixels that are still inside the circle area.)

+

fn line(x1: f32, y1: f32, x2: f32, y2: f32, color: i32)

+

Draws a line from x1,y1 to x2,y2 in the given color index.

+

Input

+

MicroW8 provides input from a gamepad with one D-Pad and 4 buttons, or a keyboard emulation thereof.

+

The buttons are numbered

+ + + + + + + + + +
ButtonKeyboardIndex
UpArrow-Up0
DownArrow-Down1
LeftArrow-Left2
RightArrow-Right3
AZ4
BX5
XA6
YS7
+

In addition to using the API functions below, the gamepad state can also be read as a bitfield of +pressed buttons at address 0x44. 0x48 holds the buttons that were pressed last frame.

+

fn isButtonPressed(btn: i32) -> i32

+

Returns whether the buttons with the given index is pressed this frame.

+

fn isButtonTriggered(btn: i32) -> i32

+

Returns whether the given button is newly pressed this frame.

+

fn time() -> f32

+

Returns the time in seconds since the start of the cart.

+

The integer time in milliseconds can also be read at address 0x40.

+

Text output

+

The default font can be seen here.

+

The font can be changed by writing 1bpp 8x8 characters to addresses 0x13400-0x13c00.

+

All text printing is done at the cursor position, which is advanced after printing each character. +The cursor is not visible.

+

Text printing can operate in two modes - normal and graphics. After startup and after cls() normal mode is active.

+

Normal mode

+

In normal mode, text printing is constrained to an 8x8 character grid. Setting the cursor position to 2,3 will start printing at pixel coordinates 16,24.

+

When printing characters, the full 8x8 pixels are painted with the text and background colors according to the character graphics in the font.

+

When moving/printing past the left or right border the cursor will automatically wrap to the previous/next line. When moving/printing past the upper/lower border, the screen will be scrolled down/up 8 pixels, filling the fresh line with the background color.

+

Graphics mode

+

In graphics mode, text can be printed to any pixel position, the cursor position is set in pixel coordinates.

+

When printing characters only the foreground pixels are set, the background is "transparent".

+

Moving/printing past any border does not cause any special operation, the cursor just goes off-screen.

+

Control chars

+

Characters 0-31 are control characters and don't print by default. They take the next 0-2 following characters as parameters. +Avoid the reserved control chars, they are currently NOPs but their behavior can change in later MicroW8 versions.

+ + + + + + + + + + + + + + + + + + + +
CodeParametersOperation
0-Nop
1charPrint char (including control chars)
2-3-Reserved
4-Switch to normal mode
5-Switch to graphics mode
6-7-Reserved
8-Move cursor left
9-Move cursor right
10-Move cursor down
11-Move cursor up
12-do cls(background_color)
13-Move cursor to the left border
14colorSet the background color
15colorSet the text color
16-23-Reserved
24-Swap text/background colors
25-30-Reserved
31x, ySet cursor position (*)
+

(*) In graphics mode, the x coordinate is doubled when using control char 31 to be able to cover the whole screen with one byte.

+

fn printChar(char: i32)

+

Prints the character in the lower 8 bits of char. If the upper 24 bits are non-zero, right-shifts char by 8 bits and loops back to the beginning.

+

fn printString(ptr: i32)

+

Prints the zero-terminated string at the given memory address.

+

fn printInt(num: i32)

+

Prints num as a signed decimal number.

+

fn setTextColor(color: i32)

+

Sets the text color.

+

fn setBackgroundColor(color: i32)

+

Sets the background color.

+

fn setCursorPosition(x: i32, y: i32)

+

Sets the cursor position. In normal mode x and y are multiplied by 8 to get the pixel position, in graphics mode they are used as is.

+

The uw8 tool

+

The uw8 tool included in the MicroW8 download includes a number of useful tools for developing MicroW8 carts. For small productions written in +wat or CurlyWas you don't need anything apart from uw8 and a text editor of your choice.

+

uw8 run

+

Usage:

+

uw8 run [<options>] <file>

+

Runs <file> which can be a binary WebAssembly module, an .uw8 cart, a wat (WebAssembly text format) source file or a CurlyWas source file.

+

Options:

+
    +
  • -w, --watch: Reloads the given file every time it changes on disk.
  • +
  • -p, --pack: Pack the file into an .uw8 cart before running it and print the resulting size.
  • +
  • -u, --uncompressed: Use the uncompressed uw8 format for packing.
  • +
  • -l LEVEL, --level LEVEL: Compression level (0-9). Higher compression levels are really slow.
  • +
  • -o FILE, --output FILE: Write the loaded and optionally packed cart back to disk.
  • +
+

uw8 pack

+

Usage:

+

uw8 pack [<options>] <infile> <outfile>

+

Packs the WebAssembly module or text file, or CurlyWas source file into a .uw8 cart.

+

Options:

+
    +
  • -u, --uncompressed: Use the uncompressed uw8 format for packing.
  • +
  • -l LEVEL, --level LEVEL: Compression level (0-9). Higher compression levels are really slow.
  • +
+

uw8 filter-exports

+

Usage:

+

uw8 filter-exports <infile> <outfile>

+

Reads a binary WebAssembly module, removes all exports not used by the MicroW8 platform + everything that is unreachable without those exports and writes the resulting module to outfile.

+

When compiling C code (or Rust, zig or others) to WebAssembly, you end up with a few exported global variables that are used for managing the heap and C stack, even if the code doesn't actually use those features. You can use this command to automatically remove those and gain a few bytes. See the C, Rust and zig examples in the MicroW8 repository.

+

Distribution

+ +

url parameter

+

.html + .uw8

+

Itch.io

+

.uw8 format

+

The first byte of the file specifies the format version:

+

Format version 00:

+

This file is simply a standard WebAssembly module

+

Format version 01:

+

The rest of this file is the same as a WebAssembly +module with the 8 byte header removed. This module +can leave out sections which are then taken from +a base module provided by MicroW8.

+

You can generate this base module yourself using +uw8-tool. As a quick summary, it provides all function +types with up to 5 parameters (i32 or f32) where the +f32 parameters always preceed the i32 parameters. +Then it includes all imports that MicroW8 provides, +a function section with a single function of type +() -> void and an export section that exports +the first function in the file under the name upd.

+

Format version 02:

+

Same as version 01 except everything after the first byte is compressed +using a custom LZ compression scheme.

+ + +
+ + + +
+ + + + + + + diff --git a/index.html b/index.html new file mode 100644 index 0000000..0d99049 --- /dev/null +++ b/index.html @@ -0,0 +1,209 @@ + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
+ +
+ +
+
+

A WebAssembly based fantasy console

+
+ +
+
+
+
+ Explore More ⇩ +
+ +
+ + + +
+ + + + + +
+
+ +
+ About +
+ + +
+ Specs +
+ + +
+ Examples +
+ + +
+ Versions +
+ + +
+ Tooling +
+ + +
+
+ + + +
+ +
Overview
+

About

+

MicroW8 is a WebAssembly based fantasy console inspired by the likes of TIC-80, WASM-4 and PICO-8.

+

The initial motivation behind MicroW8 was to explore whether there was a way to make WebAssembly viable for size-coding. (Size coding being the art of creating tiny (often <= 256 bytes) graphical effects and games.) The available examples so far are all in this space, however, I very carefully made sure that all design decisions make sense from the point of view of bigger projects as well.

+

Specs

+
    +
  • Screen: 320x240, 256 colors, 60Hz
  • +
  • Modules: Up to 256KB (WASM)
  • +
  • Memory: 256KB
  • +
  • Gamepad input (D-Pad + 4 Buttons)
  • +
+

Examples

+
    +
  • Fireworks (127 bytes): Some fireworks to welcome 2022.
  • +
  • Skip Ahead (229 bytes): A port of my TIC-80 256byte game from LoveByte'21
  • +
  • OhNoAnotherTunnel (177 bytes): A port of my entry in the Outline'21 bytebattle final
  • +
  • Technotunnel (158 bytes): A port of my entry in the Outline'21 bytebattle quater final
  • +
  • Font & Palette: Just a simple viewer for the default font and palette.
  • +
  • Technotunnel B/W (199 bytes uncompressed): A port of my entry in the Outline'21 bytebattle quater final (older MicroW8 version with monochrome palette)
  • +
  • XorScroll (50 bytes uncompressed): A simple scrolling XOR pattern. Fun fact: This is the pre-loaded effect when entering a bytebattle.
  • +
  • CircleWorm (126 bytes uncompressed): Just a test for the circle fill function.
  • +
+

Versions

+ +

Tooling

+

WARNING: severely out of date. The uw8 binary includes a lot of the tool features below.

+

The Web Assembly Binary Toolkit includes +a few useful tools, eg. wat2wasm to compile the WebAssemby text format to binary +wasm and wasm2wat to disassemble wasm binaries.

+

If you don't like the look of the .wat text format, you might want to take a +look at CurlyWas, a curly-braces infix +syntax for WebAssembly.

+

Once you have a size-efficient .wasm file, you can use uw8-tool +(currently included in the MicroW8 repository) to strip off sections of the +WebAssembly module that are provided by the MicroW8 platform.

+

Writing code for MicroW8 in C, Rust, AssemblyScript etc. should absolutely +possible but no examples are provided, yet.

+ + +
+ + + +
+ + + + + + + diff --git a/juice.css b/juice.css new file mode 100644 index 0000000..768b427 --- /dev/null +++ b/juice.css @@ -0,0 +1 @@ +.text-center{text-align:center}.pos-absolute{right:0;left:0;position:absolute}.box-shadow{box-shadow:0 2px 10px 2px #ddd}.heading-text{font-family:"Fira Sans", sans-serif;font-size:32px;font-weight:600;padding:10px 0 25px 0;color:var(--primary-text-color)}h1,.title-text{font-family:"Fira Sans", sans-serif;font-size:25px;font-weight:500;color:var(--primary-text-color);border-left:var(--primary-color) 8px solid;padding-left:10px}h2,.subtitle-text{font-family:"Fira Sans", sans-serif;font-size:20px;font-weight:500;color:var(--primary-text-color)}.text{font-family:"Fira Sans", sans-serif;font-size:18px;font-weight:400;line-height:26px;letter-spacing:0.2px;color:var(--primary-text-color)}.subtext{font-family:"Fira Sans", sans-serif;font-size:16px;font-weight:400;letter-spacing:0.1px}.content{padding:0 40px;display:flex;flex-direction:column;overflow-x:auto}.content pre{overflow-x:auto;padding:1.25em 1.5em;white-space:pre;word-wrap:normal;background-color:white;color:#4a4a4a;font-size:.875em;font-family:monospace}.content code{background-color:white;color:#4a4a4a;font-size:.875em;font-weight:normal;padding:0.25em 0.5em;font-family:monospace}.content pre code{padding:0}.content a{color:var(--primary-link-color)}.content a:hover{text-decoration:underline}.content blockquote{border-left:#e2dede 8px solid;margin:0;background-color:#f2f1f0;padding:0 20px}body{padding:0;margin:0;box-sizing:border-box;background-color:var(--secondary-color);display:flex;flex-direction:column;min-height:100vh}a{text-decoration:none}ul{margin-top:0.5rem}ul>li{padding:0.3rem 0}p>img{width:100%;height:auto}header{background-color:var(--primary-color);color:black;padding:20px 50px;display:flex;align-items:center;justify-content:space-between}.logo{font-family:"Alfa Slab One", serif;font-size:32px;color:var(--primary-text-color);display:flex;align-items:center;margin:0 40px}.logo img{width:60px;margin:0 25px}.nav-item{margin:0 10px;text-decoration:none;font-size:18px;font-weight:bold}.nav-item:hover{color:#000;text-decoration:underline}.hero{display:flex;align-items:center;justify-content:space-evenly;height:100vh;background-color:var(--primary-color);overflow-x:hidden;padding:0 40px}.hero .explore-more{position:absolute;bottom:20px;cursor:pointer}main{display:flex;padding:50px 100px;flex-grow:1}main .toc{max-width:260px;min-width:240px}main .toc-item{padding:10px 20px;color:#424242}main .toc-item a,main .toc-item-child a{color:var(--secondary-text-color)}main .toc-item a:hover,main .toc-item-child a:hover{cursor:pointer;text-decoration:underline}main .toc-item a.active,main .toc-item-child a.active{color:var(--toc-highlight-text-color)}main .toc-item-child{padding:0 30px 5px;color:#424242}.toc-sticky{border-radius:3px;border-top:5px solid var(--primary-color);background-color:white;position:sticky;position:-webkit-sticky;position:-moz-sticky;position:-ms-sticky;position:-o-sticky;top:10px;padding:10px 0 20px;max-height:100vh;overflow:auto}footer{padding:50px;display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:#202020;color:#fcfcfc}footer a{color:#fcfcfc;text-decoration:underline}@media screen and (min-width: 1280px){.content{max-width:60%;min-width:800px}}@media screen and (max-width: 768px){header{padding:10px 30px;flex-direction:column;align-items:center;justify-content:center}.logo{font-size:28px;margin:10px}.logo img{width:45px;margin:0 10px 0 0}.nav-item{margin:0 5px;font-size:14px}.hero{padding:40px 30px}main{padding:30px}.content{padding:0}.explore-more,.toc{display:none}} diff --git a/normalize.css b/normalize.css new file mode 100644 index 0000000..192eb9c --- /dev/null +++ b/normalize.css @@ -0,0 +1,349 @@ +/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */ + +/* Document + ========================================================================== */ + +/** + * 1. Correct the line height in all browsers. + * 2. Prevent adjustments of font size after orientation changes in iOS. + */ + +html { + line-height: 1.15; /* 1 */ + -webkit-text-size-adjust: 100%; /* 2 */ +} + +/* Sections + ========================================================================== */ + +/** + * Remove the margin in all browsers. + */ + +body { + margin: 0; +} + +/** + * Render the `main` element consistently in IE. + */ + +main { + display: block; +} + +/** + * Correct the font size and margin on `h1` elements within `section` and + * `article` contexts in Chrome, Firefox, and Safari. + */ + +h1 { + font-size: 2em; + margin: 0.67em 0; +} + +/* Grouping content + ========================================================================== */ + +/** + * 1. Add the correct box sizing in Firefox. + * 2. Show the overflow in Edge and IE. + */ + +hr { + box-sizing: content-box; /* 1 */ + height: 0; /* 1 */ + overflow: visible; /* 2 */ +} + +/** + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ + +pre { + font-family: monospace, monospace; /* 1 */ + font-size: 1em; /* 2 */ +} + +/* Text-level semantics + ========================================================================== */ + +/** + * Remove the gray background on active links in IE 10. + */ + +a { + background-color: transparent; +} + +/** + * 1. Remove the bottom border in Chrome 57- + * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. + */ + +abbr[title] { + border-bottom: none; /* 1 */ + text-decoration: underline; /* 2 */ + text-decoration: underline dotted; /* 2 */ +} + +/** + * Add the correct font weight in Chrome, Edge, and Safari. + */ + +b, +strong { + font-weight: bolder; +} + +/** + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ + +code, +kbd, +samp { + font-family: monospace, monospace; /* 1 */ + font-size: 1em; /* 2 */ +} + +/** + * Add the correct font size in all browsers. + */ + +small { + font-size: 80%; +} + +/** + * Prevent `sub` and `sup` elements from affecting the line height in + * all browsers. + */ + +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sub { + bottom: -0.25em; +} + +sup { + top: -0.5em; +} + +/* Embedded content + ========================================================================== */ + +/** + * Remove the border on images inside links in IE 10. + */ + +img { + border-style: none; +} + +/* Forms + ========================================================================== */ + +/** + * 1. Change the font styles in all browsers. + * 2. Remove the margin in Firefox and Safari. + */ + +button, +input, +optgroup, +select, +textarea { + font-family: inherit; /* 1 */ + font-size: 100%; /* 1 */ + line-height: 1.15; /* 1 */ + margin: 0; /* 2 */ +} + +/** + * Show the overflow in IE. + * 1. Show the overflow in Edge. + */ + +button, +input { /* 1 */ + overflow: visible; +} + +/** + * Remove the inheritance of text transform in Edge, Firefox, and IE. + * 1. Remove the inheritance of text transform in Firefox. + */ + +button, +select { /* 1 */ + text-transform: none; +} + +/** + * Correct the inability to style clickable types in iOS and Safari. + */ + +button, +[type="button"], +[type="reset"], +[type="submit"] { + -webkit-appearance: button; +} + +/** + * Remove the inner border and padding in Firefox. + */ + +button::-moz-focus-inner, +[type="button"]::-moz-focus-inner, +[type="reset"]::-moz-focus-inner, +[type="submit"]::-moz-focus-inner { + border-style: none; + padding: 0; +} + +/** + * Restore the focus styles unset by the previous rule. + */ + +button:-moz-focusring, +[type="button"]:-moz-focusring, +[type="reset"]:-moz-focusring, +[type="submit"]:-moz-focusring { + outline: 1px dotted ButtonText; +} + +/** + * Correct the padding in Firefox. + */ + +fieldset { + padding: 0.35em 0.75em 0.625em; +} + +/** + * 1. Correct the text wrapping in Edge and IE. + * 2. Correct the color inheritance from `fieldset` elements in IE. + * 3. Remove the padding so developers are not caught out when they zero out + * `fieldset` elements in all browsers. + */ + +legend { + box-sizing: border-box; /* 1 */ + color: inherit; /* 2 */ + display: table; /* 1 */ + max-width: 100%; /* 1 */ + padding: 0; /* 3 */ + white-space: normal; /* 1 */ +} + +/** + * Add the correct vertical alignment in Chrome, Firefox, and Opera. + */ + +progress { + vertical-align: baseline; +} + +/** + * Remove the default vertical scrollbar in IE 10+. + */ + +textarea { + overflow: auto; +} + +/** + * 1. Add the correct box sizing in IE 10. + * 2. Remove the padding in IE 10. + */ + +[type="checkbox"], +[type="radio"] { + box-sizing: border-box; /* 1 */ + padding: 0; /* 2 */ +} + +/** + * Correct the cursor style of increment and decrement buttons in Chrome. + */ + +[type="number"]::-webkit-inner-spin-button, +[type="number"]::-webkit-outer-spin-button { + height: auto; +} + +/** + * 1. Correct the odd appearance in Chrome and Safari. + * 2. Correct the outline style in Safari. + */ + +[type="search"] { + -webkit-appearance: textfield; /* 1 */ + outline-offset: -2px; /* 2 */ +} + +/** + * Remove the inner padding in Chrome and Safari on macOS. + */ + +[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +/** + * 1. Correct the inability to style clickable types in iOS and Safari. + * 2. Change font properties to `inherit` in Safari. + */ + +::-webkit-file-upload-button { + -webkit-appearance: button; /* 1 */ + font: inherit; /* 2 */ +} + +/* Interactive + ========================================================================== */ + +/* + * Add the correct display in Edge, IE 10+, and Firefox. + */ + +details { + display: block; +} + +/* + * Add the correct display in all browsers. + */ + +summary { + display: list-item; +} + +/* Misc + ========================================================================== */ + +/** + * Add the correct display in IE 10+. + */ + +template { + display: none; +} + +/** + * Add the correct display in IE 10. + */ + +[hidden] { + display: none; +} diff --git a/robots.txt b/robots.txt new file mode 100644 index 0000000..92a2f7b --- /dev/null +++ b/robots.txt @@ -0,0 +1,3 @@ +User-agent: * +Allow: / +Sitemap: https://exoticorn.github.io/microw8/sitemap.xml diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 0000000..6703fa6 --- /dev/null +++ b/sitemap.xml @@ -0,0 +1,9 @@ + + + + https://exoticorn.github.io/microw8/ + + + https://exoticorn.github.io/microw8/docs/ + + diff --git a/uw8/skipahead.uw8 b/uw8/skipahead.uw8 new file mode 100644 index 0000000..fd9c2e0 --- /dev/null +++ b/uw8/skipahead.uw8 @@ -0,0 +1,3 @@ +#IޮaVpv[VLc^ȯCM[5$S.}a'cbV-=XLguu8 +9\ݯh<4?zk.8&/@6ֿ;8{.8_^t/kp|n,'>10^4=@ {NI +b_=U`Y=\O٦bxh&gtO; #@HzΖ+Xw \ No newline at end of file diff --git a/v0.1pre1/index.html b/v0.1pre1/index.html new file mode 100644 index 0000000..c8331a1 --- /dev/null +++ b/v0.1pre1/index.html @@ -0,0 +1 @@ +MicroW8
\ No newline at end of file diff --git a/v0.1pre2/index.html b/v0.1pre2/index.html new file mode 100644 index 0000000..75f5447 --- /dev/null +++ b/v0.1pre2/index.html @@ -0,0 +1 @@ +MicroW8
\ No newline at end of file diff --git a/v0.1pre3/index.html b/v0.1pre3/index.html new file mode 100644 index 0000000..7a6fdce --- /dev/null +++ b/v0.1pre3/index.html @@ -0,0 +1 @@ +MicroW8
\ No newline at end of file diff --git a/v0.1pre4/index.html b/v0.1pre4/index.html new file mode 100644 index 0000000..6e704bd --- /dev/null +++ b/v0.1pre4/index.html @@ -0,0 +1 @@ +MicroW8
\ No newline at end of file diff --git a/v0.1pre5/index.html b/v0.1pre5/index.html new file mode 100644 index 0000000..2aa2b1a --- /dev/null +++ b/v0.1pre5/index.html @@ -0,0 +1 @@ +MicroW8
\ No newline at end of file