Difference between revisions of "WebAssembly/Compiler"
m (→wasm-demo) |
|||
Line 37: | Line 37: | ||
Extract the binaries and put them somewhere in your path. | Extract the binaries and put them somewhere in your path. | ||
==wasm-demo== | ==wasm-demo== | ||
− | Wasm-demo | + | Wasm-demo is a Pascal WebAssembly demo project, ported Google's C WebAssembly example (https://codelabs.developers.google.com/codelabs/web-assembly-intro) |
+ | |||
+ | You follow these steps in order to get the demo project working: | ||
+ | |||
+ | 1. Get the project sources: https://github.com/skalogryz/wasm-demo | ||
+ | |||
+ | ===Using in webassembly.studio=== | ||
+ | 2. Run the wasm compiler against lyff.pas, but request the assembler file to be kept | ||
+ | pp -a lyff.pas | ||
+ | Webassembly.studio accepts the assembler file and would compile it on the server side. | ||
+ | |||
+ | 3. open up https://webassembly.studio and select "Create empty Wat Project". The project will consist of: | ||
+ | :main.html | ||
+ | :main.js | ||
+ | :main.wat | ||
+ | All files of the project can be edited through the web interface. | ||
+ | |||
+ | 4. Copy and paste the contents of the following files: | ||
+ | : (compiled) lyff.wat to main.wat. | ||
+ | : wasm-demo\webassembly.studio\main.html to main.html | ||
+ | : wasm-demo\webassembly.studio\main.js to main.js | ||
+ | |||
+ | Note: every time you copy and paste, don't forget to press "SAVE" button (on the right side of the web interface) | ||
+ | |||
+ | 5. once all files are update, hit "Build and Run" | ||
==See Also== | ==See Also== | ||
*[[WebAssembly]] | *[[WebAssembly]] | ||
[[Category:WebAssembly]] | [[Category:WebAssembly]] |
Revision as of 19:34, 21 September 2019
Instructions
Compiling the compiler
Get the sources:
git clone https://github.com/skalogryz/freepascal fpc-wasm
switch to correct branch:
cd fpc-wasm git checkout webasm
compile:
cd compiler
Using Lazarus
open ppcwasm.lpi
hit the "compile" button.
Using command-line
fpc -dnoopt -dwasm -Fiwasm -Fuwasm -Fusystems -S2 pp.pas
the compiler can be renamed
mv pp ppwasm
or, on windows:
mv pp.exe ppwasm.exe
Using the compiler
You need a system.pas unit. It can be found here:
You'll also need the wasm tools:
Extract the binaries and put them somewhere in your path.
wasm-demo
Wasm-demo is a Pascal WebAssembly demo project, ported Google's C WebAssembly example (https://codelabs.developers.google.com/codelabs/web-assembly-intro)
You follow these steps in order to get the demo project working:
1. Get the project sources: https://github.com/skalogryz/wasm-demo
Using in webassembly.studio
2. Run the wasm compiler against lyff.pas, but request the assembler file to be kept
pp -a lyff.pas
Webassembly.studio accepts the assembler file and would compile it on the server side.
3. open up https://webassembly.studio and select "Create empty Wat Project". The project will consist of:
- main.html
- main.js
- main.wat
All files of the project can be edited through the web interface.
4. Copy and paste the contents of the following files:
- (compiled) lyff.wat to main.wat.
- wasm-demo\webassembly.studio\main.html to main.html
- wasm-demo\webassembly.studio\main.js to main.js
Note: every time you copy and paste, don't forget to press "SAVE" button (on the right side of the web interface)
5. once all files are update, hit "Build and Run"