65 Commits

Author SHA1 Message Date
James Coon
2e48c20cca Quick 'fix' windows support 2015-04-26 00:05:09 -06:00
gamax92
5f294d1074 Mouse stuff
Also a configuration system
2015-04-25 21:56:28 -06:00
gamax92
d25b780d1f Bunch of updates
Have component stub generator also generate documentation
Add documentation to the components
Support components defining their own type
add return nil, "no such component" to more component functions
fix component.doc
Add argument checks to computer api, maybe implement computer.realTime?
Implement unicode isWide, charWidth, and wlen
clean up boot.lua a little
Implement readonly mode in eeprom, and implement crc32 checksum
Add more readonly checks to filesystem, implement filesystem.rename
makeDirectory returns false if the path exists
suffix keyboard and screen with _sdl, and check for SDL before loading
move sdl_to_lwjgl to the support folder
2015-04-25 18:41:03 -06:00
gamax92
0004498294 Copy is now a lot faster
Use the magic of updateTexture that didn't exist in the old binding.
2015-04-25 14:17:57 -06:00
gamax92
3ab368da8c Merge branch 'master' of https://github.com/gamax92/OCEmu 2015-04-25 11:20:04 -06:00
gamax92
f650873066 luasdl2 is too restricting
So lets switch to full sdl, via luaffi
Also, check that the component actually loaded

(This copy of sdl2-ffi has been slightly modified to work with luaffi,
it is otherwise exactly the same)
2015-04-25 11:19:24 -06:00
James Coon
e1a558843f Fix a bug with windows 2015-04-25 00:57:17 -06:00
gamax92
dfa9cd79bd Some more things
Implement component.filesystem.remove
Use cleanpath in all filesystem methods that take a path, and check that
the path doesn't start with "../" or is ".."
Only rerender screen portions when the existing data differs
Bubble up and use render:drawPoints instead of calling render:drawPoint
thousands of times
move machine_thread to machine.thread
support boolean yield (shutdown and reboot)
2015-04-22 23:34:49 -06:00
gamax92
7b5dadedbd Implement moar things!
createDirectory will now create parent paths
getDirectoryItems will ignore . and ..
added getLastModified, getSize, and getSaveDirectory
(getSaveDirectory points to $HOME/.ocemu or $APPDATA\.ocemu)
Add some basic argument checking to computer.beep
Add component type checking to component.eeprom, replace math.huge with
actual value, and do size checks
extend component.eeprom.makeReadonly stub
have component.filesystem use the address as a directory name if not
specified, and store them + tmpfs in the save directory
set the label to nil if using the address as the name
Add component type checking to component.filesystem, and implement a lot
of functions (or extend stubs)
Extend stubs in component.screen, implement
component.screen.getKeyboards()
Add a fake HDD to the default components list, since writing works
2015-04-22 22:00:24 -06:00
gamax92
d2374a6edd It had to be done
Good bye Love2D, you served us well, but couldn't serve us enough.
2015-04-22 18:19:50 -06:00
James Coon
a7d6a98739 Well, copy works faster now
Use the imagedata-ffi replacement
Also fix keyboard repeat by enabling it
2015-04-22 10:41:14 -06:00
James Coon
e6b93f176e push a working (cec) screen.copy 2015-04-22 08:36:10 -06:00
gamax92
d39f6478f1 push wip stuff 2015-04-22 07:51:12 -06:00
gamax92
e2355d6dad Lets upload the really bad emulator code! 2015-04-22 00:31:15 -06:00
James Coon
4a02fc5739 Initial commit 2015-04-22 00:28:41 -06:00