latest version of musashi engine includes floating point emulation (plus a few patches to add in missing opcodes needed by ack - see tags JFF & TBB) added a few missing linux syscalls in sim.c pascal now runs pretty well quick test with modula2 passes c gets the floating point numbers wrong, so more work needed here other languages untested plat/linux68k/emu/build.lua is probably not quite right - the softfloat directory is compiled in the wrong place
		
			
				
	
	
		
			58 lines
		
	
	
	
		
			969 B
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
	
		
			969 B
		
	
	
	
		
			Lua
		
	
	
	
	
	
| cprogram {
 | |
| 	name = "m68kmake",
 | |
| 	srcs = {
 | |
| 		"./musashi/m68kmake.c"
 | |
| 	}
 | |
| }
 | |
| 
 | |
| normalrule {
 | |
| 	name = "m68k_engine",
 | |
| 	ins = {
 | |
| 		"+m68kmake",
 | |
| 		"./musashi/m68k_in.c",
 | |
| 		"./musashi/m68kcpu.h",
 | |
| 		"./musashi/m68kmmu.h",
 | |
| 		"./m68kconf.h",
 | |
| 		"./musashi/m68kcpu.c",
 | |
| 		"./musashi/m68kfpu.c",
 | |
| 		"./musashi/m68kdasm.c",
 | |
| 		"./musashi/m68k.h",
 | |
| 		"./musashi/softfloat",
 | |
| 	},
 | |
| 	outleaves = {
 | |
| 		"m68kops.c",
 | |
| 		"m68kops.h",
 | |
| 		"m68kcpu.h",
 | |
| 		"m68kconf.h",
 | |
| 		"m68kcpu.c",
 | |
| 		"m68kdasm.c",
 | |
| 		"m68k.h",
 | |
| 	},
 | |
| 	commands = {
 | |
| 		"cp -R %{ins[2]} %{ins[3]} %{ins[4]} %{ins[5]} %{ins[6]} %{ins[7]} %{ins[8]} %{ins[9]} %{ins[10]} %{dir}",
 | |
| 		"cd %{dir} && %{ins[1]}"
 | |
| 	}
 | |
| }
 | |
| 
 | |
| clibrary {
 | |
| 	name = "headers",
 | |
| 	srcs = {},
 | |
| 	hdrs = {
 | |
| 		matching(filenamesof("+m68k_engine"), "%.h$"),
 | |
| 	}
 | |
| }
 | |
| 
 | |
| cprogram {
 | |
| 	name = "emu68k",
 | |
| 	vars = {
 | |
| 		["+cflags"] = {"-DM68K_COMPILE_FOR_MAME=0"}
 | |
| 	},
 | |
| 	srcs = {
 | |
| 		"./sim.c",
 | |
| 		matching(filenamesof("+m68k_engine"), "%.c$"),
 | |
| 		"./musashi/softfloat/softfloat.c",
 | |
| 	},
 | |
| 	deps = {
 | |
| 		"+headers",
 | |
| 	}
 | |
| }
 |