Skip to content

Commit

Permalink
Add wasm compilation capabilities
Browse files Browse the repository at this point in the history
  • Loading branch information
s-macke committed Jul 23, 2020
1 parent 2ebdac9 commit f0a22a4
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 5 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Expand Up @@ -59,3 +59,6 @@ fshistory

# filesystem
*.fs

# webassembly
*.wasm
10 changes: 5 additions & 5 deletions Makefile
Expand Up @@ -6,7 +6,7 @@ OBJS = main.o mz.o ram.o debugger.o cpu.o vga.o ports.o dos.o alloc.o keyb.o \
sdl.o screen.o rom.o fs.o bios.o fonts.o pic.o pit.o mouse.o \
clock.o fs4.o exit_strategy.o disk.o multiplex.o compare.o ems.o

all: fshistory fs1.fs fs2.fs fs3.fs fs4.fs
all: fshistory data/fs1.fs data/fs2.fs data/fs3.fs data/fs4.fs

fshistory: ${OBJS}
${CC} -o fshistory ${OBJS} ${LDFLAGS}
Expand All @@ -28,16 +28,16 @@ fshistory.wasm: ${OBJS} libc.o
--export=MouseMotion \
-o fshistory.wasm ${OBJS} libc.o

fs1.fs: data/fs1.fs.bz2
data/fs1.fs: data/fs1.fs.bz2
bzip2 -dk data/fs1.fs.bz2

fs2.fs: data/fs2.fs.bz2
data/fs2.fs: data/fs2.fs.bz2
bzip2 -dk data/fs2.fs.bz2

fs3.fs: data/fs3.fs.bz2
data/fs3.fs: data/fs3.fs.bz2
bzip2 -dk data/fs3.fs.bz2

fs4.fs: data/fs4.fs.bz2
data/fs4.fs: data/fs4.fs.bz2
bzip2 -dk data/fs4.fs.bz2

libc.o: src/wasm_libc_wrapper
Expand Down
4 changes: 4 additions & 0 deletions scripts/compile_fast.sh
@@ -0,0 +1,4 @@
gcc -Ofast -DFS4 -DUNSAFE_RAM -ofshistory src/*.c src/cpu/cpu.c src/devices/*.c src/disasm/*.c src/dos/*.c src/fs/*.c src/utils/*.c -lSDL2

#cat src/*.c src/cpu/*.h src/cpu/*.c src/devices/*.c src/disasm/*.c src/dos/*.c src/fs/*.c src/utils/*.c > single.c
#gcc -Ofast -DFS4 single.c -lSDL2
12 changes: 12 additions & 0 deletions scripts/compile_wasm.sh
@@ -0,0 +1,12 @@
#stop on error
set -e

#generate wasm file
make clean
rm -f fshistory.wasm
make fshistory.wasm CC=clang LDFLAGS="--target=wasm32" CFLAGS="-Os --target=wasm32 -DFS4 -Werror -DUNSAFE_RAM -Wimplicit-fallthrough"

wasm-gc fshistory.wasm
wasm-strip fshistory.wasm

wasm2wat fshistory.wasm | grep 'import\|export'

0 comments on commit f0a22a4

Please sign in to comment.