> For the complete documentation index, see [llms.txt](https://osl.mistium.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://osl.mistium.com/legacy-originos/legacy-osl.md).

# What changed

OSL began as the scripting language inside originOS. That runtime supplied browser windows, camera access, simulated input, inter-window messages, permissions, global UI state, and its own file model.

The current OSL compiler builds standalone native programs. It does not include the originOS desktop environment, so those APIs do not carry over simply because the language syntax looks similar.

## What changed

| originOS feature                   | Current OSL replacement                                                                                                                                              |
| ---------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Browser window commands            | [`std:window`](https://github.com/Mistium/OSL-Docs/tree/main/packages/window.md) or [`std:raylib`](https://github.com/Mistium/OSL-Docs/tree/main/packages/raylib.md) |
| originOS filesystem                | [`std:fs`](https://github.com/Mistium/OSL-Docs/tree/main/packages/fs.md)                                                                                             |
| Browser HTTP and WebSocket methods | [`std:requests`](https://github.com/Mistium/OSL-Docs/tree/main/packages/requests.md) and [`std:ws`](https://github.com/Mistium/OSL-Docs/tree/main/packages/ws.md)    |
| Desktop notifications              | [`std:notify`](https://github.com/Mistium/OSL-Docs/tree/main/packages/notify.md)                                                                                     |
| Embedded sound                     | [`std:sound`](https://github.com/Mistium/OSL-Docs/tree/main/packages/sound.md)                                                                                       |
| Running Lua                        | [`std:lua`](https://github.com/Mistium/OSL-Docs/tree/main/packages/lua.md)                                                                                           |
| originOS save database             | [`std:save`](https://github.com/Mistium/OSL-Docs/tree/main/packages/save.md) or [`std:db`](https://github.com/Mistium/OSL-Docs/tree/main/packages/db.md)             |

Camera access, simulated system input, originOS permissions, and inter-window desktop messages have no direct compiler equivalent.

## What remains here

The pages in this section preserve a small amount of old syntax for people reading historical originOS programs. They are not part of the current language guide and should not be used as a source for new OSL code.
