opening TIC-80 sources
|
@ -0,0 +1,79 @@
|
|||
*.sdf
|
||||
*.ipch
|
||||
*.opendb
|
||||
*.suo
|
||||
build/uwp/tic/Debug/
|
||||
build/uwp/tic/Release/
|
||||
build/uwp/tic/x64/
|
||||
build/uwp/tic/ARM/
|
||||
build/uwp/tic/AppPackages/
|
||||
build/uwp/tic/BundleArtifacts/
|
||||
build/android/gen/
|
||||
build/android/libs/
|
||||
build/android/obj/
|
||||
build/itch.io/tic.js
|
||||
build/itch.io/console.zip
|
||||
build/html/tic.js
|
||||
build/uwp/code8/ARM/
|
||||
build/uwp/code8/x64/
|
||||
build/uwp/code8/code8.VC.db
|
||||
embed.html
|
||||
build/uwp/code8/Release/
|
||||
build/uwp/code8/AppPackages/code8/code8_0.0.3.0_Test/
|
||||
build/uwp/code8/BundleArtifacts/
|
||||
build/uwp/code8/AppPackages/
|
||||
build/uwp/code8/_pkginfo.txt
|
||||
build/uwp/tic/tic.VC.db
|
||||
build/uwp/tic/_pkginfo.txt
|
||||
tests/history.exe
|
||||
build/uwp/lua/x64/
|
||||
build/uwp/lua/ARM/
|
||||
build/uwp/lua/Release/
|
||||
build/uwp/lua/Debug/
|
||||
build/windows/tic/Release/
|
||||
build/windows/tic/Debug/
|
||||
build/windows/tic/x64/
|
||||
build/windows/tic/Win32/
|
||||
build/windows/tic/tic.VC.db
|
||||
build/windows/zlib/Release/
|
||||
build/windows/zlib/Debug/
|
||||
build/windows/zlib/x64/
|
||||
build/windows/lua/Release/
|
||||
build/windows/lua/Debug/
|
||||
build/windows/lua/x64/
|
||||
lib/windows/res.aps
|
||||
lib/windows/tic.aps
|
||||
.DS_Store
|
||||
lib/macos/.DS_Store
|
||||
build/macosx/tic.icns
|
||||
build/macosx/tic.app/
|
||||
build/macosx/tic.dmg
|
||||
tools/bundler/assets/
|
||||
tools/bundler/bin/
|
||||
tools/bin2txt/*.exe
|
||||
tools/bin2txt/bin2txt
|
||||
build/windows/gif/Debug/
|
||||
build/windows/gif/Release/
|
||||
tests/*.exe
|
||||
tests/test.gif
|
||||
tests/test_data.gif
|
||||
build/uwp/gif/x64/
|
||||
build/uwp/gif/Release/
|
||||
build/uwp/gif/ARM/
|
||||
build/uwp/gif/Debug/
|
||||
tools/sdl2test/test.exe
|
||||
build/windows/tic80/Release/
|
||||
build/windows/tic80/Debug/
|
||||
build/windows/gif/x64/
|
||||
build/windows/tic80/x64/
|
||||
build/windows/example/Release/
|
||||
build/windows/example/Debug/
|
||||
build/uwp/tic80/Release/
|
||||
build/uwp/tic80/Debug/
|
||||
build/windows/example/x64/
|
||||
build/windows/test/x64/
|
||||
build/windows/test/Debug/
|
||||
build/android/bin/
|
||||
build/windows/test/Release/
|
||||
build/uwp/tic80/x64/
|
||||
build/uwp/tic80/ARM/
|
4
LICENSE
|
@ -1,6 +1,6 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2017 Vadim Grigoruk @nesbox
|
||||
// Copyright (c) 2017 Vadim Grigoruk @nesbox // grigoruk@gmail.com
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
@ -18,4 +18,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
SOFTWARE.
|
|
@ -0,0 +1,3 @@
|
|||
*
|
||||
!.gitignore
|
||||
!assets/
|
|
@ -0,0 +1,3 @@
|
|||
*
|
||||
!.gitignore
|
||||
!*.dat
|
|
@ -0,0 +1 @@
|
|||
0x78, 0xda, 0xed, 0x53, 0x4d, 0x6f, 0xd4, 0x30, 0x10, 0x5d, 0x10, 0x20, 0xc5, 0x17, 0xfe, 0xc2, 0xb4, 0x15, 0x28, 0xd1, 0x26, 0xd9, 0x7c, 0x6c, 0xb7, 0xb4, 0xd2, 0xc2, 0x01, 0xa8, 0xd4, 0x1b, 0x42, 0x70, 0x42, 0x48, 0xb8, 0x8e, 0xb7, 0x35, 0xcd, 0x26, 0x96, 0xed, 0x6d, 0x13, 0xa1, 0xfe, 0x15, 0xd4, 0x13, 0x87, 0x5e, 0xf8, 0x6b, 0x9c, 0x7b, 0x81, 0xb1, 0xb3, 0xd9, 0x65, 0x2b, 0x3e, 0xce, 0x48, 0x78, 0xb5, 0xf6, 0xcc, 0x7b, 0x33, 0x63, 0xfb, 0x79, 0x72, 0xe7, 0xd9, 0xdd, 0xc1, 0xdf, 0x06, 0x19, 0x0c, 0xae, 0xc8, 0xc3, 0x6f, 0x57, 0xd7, 0x76, 0x7c, 0xbd, 0xfe, 0x72, 0xf3, 0xdd, 0xae, 0x1f, 0x9d, 0x9b, 0xe3, 0x70, 0xfc, 0x83, 0x0f, 0xbf, 0xe5, 0x07, 0xff, 0xc7, 0x3f, 0x3d, 0x3e, 0x4f, 0x6e, 0xfe, 0xf4, 0xbf, 0xbf, 0x7f, 0x6f, 0x10, 0x45, 0x60, 0x84, 0x29, 0xf9, 0x01, 0xc0, 0x4c, 0x28, 0x4e, 0xd0, 0xa7, 0x0b, 0x73, 0x5a, 0xab, 0x03, 0x38, 0x6e, 0xe1, 0x50, 0x94, 0x42, 0xca, 0xda, 0xa2, 0x05, 0xd7, 0x0c, 0x83, 0x5c, 0x14, 0x3a, 0x73, 0x07, 0x6a, 0xa6, 0x84, 0x34, 0x07, 0x50, 0x2e, 0xa8, 0x75, 0x45, 0x25, 0x17, 0xe8, 0xc1, 0x09, 0x9d, 0x73, 0x49, 0x0b, 0x42, 0xcc, 0x34, 0x21, 0xcd, 0x34, 0xcd, 0x12, 0xd2, 0xba, 0x99, 0x48, 0xaa, 0x8c, 0x60, 0x25, 0x87, 0x29, 0x7c, 0xba, 0x44, 0xaf, 0xe4, 0xc6, 0xd9, 0xe9, 0x38, 0xdc, 0x0f, 0x27, 0x61, 0x1e, 0xa6, 0x49, 0x98, 0xee, 0x5e, 0x12, 0x32, 0x5b, 0x54, 0xcc, 0x88, 0xba, 0x02, 0x5a, 0x14, 0xaf, 0x96, 0x49, 0x7e, 0x13, 0xb6, 0x01, 0x81, 0xb2, 0x66, 0xb4, 0x04, 0xd9, 0x95, 0xf0, 0x64, 0xdc, 0xa0, 0xd5, 0x58, 0xa3, 0x45, 0xa3, 0xb5, 0x46, 0x61, 0xa1, 0x39, 0x35, 0xa7, 0xb1, 0xa2, 0x55, 0x51, 0xcf, 0xfd, 0x28, 0x4d, 0x62, 0x2c, 0x8c, 0x53, 0x30, 0x4a, 0x77, 0x71, 0x71, 0x51, 0xed, 0x2f, 0xa3, 0xa2, 0x2c, 0x18, 0xed, 0xba, 0x00, 0x83, 0x3c, 0x1a, 0x86, 0x1e, 0x97, 0x3c, 0x16, 0x95, 0xe6, 0xca, 0xf8, 0xfd, 0x05, 0x42, 0x19, 0x10, 0x5e, 0x15, 0x3f, 0x1d, 0x14, 0xe1, 0xd5, 0x41, 0x03, 0x8f, 0x78, 0x51, 0x24, 0x95, 0xa8, 0x8c, 0xbf, 0xbd, 0xb3, 0x1d, 0xc7, 0x3b, 0x7d, 0x5e, 0x40, 0xbc, 0xee, 0xfc, 0x1a, 0xa5, 0xe9, 0xcd, 0x6c, 0x6d, 0x33, 0x6b, 0xce, 0x6a, 0x05, 0x67, 0xa1, 0x44, 0x3d, 0x41, 0x52, 0xa1, 0xf4, 0x6a, 0xd7, 0x00, 0x8a, 0x9a, 0x78, 0xcb, 0xa3, 0xd9, 0x79, 0x08, 0x29, 0xfa, 0xba, 0xbf, 0x48, 0x59, 0x9f, 0xf8, 0x16, 0x1e, 0x41, 0x86, 0x57, 0xb5, 0x4c, 0x86, 0x94, 0x1e, 0x65, 0xf6, 0xc6, 0x1e, 0xb3, 0x49, 0x4e, 0xf2, 0x77, 0x2e, 0x9a, 0x71, 0x51, 0xda, 0xf0, 0xd1, 0x5e, 0x12, 0xbc, 0x27, 0x1e, 0x74, 0x52, 0xda, 0x79, 0x08, 0x56, 0x44, 0xb7, 0x53, 0xeb, 0xa0, 0xb6, 0x83, 0x5a, 0x82, 0x98, 0xe2, 0x0c, 0x75, 0x88, 0x9b, 0x48, 0x67, 0x21, 0x32, 0x76, 0xd1, 0xf8, 0x63, 0x81, 0x25, 0xa3, 0x48, 0x61, 0x6f, 0x9c, 0x73, 0xa8, 0xcb, 0x02, 0xea, 0x8a, 0x6b, 0xc4, 0xc4, 0xcc, 0x9d, 0xf5, 0x29, 0xe4, 0x49, 0x02, 0xe6, 0x94, 0x57, 0x88, 0x2d, 0x55, 0xed, 0x82, 0xd7, 0xaa, 0x9e, 0xd9, 0x43, 0xa3, 0xae, 0x1e, 0x0a, 0xd8, 0x2d, 0x9b, 0x22, 0xbf, 0x39, 0x7a, 0xee, 0x63, 0x08, 0xb1, 0x35, 0x8f, 0x4d, 0xe5, 0x27, 0x81, 0x2b, 0x08, 0xed, 0xb4, 0x8d, 0x52, 0xb0, 0xb1, 0x3d, 0x93, 0xae, 0x99, 0xe1, 0x26, 0x93, 0x2d, 0x99, 0x66, 0xda, 0xdc, 0xca, 0xc9, 0xd7, 0x4c, 0x97, 0xe3, 0x11, 0xf7, 0x90, 0x17, 0x54, 0x49, 0xd0, 0x92, 0x32, 0x4e, 0x3c, 0xd7, 0x6d, 0xf0, 0x08, 0xb2, 0x31, 0x4a, 0xea, 0x3a, 0x0e, 0x9d, 0x34, 0x9f, 0x74, 0x91, 0x8a, 0x6b, 0x6e, 0x56, 0xf5, 0xc6, 0xcb, 0x7a, 0xf6, 0xbe, 0x36, 0xcf, 0x7e, 0x02, 0x68, 0xb6, 0xbd, 0xe9, 0xf6, 0x26, 0xde, 0xed, 0x16, 0xf7, 0x6e, 0x61, 0x39, 0xb6, 0x6e, 0x9e, 0x58, 0x78, 0xe3, 0x6b, 0xc8, 0xd2, 0x15, 0x4e, 0x3c, 0x56, 0x6a, 0xff, 0x89, 0x7d, 0x81, 0x28, 0x7a, 0x2b, 0x0b, 0x8a, 0x5f, 0xd5, 0x63, 0x78, 0xa1, 0xe8, 0x05, 0xf4, 0xd2, 0x6a, 0x2c, 0xba, 0xd1, 0xa2, 0x2e, 0x96, 0x2d, 0x94, 0xae, 0x15, 0x52, 0x52, 0x34, 0x76, 0xef, 0x70, 0xcf, 0xa9, 0xbb, 0xec, 0xdc, 0x2d, 0x38, 0x3c, 0x7a, 0xfd, 0x12, 0xb6, 0xb6, 0xc3, 0xfd, 0x71, 0x38, 0x19, 0x23, 0x65, 0xa6, 0x66, 0x98, 0xba, 0x37, 0xf9, 0x01, 0xf1, 0x25, 0x58, 0xdb,
|
|
@ -0,0 +1 @@
|
|||
0x78, 0xda, 0xed, 0x56, 0x3b, 0x6f, 0x1b, 0x31, 0x0c, 0x4e, 0x0b, 0x74, 0xb9, 0xa9, 0x3f, 0x41, 0xcd, 0xe4, 0x00, 0xc9, 0xd0, 0x14, 0x01, 0x0a, 0x03, 0x9d, 0x3a, 0x75, 0xe9, 0x94, 0xdb, 0x0a, 0x08, 0x17, 0x5b, 0x76, 0xdc, 0x9e, 0xef, 0xdc, 0x7b, 0x34, 0x6e, 0xff, 0xf7, 0xcd, 0xac, 0xde, 0x22, 0x25, 0x9d, 0x1d, 0x74, 0x6d, 0x24, 0xeb, 0x64, 0x89, 0xa2, 0xf4, 0x91, 0x14, 0x49, 0xbd, 0xbe, 0x78, 0x7b, 0xf1, 0x52, 0x5e, 0xca, 0x4b, 0xf9, 0x7f, 0x4b, 0x79, 0xae, 0x4c, 0x3c, 0x6d, 0x6e, 0x5e, 0x77, 0xa0, 0xdb, 0x3c, 0xbb, 0xa1, 0x03, 0x00, 0xc7, 0xbd, 0xe7, 0x51, 0xfb, 0xe8, 0xb9, 0x52, 0xf5, 0x7a, 0x62, 0x52, 0xbd, 0x3b, 0xc7, 0xcc, 0x70, 0xae, 0x78, 0xf5, 0x5a, 0x3f, 0x32, 0x44, 0xe0, 0xf6, 0x0c, 0xd9, 0x4b, 0x1a, 0x4c, 0x8a, 0x22, 0xf7, 0x03, 0x7b, 0x80, 0xc3, 0x3c, 0x0b, 0x11, 0x02, 0xdd, 0x35, 0x03, 0xc6, 0x93, 0xc3, 0x18, 0xe8, 0x7a, 0x84, 0x4f, 0x61, 0x97, 0xb2, 0xa9, 0x8f, 0x19, 0x67, 0x74, 0x28, 0xe5, 0xe2, 0x44, 0x87, 0xe7, 0x74, 0x1e, 0x61, 0xd6, 0xfc, 0xcf, 0x29, 0xf4, 0x8c, 0x00, 0x98, 0x76, 0x96, 0x6a, 0xf0, 0x4a, 0xcd, 0x29, 0xbd, 0xf3, 0x09, 0xcc, 0xc8, 0xd8, 0xc2, 0xd9, 0x47, 0x61, 0x9f, 0xb9, 0x07, 0x5e, 0xde, 0xe8, 0x0c, 0x87, 0x15, 0xd3, 0x27, 0x6b, 0x5f, 0xb2, 0x3f, 0xd8, 0x35, 0xda, 0x6e, 0xfa, 0x7e, 0x04, 0x5d, 0x9b, 0x7d, 0x34, 0x37, 0x80, 0x17, 0x2c, 0xe5, 0xb7, 0x14, 0x2f, 0x4b, 0xa0, 0x1b, 0x1c, 0x11, 0xbe, 0x0c, 0x7e, 0xc7, 0x13, 0xf3, 0x47, 0x73, 0x61, 0x1f, 0x6c, 0x8a, 0xd8, 0xa6, 0xcf, 0x1d, 0x03, 0x9a, 0x30, 0xbf, 0x12, 0x7d, 0xb2, 0xb6, 0xcf, 0xdd, 0x01, 0xc2, 0xe7, 0xf6, 0x89, 0xec, 0x4b, 0xe4, 0x47, 0xfe, 0xeb, 0xe5, 0x93, 0x0e, 0x64, 0x1a, 0xf6, 0x45, 0x2a, 0xbf, 0xb1, 0x45, 0xa8, 0x16, 0x0f, 0xa6, 0x93, 0xff, 0x16, 0x38, 0x4f, 0xd4, 0x0e, 0x76, 0xde, 0x76, 0xc6, 0x7f, 0x71, 0x05, 0x47, 0x0e, 0xf6, 0xe7, 0x6e, 0xad, 0xb7, 0x35, 0x3f, 0x49, 0xe7, 0xf1, 0xfd, 0xd6, 0xb1, 0x88, 0x53, 0x5b, 0x96, 0xf4, 0xdc, 0x8c, 0x7c, 0x25, 0x40, 0x3e, 0x06, 0x3a, 0xf9, 0x32, 0x44, 0x7c, 0x7f, 0xfc, 0xcd, 0xb6, 0x53, 0xba, 0xd7, 0xd5, 0xea, 0x8f, 0xcf, 0x34, 0x8b, 0x4f, 0xf3, 0xab, 0x2a, 0xc7, 0x30, 0xb9, 0xc8, 0x69, 0x5a, 0xa0, 0xcb, 0x66, 0x62, 0x9f, 0x3a, 0x8b, 0xd0, 0x89, 0xfd, 0xb0, 0x6c, 0xc1, 0x3f, 0x22, 0xfb, 0x45, 0x61, 0x1e, 0x1c, 0x5e, 0x54, 0x27, 0xc0, 0xfa, 0x8f, 0xf8, 0x91, 0xbf, 0xe0, 0xf3, 0xc1, 0xdd, 0x29, 0x48, 0xfd, 0x73, 0x4e, 0x09, 0xb1, 0x7d, 0x72, 0xf8, 0x73, 0xf3, 0x28, 0x7f, 0x60, 0x7d, 0x69, 0xfd, 0x01, 0x18, 0x7d, 0x7a, 0xfd, 0x99, 0x8c, 0xe2, 0x79, 0x2c, 0x5e, 0xb0, 0xde, 0x99, 0xd0, 0x23, 0x7c, 0x3e, 0x5e, 0x45, 0xb1, 0x15, 0x50, 0xfc, 0x23, 0xb9, 0xc5, 0x37, 0x48, 0xd3, 0x4b, 0xfa, 0xc7, 0xe9, 0x2c, 0x6d, 0x24, 0x3e, 0x67, 0x72, 0xce, 0x99, 0x02, 0x98, 0x1f, 0xe7, 0xbb, 0x79, 0x06, 0xb3, 0x18, 0x20, 0xf2, 0x9f, 0x34, 0xf6, 0x12, 0xff, 0x27, 0x71, 0x08, 0x1f, 0x17, 0xf9, 0x4f, 0xec, 0x7b, 0x71, 0x9c, 0xf3, 0xf7, 0x28, 0x8a, 0x4f, 0x2e, 0xfe, 0xe7, 0xf4, 0x4c, 0xf9, 0x79, 0x12, 0xc7, 0x31, 0xa6, 0x8c, 0x9f, 0x90, 0x38, 0x99, 0xd8, 0x1e, 0x42, 0x7a, 0xf5, 0x3d, 0x6d, 0x34, 0x1e, 0x85, 0xb8, 0xe6, 0x7c, 0xa4, 0x3c, 0x15, 0x00, 0x22, 0x01, 0xc0, 0xbe, 0x9d, 0x70, 0x0c, 0x88, 0xf2, 0x43, 0x1e, 0x7f, 0x92, 0xe7, 0xa3, 0xfc, 0x96, 0xe3, 0x47, 0x7a, 0x39, 0xa9, 0x3f, 0xb4, 0x62, 0x22, 0x71, 0x36, 0x93, 0xc1, 0xec, 0x9e, 0xe4, 0x8d, 0x87, 0xd4, 0x96, 0xd8, 0x6f, 0x8a, 0xf0, 0xa5, 0x7e, 0xce, 0xe7, 0xe8, 0x65, 0xf4, 0x7e, 0x24, 0x71, 0xc0, 0xc6, 0x80, 0xf8, 0xcd, 0x1a, 0xbc, 0x9e, 0xdb, 0x88, 0x3d, 0x9d, 0xdf, 0x1f, 0xe2, 0xfc, 0x9c, 0x79, 0xff, 0xe0, 0xe4, 0x07, 0x19, 0x7f, 0x9b, 0x4d, 0x00, 0x9c, 0xbe, 0x3f, 0x1d, 0x4f, 0xe6, 0x6d, 0xe8, 0xde, 0xbd, 0xff, 0x52, 0xde, 0x2c, 0x5e, 0x5d, 0xdc, 0xdc, 0xb0, 0x61, 0x37, 0xd4, 0x62, 0xc9, 0xd8, 0xa6, 0x6d, 0x86, 0x42, 0x8e, 0xab, 0x71, 0x78, 0x6c, 0xbb, 0x25, 0xfb, 0x2a, 0xfa, 0x87, 0xf6, 0xa8, 0x66, 0xd6, 0xa2, 0x5f, 0xc9, 0x05, 0x4c, 0x1c, 0xab, 0xfd, 0xa1, 0x16, 0xec, 0xb1, 0x7d, 0x62, 0x43, 0xcb, 0x3a, 0xd1, 0xac, 0x45, 0xa7, 0xf9, 0xd8, 0xa6, 0x6b, 0xf7, 0x6c, 0x78, 0x14, 0x72, 0xd4, 0x89, 0x6d, 0xd7, 0x8e, 0xcd, 0x9a, 0xf5, 0x87, 0x6e, 0x37, 0x88, 0x5e, 0xed, 0xd0, 0xaf, 0xba, 0xdd, 0x61, 0x58, 0xb2, 0x7a, 0xac, 0xd4, 0x70, 0xd7, 0x1c, 0x46, 0x39, 0x62, 0xdb, 0x6a, 0x2f, 0x0e, 0xd5, 0xba, 0x28, 0x56, 0x75, 0xbf, 0x78, 0x7f, 0x7b, 0x55, 0xd4, 0xed, 0xaa, 0xaa, 0xd9, 0x20, 0x8e, 0xc3, 0xa7, 0xcb, 0x7b, 0xb9, 0xdb, 0xcf, 0x71, 0xb7, 0xfa, 0xc1, 0x1e, 0xba, 0xf6, 0xa9, 0x91, 0x3b, 0x1f, 0xbf, 0x35, 0xdf, 0xc7, 0xfd, 0xa1, 0x67, 0xed, 0x2f, 0x79, 0xae, 0x3a, 0xad, 0xae, 0xfe, 0xfc, 0x66, 0xeb, 0x76, 0xfb, 0xee, 0xb2, 0x28, 0x14, 0x8e, 0x85, 0x62, 0xbd, 0xfe, 0x28, 0xeb, 0xdd, 0x15, 0x99, 0xf8, 0x70, 0x7b, 0x7d, 0xa7, 0xe7, 0x87, 0x6e, 0x14, 0x94, 0x74, 0x27, 0x7f, 0x9a, 0xb8, 0xa9, 0xea, 0x5e, 0x5c, 0x4b, 0x14, 0xc5, 0x66, 0x6c, 0x56, 0xc3, 0xae, 0x6d, 0xd8, 0xfd, 0x97, 0xcf, 0x8b, 0x2b, 0x29, 0x66, 0xf1, 0x17, 0x87, 0x9b, 0xcb, 0xaa,
|
|
@ -0,0 +1 @@
|
|||
0x78, 0xda, 0x75, 0x55, 0xdf, 0x6f, 0xdb, 0x36, 0x10, 0x7e, 0xce, 0x80, 0xfd, 0x0f, 0x9c, 0x8a, 0xb5, 0x31, 0x10, 0xda, 0x72, 0x96, 0x6d, 0x9e, 0x64, 0x19, 0xdd, 0xd2, 0x3c, 0xe4, 0xa1, 0xd8, 0x80, 0x75, 0xc0, 0xf6, 0x48, 0x93, 0x27, 0x9b, 0x0d, 0x45, 0x72, 0x24, 0x25, 0xdb, 0x35, 0xfc, 0xbf, 0xef, 0x48, 0xca, 0xad, 0xbb, 0xa6, 0x10, 0x0c, 0x92, 0xf7, 0x8b, 0xdf, 0xdd, 0x7d, 0x47, 0x2f, 0xbf, 0x7b, 0xf3, 0xfb, 0xfd, 0xbb, 0x7f, 0xfe, 0x78, 0x20, 0xdb, 0xd0, 0xa9, 0xd5, 0xb7, 0xdf, 0x2c, 0xe3, 0x4a, 0x14, 0xd3, 0x9b, 0xa6, 0x00, 0x5d, 0x24, 0x09, 0x30, 0x81, 0xeb, 0xd5, 0xb2, 0x83, 0xc0, 0x08, 0xdf, 0x32, 0xe7, 0x21, 0x34, 0x45, 0x1f, 0x5a, 0xba, 0x28, 0x3e, 0x29, 0xb6, 0x21, 0x58, 0x0a, 0xff, 0xf6, 0x72, 0x68, 0x8a, 0xbf, 0xe9, 0x5f, 0xbf, 0xd2, 0x7b, 0xd3, 0x59, 0x16, 0xe4, 0x5a, 0x41, 0x41, 0xb8, 0xd1, 0x01, 0x34, 0x7a, 0x3d, 0x3e, 0x34, 0x20, 0x36, 0x70, 0xe1, 0xa7, 0x59, 0x07, 0x4d, 0x31, 0x48, 0xd8, 0x59, 0xe3, 0xc2, 0x85, 0xe9, 0x4e, 0x8a, 0xb0, 0x6d, 0x04, 0x0c, 0x92, 0x03, 0x4d, 0x87, 0x1b, 0x22, 0xb5, 0x0c, 0x92, 0x29, 0xea, 0x39, 0x53, 0xd0, 0xcc, 0x63, 0x98, 0x18, 0x28, 0xc8, 0xa0, 0x60, 0xf5, 0xee, 0xf1, 0x9e, 0x2e, 0x4a, 0x12, 0xa4, 0x3e, 0x60, 0x94, 0xce, 0xf6, 0x01, 0xdc, 0x72, 0x96, 0x75, 0xd9, 0xce, 0x87, 0x83, 0x02, 0x12, 0x0e, 0x16, 0x6f, 0x0c, 0xb0, 0x0f, 0x33, 0xee, 0x7d, 0x82, 0x72, 0x35, 0xed, 0x8c, 0x60, 0xea, 0x28, 0xa4, 0xb7, 0x8a, 0x1d, 0x2a, 0x6d, 0x34, 0xd4, 0xd6, 0x78, 0xbc, 0xcd, 0xe8, 0xaa, 0x95, 0x7b, 0x10, 0xf5, 0x07, 0x2a, 0xb5, 0x80, 0x7d, 0x35, 0xaf, 0x2d, 0x13, 0x42, 0xea, 0x0d, 0x0d, 0xc6, 0x56, 0xf3, 0xb2, 0xb4, 0xfb, 0x5a, 0x41, 0x1b, 0xaa, 0xb2, 0x8e, 0x82, 0xb2, 0x4e, 0x58, 0xa3, 0xe2, 0xfb, 0x7a, 0x0b, 0x72, 0xb3, 0x0d, 0x79, 0x6f, 0x06, 0x70, 0xad, 0x32, 0xbb, 0x8a, 0xf5, 0xc1, 0xd4, 0x6b, 0xc6, 0x9f, 0x36, 0xce, 0xf4, 0x5a, 0x50, 0x6e, 0x94, 0x71, 0xd5, 0x8b, 0xb2, 0x2c, 0xbf, 0x94, 0xba, 0xcd, 0x9a, 0x5d, 0x97, 0x37, 0xf1, 0x9b, 0xde, 0x4d, 0x4e, 0x19, 0x26, 0x1d, 0x6b, 0x74, 0xfc, 0x88, 0xd0, 0x81, 0xc2, 0x52, 0x0f, 0xf0, 0x4c, 0xd8, 0x16, 0xe2, 0x57, 0x77, 0xcc, 0x6d, 0xa4, 0xce, 0x77, 0x8f, 0xf8, 0xab, 0x5b, 0xbb, 0x27, 0xf3, 0x9f, 0x10, 0xfe, 0xda, 0x38, 0x01, 0xae, 0x9a, 0xe3, 0xd9, 0x1b, 0x25, 0x05, 0x79, 0xb1, 0x58, 0x2c, 0xc6, 0x3c, 0x7e, 0x4c, 0x09, 0xae, 0xcd, 0x9e, 0xfa, 0x2d, 0x13, 0x08, 0xbf, 0x24, 0x77, 0x68, 0xb7, 0xc0, 0x5f, 0x49, 0x2e, 0xe1, 0xdd, 0x4e, 0x6e, 0x4a, 0x82, 0xd1, 0xc8, 0x6d, 0xf9, 0x85, 0x6e, 0xfe, 0xcb, 0xa4, 0xa6, 0x3b, 0x58, 0x3f, 0xc9, 0x40, 0x99, 0x96, 0x1d, 0x8b, 0xa8, 0x69, 0x6c, 0x7d, 0x95, 0x8f, 0x80, 0xa5, 0x7b, 0xc6, 0x42, 0xf4, 0x2e, 0x6d, 0xaa, 0xe9, 0x9d, 0xaf, 0xbf, 0xee, 0xf8, 0xbc, 0xc3, 0xe9, 0xf5, 0x13, 0x1c, 0x5a, 0x87, 0xb6, 0x9e, 0x7c, 0x32, 0x3e, 0xb6, 0xce, 0x74, 0xc7, 0xd8, 0x29, 0xfa, 0x43, 0x4a, 0xcd, 0x58, 0xc6, 0x65, 0x38, 0x54, 0xe5, 0x29, 0x98, 0x63, 0xee, 0xe0, 0x59, 0x34, 0x3f, 0x9d, 0xa6, 0x5c, 0x19, 0x0f, 0xc7, 0x8b, 0x1e, 0x61, 0x0f, 0x59, 0xa8, 0x5c, 0x6c, 0x6c, 0xdd, 0x62, 0x23, 0xa8, 0x97, 0x1f, 0xa0, 0xba, 0xc5, 0x82, 0xe4, 0xe3, 0x2e, 0xf7, 0xfc, 0xe7, 0xb2, 0x1c, 0x9d, 0xab, 0xd6, 0xf0, 0xde, 0xdf, 0x8c, 0x87, 0x6d, 0xe4, 0xc1, 0x65, 0xbc, 0x48, 0x44, 0x2a, 0x80, 0x9b, 0x11, 0x79, 0xe2, 0x1e, 0xef, 0x9d, 0x47, 0x03, 0x6b, 0x24, 0x76, 0xda, 0x9d, 0x22, 0x79, 0x67, 0x89, 0xbd, 0x71, 0x22, 0x67, 0xe3, 0x48, 0x2e, 0xd7, 0x46, 0x1c, 0x48, 0x12, 0x37, 0xc5, 0xd8, 0xe0, 0xb2, 0x26, 0xe7, 0xf6, 0x96, 0xf5, 0x79, 0x3e, 0x84, 0x1c, 0x12, 0xcb, 0x97, 0x9c, 0xe9, 0x81, 0xf9, 0xff, 0xb9, 0x60, 0xaf, 0x12, 0x2d, 0xc8, 0x99, 0xfd, 0x64, 0xad, 0x0c, 0x7f, 0xaa, 0x0b, 0x22, 0x45, 0x53, 0x64, 0x97, 0x82, 0x18, 0x9d, 0x58, 0xb7, 0x0f, 0x1d, 0xe8, 0x1e, 0x1f, 0x87, 0x01, 0x09, 0x38, 0xb5, 0x2e, 0xad, 0x6f, 0xa0, 0x65, 0xbd, 0x0a, 0xd7, 0x93, 0x68, 0xd6, 0x99, 0xde, 0x03, 0x12, 0x45, 0xc7, 0x11, 0xd6, 0xb8, 0x99, 0xa6, 0xfc, 0x51, 0xb9, 0x5a, 0xce, 0x72, 0xb4, 0x34, 0xfd, 0xb3, 0x8c, 0x6a, 0xc4, 0x97, 0xee, 0x42, 0xe0, 0x34, 0x31, 0x1c, 0x9f, 0x01, 0xc5, 0xbc, 0x47, 0x88, 0xe9, 0x94, 0xc1, 0x47, 0xab, 0x4b, 0xf1, 0x79, 0x0c, 0xb2, 0x1a, 0xa7, 0xdb, 0x32, 0x7d, 0x36, 0x48, 0xb5, 0x2e, 0x56, 0x2f, 0x83, 0xc4, 0xee, 0x63, 0xe9, 0x50, 0x35, 0x5a, 0xd9, 0xd5, 0x9f, 0xa0, 0x80, 0x07, 0xc2, 0x48, 0x2b, 0xe3, 0x6b, 0x60, 0x08, 0x5e, 0x1b, 0x97, 0xb0, 0x85, 0x8b, 0x77, 0xc3, 0x7e, 0xb4, 0x5f, 0x4a, 0x8d, 0xb2, 0xf1, 0xd9, 0x88, 0x3e, 0xb9, 0x30, 0xbd, 0x45, 0x22, 0x08, 0x9a, 0x94, 0x31, 0xb5, 0xb4, 0x59, 0x9d, 0x1d, 0xcf, 0xe9, 0x7d, 0x96, 0xa7, 0xe7, 0x4e, 0xda, 0x70, 0xf9, 0x00, 0xbd, 0x67, 0x58, 0x8e, 0x24, 0xcd, 0x59, 0x0c, 0xcc, 0x91, 0xb7, 0x46, 0xf4, 0x08, 0xac, 0x21, 0xc7, 0x5c, 0xad, 0x8a, 0x08, 0x2c, 0x60, 0x17, 0xeb, 0xbd, 0x81, 0xf0, 0xa0, 0x20, 0x6e, 0x7f, 0x3b, 0x3c, 0x8a, 0xeb, 0x57, 0xd9, 0xe0, 0xd5, 0xe4, 0x54, 0x5f, 0x5d, 0x65, 0x8e, 0xa4, 0x58, 0x9f, 0x5f, 0xc7, 0xfc, 0x41, 0xf3, 0xaf, 0x5c, 0x4a, 0xbc, 0xe3, 0x28, 0x95, 0x7c, 0xfa, 0xde, 0xc7, 0x24, 0x2e, 0xfc, 0x97, 0xb3, 0x48, 0xaf, 0xcc, 0xb7, 0xfc, 0xe7, 0xf0, 0x1f, 0xca, 0x6f, 0x0e, 0x97,
|
|
@ -0,0 +1 @@
|
|||
0x78, 0xda, 0x63, 0x5c, 0xc0, 0xc4, 0x40, 0x08, 0xfc, 0xfb, 0x0f, 0x04, 0x4a, 0x4a, 0x4a, 0xfd, 0x1d, 0x1d, 0x1d, 0xfd, 0x20, 0x1a, 0xc8, 0xed, 0xff, 0xff, 0x01, 0x8e, 0xff, 0xff, 0x7f, 0xff, 0x4e, 0x49, 0xe9, 0xff, 0xbb, 0x8e, 0x8e, 0x0f, 0xef, 0x94, 0x9a, 0x3e, 0xbc, 0xfb, 0xdf, 0xff, 0xe1, 0xff, 0x87, 0xfe, 0x0f, 0x1f, 0x60, 0x18, 0xbb, 0xfe, 0xff, 0x78, 0xf5, 0xff, 0x47, 0xd2, 0xcf, 0x30, 0x0a, 0x06, 0x14, 0x80, 0xe3, 0x0a, 0x14, 0x77, 0x60, 0xf8, 0x03, 0xcc, 0xd6, 0x07, 0xc6, 0xe3, 0x7f, 0x86, 0x0f, 0xff, 0x81, 0x71, 0xfb, 0xef, 0x7f, 0x3f, 0xc3, 0x7f, 0x60, 0xdc, 0xbd, 0xef, 0x07, 0xc6, 0x5f, 0x07, 0x14, 0x83, 0xe2, 0x93, 0xe1, 0xc3, 0xfb, 0x77, 0xff, 0xff, 0xbf, 0x7b, 0x47, 0xa9, 0x7e, 0x56, 0x69, 0x46, 0x06, 0x7d, 0x7d, 0x85, 0x92, 0xcc, 0x92, 0x9c, 0x54, 0x2b, 0x05, 0x85, 0xf4, 0xc4, 0xdc, 0x54, 0x08, 0x87, 0x0b, 0x28, 0x9a, 0x58, 0x5a, 0x92, 0x91, 0x5f, 0x64, 0x05, 0x11, 0x4d, 0x49, 0x2d, 0x4b, 0xcd, 0xc9, 0x2f, 0x48, 0x2d, 0x02, 0xc9, 0xa4, 0xa4, 0x16, 0x27, 0x03, 0x95, 0x2b, 0x14, 0x03, 0xe5, 0x4b, 0xc0, 0xbc, 0xa2, 0xcc, 0x82, 0x92, 0xcc, 0xfc, 0x3c, 0x90, 0x24, 0x84, 0x63, 0xa5, 0x90, 0x55, 0xcc, 0xc5, 0x55, 0x96, 0x58, 0xa4, 0x50, 0x62, 0x6b, 0x00, 0xa6, 0x2b, 0x6c, 0x2d, 0xcd, 0xc0, 0x8c, 0x4a, 0x5b, 0x23, 0x13, 0x2e, 0xae, 0xb4, 0xd2, 0xbc, 0x64, 0x90, 0x16, 0x85, 0x10, 0x4f, 0x67, 0x0d, 0x4d, 0xae, 0x6a, 0x2e, 0xce, 0xcc, 0x34, 0x8d, 0xa4, 0x92, 0x3c, 0x0d, 0x03, 0x4d, 0xcd, 0x4a, 0x5d, 0x5d, 0x38, 0xd7, 0x10, 0xc8, 0xd5, 0xd6, 0x86, 0x73, 0x8d, 0x34, 0x35, 0x2b, 0x90, 0x64, 0x8d, 0x81, 0x5c, 0xa0, 0x2c, 0x17, 0x67, 0x72, 0x4e, 0xb1, 0x86, 0xa1, 0xb1, 0x26, 0x17, 0x67, 0x71, 0x41, 0x91, 0x86, 0xa1, 0xb6, 0x86, 0x46, 0x89, 0xaa, 0x99, 0x81, 0xa6, 0xbe, 0xb1, 0x41, 0x8d, 0x81, 0xa6, 0x96, 0x91, 0x4e, 0x85, 0x4e, 0xa5, 0x8e, 0xa1, 0x89, 0x8e, 0xb1, 0x8e, 0x01, 0x10, 0x1a, 0xe9, 0x18, 0x01, 0x15, 0x16, 0x14, 0x65, 0xe6, 0x95, 0x68, 0x28, 0x79, 0xb8, 0xfa, 0xf8, 0xf8, 0x2b, 0x84, 0xfb, 0x07, 0xf9, 0xb8, 0x28, 0x2a, 0xe9, 0x58, 0x98, 0x00, 0x11, 0x50, 0xb2, 0x04, 0x68, 0x68, 0x2d, 0x17, 0xa7, 0x1d, 0x65, 0xd1, 0xcb, 0xcc, 0xc2, 0x65, 0x00, 0x61, 0x81, 0xf2, 0x29, 0x8c, 0x16, 0x30, 0x0a, 0x29, 0x9b, 0xb1, 0xeb, 0xce, 0xbf, 0xf7, 0x67, 0x57, 0x77, 0xa6, 0xbb, 0x2a, 0x33, 0xc2, 0xf8, 0x30, 0x9a, 0x07, 0xa8, 0x47, 0x84, 0x47, 0xc6, 0x45, 0xc5, 0xc4, 0xc0, 0x24, 0xd7, 0xcf, 0xcb, 0xaf, 0xd5, 0xc7, 0xc0, 0x24, 0x55, 0xe5, 0x82, 0x9b, 0x47, 0x69, 0x61, 0x62, 0x64, 0xed, 0xb9, 0x4b, 0xb5, 0x3a, 0xad, 0x53, 0x17, 0xe6, 0xae, 0xd2, 0xb9, 0xb4, 0x6a, 0x66, 0xee, 0xa1, 0x53, 0xb7, 0xae, 0xc4, 0xdd, 0x7b, 0x77, 0x0d, 0x00, 0x4e, 0x2e, 0x34, 0x2c,
|
|
@ -0,0 +1 @@
|
|||
0x78, 0xda, 0x63, 0x5c, 0xc0, 0xc4, 0x40, 0x08, 0xfc, 0xfb, 0x0f, 0x04, 0x4a, 0x4a, 0x4a, 0xfd, 0x1d, 0x1d, 0x1d, 0xfd, 0x20, 0x1a, 0xc8, 0xed, 0xff, 0xff, 0x01, 0x8e, 0xff, 0xff, 0x7f, 0xff, 0x4e, 0x49, 0xe9, 0xff, 0xbb, 0x8e, 0x8e, 0x0f, 0xef, 0x94, 0x9a, 0x3e, 0xbc, 0xfb, 0xdf, 0xff, 0xe1, 0xff, 0x87, 0xfe, 0x0f, 0x1f, 0x60, 0x18, 0xbb, 0xfe, 0xff, 0x78, 0xf5, 0xff, 0x47, 0xd2, 0xcf, 0x30, 0x0a, 0x06, 0x14, 0x80, 0xe3, 0x0a, 0x14, 0x77, 0x60, 0xf8, 0x03, 0xcc, 0xd6, 0x07, 0xc6, 0xe3, 0x7f, 0x86, 0x0f, 0xff, 0x81, 0x71, 0xfb, 0xef, 0x7f, 0x3f, 0xc3, 0x7f, 0x60, 0xdc, 0xbd, 0xef, 0x07, 0xc6, 0x5f, 0x07, 0x14, 0x83, 0xe2, 0x93, 0xe1, 0xc3, 0xfb, 0x77, 0xff, 0xff, 0xbf, 0x7b, 0x47, 0xa9, 0x7e, 0x56, 0x2b, 0x46, 0x06, 0x5d, 0x5d, 0x85, 0x92, 0xcc, 0x92, 0x9c, 0x54, 0x2b, 0x05, 0x85, 0xf4, 0xc4, 0xdc, 0x54, 0x08, 0x87, 0x0b, 0x28, 0x9a, 0x58, 0x5a, 0x92, 0x91, 0x5f, 0x64, 0x05, 0x11, 0x4d, 0x49, 0x2d, 0x4b, 0xcd, 0xc9, 0x2f, 0x48, 0x2d, 0x02, 0xc9, 0xa4, 0xa4, 0x16, 0x27, 0x03, 0x95, 0x2b, 0x14, 0x03, 0xe5, 0x4b, 0xc0, 0xbc, 0xa2, 0xcc, 0x82, 0x92, 0xcc, 0xfc, 0x3c, 0x90, 0x24, 0x84, 0x63, 0xa5, 0x90, 0x53, 0x9a, 0xc8, 0xc5, 0x55, 0x62, 0x6b, 0xc0, 0x55, 0x61, 0x6b, 0x69, 0xc6, 0x55, 0x69, 0x6b, 0x64, 0xc2, 0xc5, 0x95, 0x56, 0x9a, 0x97, 0x0c, 0x52, 0xa7, 0x10, 0xe2, 0xe9, 0xac, 0xa1, 0xc9, 0xc5, 0xc5, 0x99, 0x99, 0xa6, 0x90, 0x54, 0x92, 0xa7, 0x61, 0xa0, 0xa9, 0x50, 0x92, 0x91, 0x9a, 0xa7, 0x50, 0x69, 0x5b, 0xa9, 0x6b, 0xa8, 0x90, 0x9a, 0x97, 0x02, 0x97, 0x31, 0x44, 0xc8, 0x68, 0xa3, 0xca, 0x18, 0x41, 0x65, 0x2a, 0x6c, 0x2b, 0xd0, 0xf4, 0x18, 0x23, 0x64, 0xa0, 0x7a, 0xb8, 0x38, 0x93, 0x73, 0x8a, 0x35, 0x0c, 0x8d, 0x35, 0xb9, 0x38, 0x8b, 0x0b, 0x8a, 0x34, 0x0c, 0xb5, 0x4b, 0x54, 0xcd, 0x0c, 0xf4, 0xf5, 0x8d, 0x0d, 0xb4, 0x8c, 0x74, 0x2a, 0x74, 0x2a, 0x75, 0x0c, 0x4d, 0x74, 0x8c, 0x75, 0x0c, 0x80, 0xd0, 0x48, 0xc7, 0x08, 0xa8, 0xa6, 0xa0, 0x28, 0x33, 0xaf, 0x44, 0x43, 0xc9, 0xc3, 0xd5, 0xc7, 0xc7, 0x5f, 0x21, 0xdc, 0x3f, 0xc8, 0xc7, 0x45, 0x51, 0x49, 0xc7, 0xc2, 0x04, 0x88, 0x80, 0x92, 0x25, 0xb6, 0x25, 0xda, 0x86, 0x5c, 0x60, 0xfb, 0xec, 0x28, 0x8b, 0x7d, 0x66, 0x16, 0x2e, 0x03, 0x08, 0x0b, 0x94, 0x8d, 0x61, 0xb4, 0x80, 0x51, 0x48, 0xd9, 0x8c, 0x5d, 0x77, 0xfe, 0xbd, 0x3f, 0xbb, 0xba, 0x33, 0xdd, 0x55, 0x99, 0x11, 0xc6, 0x87, 0xd1, 0x3c, 0x40, 0x3d, 0x22, 0x3c, 0x32, 0x2e, 0x2a, 0x26, 0x06, 0x26, 0xb9, 0x7e, 0x5e, 0x7e, 0xad, 0x3e, 0x06, 0x26, 0xa9, 0x2a, 0x17, 0xdc, 0x3c, 0x4a, 0x0b, 0x13, 0x23, 0x6b, 0xcf, 0x5d, 0xaa, 0xd5, 0x69, 0x9d, 0xba, 0x30, 0x77, 0x95, 0xce, 0xa5, 0x55, 0x33, 0x73, 0x0f, 0x9d, 0xba, 0x75, 0x25, 0xee, 0xde, 0xbb, 0x6b, 0x00, 0x7e, 0xff, 0x3f, 0x7a,
|
|
@ -0,0 +1 @@
|
|||
0x78, 0xda, 0x63, 0x5c, 0xc0, 0xc4, 0x40, 0x08, 0xfc, 0xfb, 0x0f, 0x04, 0x4a, 0x4a, 0x4a, 0xfd, 0x1d, 0x1d, 0x1d, 0xfd, 0x20, 0x1a, 0xc8, 0xed, 0xff, 0xff, 0x01, 0x8e, 0xff, 0xff, 0x7f, 0xff, 0x4e, 0x49, 0xe9, 0xff, 0xbb, 0x8e, 0x8e, 0x0f, 0xef, 0x94, 0x9a, 0x3e, 0xbc, 0xfb, 0xdf, 0xff, 0xe1, 0xff, 0x87, 0xfe, 0x0f, 0x1f, 0x60, 0x18, 0xbb, 0xfe, 0xff, 0x78, 0xf5, 0xff, 0x47, 0xd2, 0xcf, 0x30, 0x0a, 0x06, 0x14, 0x80, 0xe3, 0x0a, 0x14, 0x77, 0x60, 0xf8, 0x03, 0xcc, 0xd6, 0x07, 0xc6, 0xe3, 0x7f, 0x86, 0x0f, 0xff, 0x81, 0x71, 0xfb, 0xef, 0x7f, 0x3f, 0xc3, 0x7f, 0x60, 0xdc, 0xbd, 0xef, 0x07, 0xc6, 0x5f, 0x07, 0x14, 0x83, 0xe2, 0x93, 0xe1, 0xc3, 0xfb, 0x77, 0xff, 0xff, 0xbf, 0x7b, 0x47, 0xa9, 0x7e, 0x56, 0x7e, 0x46, 0x06, 0x5d, 0x5d, 0x85, 0x92, 0xcc, 0x92, 0x9c, 0x54, 0x2b, 0x05, 0x85, 0xf4, 0xc4, 0xdc, 0x54, 0x08, 0x87, 0x0b, 0x28, 0x9a, 0x58, 0x5a, 0x92, 0x91, 0x5f, 0x64, 0x05, 0x11, 0x4d, 0x49, 0x2d, 0x4b, 0xcd, 0xc9, 0x2f, 0x48, 0x2d, 0x02, 0xc9, 0xa4, 0xa4, 0x16, 0x27, 0x03, 0x95, 0x2b, 0x14, 0x03, 0xe5, 0x4b, 0xc0, 0xbc, 0xa2, 0xcc, 0x82, 0x92, 0xcc, 0xfc, 0x3c, 0x90, 0x24, 0x84, 0x63, 0xa5, 0x90, 0x9b, 0x0f, 0xe4, 0x73, 0x95, 0xd8, 0x1a, 0x70, 0x55, 0xd8, 0x5a, 0x9a, 0x71, 0x55, 0xda, 0x1a, 0x99, 0x70, 0x71, 0xa5, 0x56, 0x14, 0x80, 0xb4, 0x84, 0x78, 0x3a, 0xdb, 0xea, 0xda, 0x71, 0x71, 0x66, 0xa6, 0x29, 0x24, 0x95, 0xe4, 0x29, 0x18, 0x70, 0x71, 0x72, 0x56, 0xea, 0xda, 0x1a, 0xc2, 0x05, 0x0c, 0x41, 0x02, 0xda, 0x48, 0x02, 0x46, 0x40, 0x81, 0x0a, 0x64, 0x15, 0xc6, 0x20, 0x01, 0x90, 0x0a, 0x2e, 0xce, 0xe4, 0x9c, 0x62, 0x05, 0x43, 0x20, 0xbf, 0xb8, 0xa0, 0x48, 0xc1, 0x50, 0x5b, 0xa3, 0x44, 0xd5, 0xcc, 0x40, 0x53, 0x5f, 0xdf, 0xd8, 0x40, 0xcb, 0x48, 0xa7, 0x42, 0xa7, 0x52, 0xc7, 0xd0, 0x44, 0xc7, 0x58, 0xc7, 0x00, 0x08, 0x8d, 0x74, 0x80, 0xa6, 0x14, 0x14, 0x65, 0xe6, 0x95, 0x28, 0x28, 0x79, 0xb8, 0xfa, 0xf8, 0xf8, 0x2b, 0x84, 0xfb, 0x07, 0xf9, 0xb8, 0x28, 0x2a, 0xe9, 0x58, 0x98, 0x00, 0x11, 0x17, 0x67, 0x09, 0xd8, 0x46, 0x3b, 0xca, 0xa2, 0x94, 0x99, 0x85, 0xcb, 0x00, 0xc2, 0x02, 0xe5, 0x4d, 0x18, 0x2d, 0x60, 0x14, 0x52, 0x36, 0x63, 0xd7, 0x9d, 0x7f, 0xef, 0xcf, 0xae, 0xee, 0x4c, 0x77, 0x55, 0x66, 0x84, 0xf1, 0x61, 0x34, 0x0f, 0x50, 0x8f, 0x08, 0x8f, 0x8c, 0x8b, 0x8a, 0x89, 0x81, 0x49, 0xae, 0x9f, 0x97, 0x5f, 0xab, 0x8f, 0x81, 0x49, 0xaa, 0xca, 0x05, 0x37, 0x8f, 0xd2, 0xc2, 0xc4, 0xc8, 0xda, 0x73, 0x97, 0x6a, 0x75, 0x5a, 0xa7, 0x2e, 0xcc, 0x5d, 0xa5, 0x73, 0x69, 0xd5, 0xcc, 0xdc, 0x43, 0xa7, 0x6e, 0x5d, 0x89, 0xbb, 0xf7, 0xee, 0x1a, 0x00, 0x54, 0x35, 0x2e, 0x0a,
|
|
@ -0,0 +1 @@
|
|||
0x78, 0xda, 0x85, 0x91, 0x6d, 0x4a, 0xc3, 0x40, 0x10, 0x86, 0x37, 0xb6, 0x55, 0xb3, 0x7e, 0x25, 0x37, 0x18, 0x22, 0x42, 0x42, 0x53, 0x4c, 0x62, 0x5a, 0xa1, 0x50, 0xa1, 0x48, 0x04, 0x11, 0xaa, 0xb4, 0x05, 0xed, 0x3f, 0xd3, 0x34, 0x6d, 0x03, 0x69, 0x12, 0x92, 0x8d, 0x1f, 0x47, 0xf0, 0x06, 0xde, 0xc1, 0x1b, 0x78, 0x07, 0x6f, 0xe0, 0x1d, 0xbc, 0x81, 0x3a, 0x1b, 0xcd, 0x9f, 0xf6, 0x47, 0xe7, 0xd9, 0xdd, 0x99, 0x77, 0xe6, 0x65, 0x59, 0x58, 0xe1, 0x9e, 0xac, 0x0d, 0xb9, 0x08, 0x09, 0x37, 0x2f, 0x25, 0x89, 0xd7, 0x02, 0x91, 0x64, 0x42, 0x78, 0x5e, 0x37, 0x93, 0xe5, 0xda, 0x4c, 0x20, 0x8d, 0x06, 0xb0, 0x80, 0x85, 0x7e, 0x1b, 0x20, 0x9b, 0x3e, 0x51, 0x94, 0x6e, 0xce, 0xe6, 0x71, 0xda, 0x86, 0x9e, 0x9f, 0x8d, 0xe3, 0xa2, 0x33, 0xf1, 0x33, 0x0f, 0xe7, 0x30, 0x8f, 0x1f, 0x81, 0xc5, 0x90, 0x84, 0xee, 0x33, 0x0c, 0x2e, 0xee, 0xb0, 0xbf, 0x88, 0xf9, 0x3c, 0xf3, 0xd2, 0x20, 0x61, 0x6d, 0x08, 0x73, 0x97, 0xcb, 0x20, 0x4a, 0x72, 0x54, 0x30, 0x73, 0x17, 0x7e, 0xe2, 0x4e, 0x28, 0x65, 0x1d, 0x83, 0x06, 0x13, 0x3c, 0xe8, 0x34, 0x8f, 0x3c, 0x16, 0xc4, 0x11, 0x0c, 0x2f, 0xcf, 0x55, 0x8d, 0x52, 0x31, 0x98, 0xc2, 0x98, 0x45, 0x89, 0x6a, 0x68, 0xc0, 0xe6, 0x7e, 0xc4, 0xdf, 0xa0, 0x06, 0x13, 0x5d, 0x71, 0x1a, 0xb6, 0xa2, 0x51, 0xd1, 0x0f, 0x33, 0xbf, 0xb4, 0x98, 0x2b, 0x96, 0xd6, 0xb2, 0xc5, 0x5a, 0xb1, 0x9c, 0x2e, 0x5b, 0x4e, 0x56, 0x2c, 0xcd, 0xc2, 0x12, 0xe1, 0x3b, 0x45, 0x2f, 0xcc, 0x54, 0xb3, 0x89, 0x32, 0x4b, 0x52, 0xd5, 0xac, 0xab, 0xec, 0xc8, 0x32, 0xb4, 0x63, 0xd3, 0xd0, 0x4d, 0xc3, 0xd2, 0x2d, 0x5b, 0x37, 0x75, 0x1b, 0x87, 0x49, 0x1a, 0x44, 0x4c, 0x55, 0x6e, 0xfa, 0xce, 0x60, 0x00, 0xdd, 0xde, 0x08, 0xba, 0xfd, 0xfe, 0xf5, 0x2d, 0x5c, 0x39, 0x23, 0x45, 0x6f, 0xd9, 0x7c, 0x19, 0xe8, 0xa2, 0x22, 0xeb, 0xb0, 0xba, 0x89, 0x05, 0xbf, 0x5b, 0x3c, 0x23, 0xa4, 0x46, 0x2a, 0xc8, 0x46, 0x41, 0xe5, 0x9f, 0x2a, 0x52, 0x43, 0x36, 0x91, 0x2d, 0xb2, 0x4d, 0x44, 0x84, 0x92, 0x1d, 0x64, 0x17, 0xd9, 0x23, 0xfb, 0xc8, 0x01, 0x52, 0xa9, 0x52, 0xe3, 0xef, 0xd3, 0x7f, 0x30, 0xca, 0x2c, 0x59, 0xc3, 0x87, 0xd7, 0xf7, 0xcf, 0xef, 0xaf, 0x8f, 0xb7, 0x97, 0x99, 0x73, 0x28, 0x94, 0xba, 0xcc, 0xbf, 0xe1, 0xfe, 0x81, 0x5a,
|
|
@ -0,0 +1,54 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Replace org.libsdl.app with the identifier of your game below, e.g.
|
||||
com.gamemaker.game
|
||||
-->
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.nesbox.tic"
|
||||
android:versionCode="4500"
|
||||
android:versionName="0.45.0"
|
||||
android:installLocation="auto">
|
||||
|
||||
<!-- Android 2.3.3 -->
|
||||
<uses-sdk android:minSdkVersion="12" android:targetSdkVersion="12" />
|
||||
|
||||
<!-- OpenGL ES 2.0 -->
|
||||
<uses-feature android:glEsVersion="0x00020000" />
|
||||
|
||||
<!-- Allow writing to external storage -->
|
||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
|
||||
<!-- Create a Java class extending SDLActivity and place it in a
|
||||
directory under src matching the package, e.g.
|
||||
src/com/gamemaker/game/MyGame.java
|
||||
|
||||
then replace "SDLActivity" with the name of your class (e.g. "MyGame")
|
||||
in the XML below.
|
||||
|
||||
An example Java class can be found in README-android.txt
|
||||
-->
|
||||
<application android:label="@string/app_name"
|
||||
android:icon="@drawable/ic_launcher"
|
||||
android:allowBackup="true"
|
||||
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
|
||||
android:hardwareAccelerated="true" >
|
||||
<activity android:name="TIC"
|
||||
android:label="@string/app_name"
|
||||
android:configChanges="keyboardHidden|keyboard|orientation"
|
||||
>
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
<!-- Drop file event -->
|
||||
<!--
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.VIEW" />
|
||||
<category android:name="android.intent.category.DEFAULT" />
|
||||
<data android:mimeType="*/*" />
|
||||
</intent-filter>
|
||||
-->
|
||||
</activity>
|
||||
</application>
|
||||
|
||||
</manifest>
|
|
@ -0,0 +1,19 @@
|
|||
# This file is used to override default values used by the Ant build system.
|
||||
#
|
||||
# This file must be checked into Version Control Systems, as it is
|
||||
# integral to the build system of your project.
|
||||
|
||||
# This file is only used by the Ant script.
|
||||
|
||||
# You can use this to override default values such as
|
||||
# 'source.dir' for the location of your java source folder and
|
||||
# 'out.dir' for the location of your output folder.
|
||||
|
||||
# You can also use it define how the release builds are signed by declaring
|
||||
# the following properties:
|
||||
# 'key.store' for the location of your keystore and
|
||||
# 'key.alias' for the name of the key to use.
|
||||
# The password will be asked during the build when you use the 'release' target.
|
||||
|
||||
key.store=my-release-key.keystore
|
||||
key.alias=alias_name
|
|
@ -0,0 +1,17 @@
|
|||
# This file is used to override default values used by the Ant build system.
|
||||
#
|
||||
# This file must be checked in Version Control Systems, as it is
|
||||
# integral to the build system of your project.
|
||||
|
||||
# This file is only used by the Ant script.
|
||||
|
||||
# You can use this to override default values such as
|
||||
# 'source.dir' for the location of your java source folder and
|
||||
# 'out.dir' for the location of your output folder.
|
||||
|
||||
# You can also use it define how the release builds are signed by declaring
|
||||
# the following properties:
|
||||
# 'key.store' for the location of your keystore and
|
||||
# 'key.alias' for the name of the key to use.
|
||||
# The password will be asked during the build when you use the 'release' target.
|
||||
|
|
@ -0,0 +1,93 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- This should be changed to the name of your project -->
|
||||
<project name="TIC" default="help">
|
||||
|
||||
<!-- The local.properties file is created and updated by the 'android' tool.
|
||||
It contains the path to the SDK. It should *NOT* be checked into
|
||||
Version Control Systems. -->
|
||||
<property file="local.properties" />
|
||||
|
||||
<!-- The ant.properties file can be created by you. It is only edited by the
|
||||
'android' tool to add properties to it.
|
||||
This is the place to change some Ant specific build properties.
|
||||
Here are some properties you may want to change/update:
|
||||
|
||||
source.dir
|
||||
The name of the source directory. Default is 'src'.
|
||||
out.dir
|
||||
The name of the output directory. Default is 'bin'.
|
||||
|
||||
For other overridable properties, look at the beginning of the rules
|
||||
files in the SDK, at tools/ant/build.xml
|
||||
|
||||
Properties related to the SDK location or the project target should
|
||||
be updated using the 'android' tool with the 'update' action.
|
||||
|
||||
This file is an integral part of the build system for your
|
||||
application and should be checked into Version Control Systems.
|
||||
|
||||
-->
|
||||
<property file="ant.properties" />
|
||||
|
||||
<!-- if sdk.dir was not set from one of the property file, then
|
||||
get it from the ANDROID_HOME env var.
|
||||
This must be done before we load project.properties since
|
||||
the proguard config can use sdk.dir -->
|
||||
<property environment="env" />
|
||||
<condition property="sdk.dir" value="${env.ANDROID_HOME}">
|
||||
<isset property="env.ANDROID_HOME" />
|
||||
</condition>
|
||||
|
||||
<!-- The project.properties file is created and updated by the 'android'
|
||||
tool, as well as ADT.
|
||||
|
||||
This contains project specific properties such as project target, and library
|
||||
dependencies. Lower level build properties are stored in ant.properties
|
||||
(or in .classpath for Eclipse projects).
|
||||
|
||||
This file is an integral part of the build system for your
|
||||
application and should be checked into Version Control Systems. -->
|
||||
<loadproperties srcFile="project.properties" />
|
||||
|
||||
<!-- quick check on sdk.dir -->
|
||||
<fail
|
||||
message="sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through the ANDROID_HOME environment variable."
|
||||
unless="sdk.dir"
|
||||
/>
|
||||
|
||||
<!--
|
||||
Import per project custom build rules if present at the root of the project.
|
||||
This is the place to put custom intermediary targets such as:
|
||||
-pre-build
|
||||
-pre-compile
|
||||
-post-compile (This is typically used for code obfuscation.
|
||||
Compiled code location: ${out.classes.absolute.dir}
|
||||
If this is not done in place, override ${out.dex.input.absolute.dir})
|
||||
-post-package
|
||||
-post-build
|
||||
-pre-clean
|
||||
-->
|
||||
<import file="custom_rules.xml" optional="true" />
|
||||
|
||||
<!-- Import the actual build file.
|
||||
|
||||
To customize existing targets, there are two options:
|
||||
- Customize only one target:
|
||||
- copy/paste the target into this file, *before* the
|
||||
<import> task.
|
||||
- customize it to your needs.
|
||||
- Customize the whole content of build.xml
|
||||
- copy/paste the content of the rules files (minus the top node)
|
||||
into this file, replacing the <import> task.
|
||||
- customize to your needs.
|
||||
|
||||
***********************
|
||||
****** IMPORTANT ******
|
||||
***********************
|
||||
In all cases you must update the value of version-tag below to read 'custom' instead of an integer,
|
||||
in order to avoid having your file be overridden by tools such as "android update project"
|
||||
-->
|
||||
<!-- version-tag: 1 -->
|
||||
<import file="${sdk.dir}/tools/ant/build.xml" />
|
||||
|
||||
</project>
|
|
@ -0,0 +1,11 @@
|
|||
# This file is automatically generated by Android Tools.
|
||||
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
|
||||
#
|
||||
# This file must be checked in Version Control Systems.
|
||||
#
|
||||
# To customize properties used by the Ant build system use,
|
||||
# "build.properties", and override values to adapt the script to your
|
||||
# project structure.
|
||||
|
||||
# Project target.
|
||||
target=android-12
|
|
@ -0,0 +1 @@
|
|||
include $(call all-subdir-makefiles)
|
|
@ -0,0 +1,5 @@
|
|||
|
||||
# Uncomment this if you're using STL in your project
|
||||
# See CPLUSPLUS-SUPPORT.html in the NDK documentation for more information
|
||||
|
||||
APP_ABI := armeabi armeabi-v7a x86
|
|
@ -0,0 +1,6 @@
|
|||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := SDL2
|
||||
LOCAL_SRC_FILES := ../../../../lib/android/sdl2/$(TARGET_ARCH_ABI)/libSDL2.so
|
||||
include $(PREBUILT_SHARED_LIBRARY)
|
|
@ -0,0 +1,6 @@
|
|||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := gif
|
||||
LOCAL_SRC_FILES := ../../../../lib/android/gif/$(TARGET_ARCH_ABI)/libgif.so
|
||||
include $(PREBUILT_SHARED_LIBRARY)
|
|
@ -0,0 +1,6 @@
|
|||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := lua
|
||||
LOCAL_SRC_FILES := ../../../../lib/android/lua/$(TARGET_ARCH_ABI)/liblua.so
|
||||
include $(PREBUILT_SHARED_LIBRARY)
|
|
@ -0,0 +1,56 @@
|
|||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_CFLAGS += -O3 -Wall -std=c99 -D"log2(x)=(log(x)/log(2))"
|
||||
LOCAL_MODULE := main
|
||||
|
||||
SDL_PATH := ../../../../../../sdk/SDL2-2.0.5
|
||||
SRC_PATH := ../../../../src
|
||||
INCLUDE_PATH := ../../../../include
|
||||
|
||||
LOCAL_C_INCLUDES := \
|
||||
$(LOCAL_PATH)/$(SDL_PATH)/include \
|
||||
$(LOCAL_PATH)/$(INCLUDE_PATH)/lua \
|
||||
$(LOCAL_PATH)/$(INCLUDE_PATH)/tic80 \
|
||||
$(LOCAL_PATH)/$(INCLUDE_PATH)/gif
|
||||
|
||||
# Add your application source files here...
|
||||
LOCAL_SRC_FILES := $(SDL_PATH)/src/main/android/SDL_android_main.c \
|
||||
$(SRC_PATH)/studio.c \
|
||||
$(SRC_PATH)/console.c \
|
||||
$(SRC_PATH)/html.c \
|
||||
$(SRC_PATH)/run.c \
|
||||
$(SRC_PATH)/ext/blip_buf.c \
|
||||
$(SRC_PATH)/ext/file_dialog.c \
|
||||
$(SRC_PATH)/ext/md5.c \
|
||||
$(SRC_PATH)/ext/gif.c \
|
||||
$(SRC_PATH)/ext/net/SDLnet.c \
|
||||
$(SRC_PATH)/ext/net/SDLnetTCP.c \
|
||||
$(SRC_PATH)/ext/net/SDLnetselect.c \
|
||||
$(SRC_PATH)/ext/duktape/duktape.c \
|
||||
$(SRC_PATH)/fs.c \
|
||||
$(SRC_PATH)/tools.c \
|
||||
$(SRC_PATH)/start.c \
|
||||
$(SRC_PATH)/sprite.c \
|
||||
$(SRC_PATH)/map.c \
|
||||
$(SRC_PATH)/sfx.c \
|
||||
$(SRC_PATH)/music.c \
|
||||
$(SRC_PATH)/history.c \
|
||||
$(SRC_PATH)/world.c \
|
||||
$(SRC_PATH)/code.c \
|
||||
$(SRC_PATH)/config.c \
|
||||
$(SRC_PATH)/keymap.c \
|
||||
$(SRC_PATH)/net.c \
|
||||
$(SRC_PATH)/luaapi.c \
|
||||
$(SRC_PATH)/jsapi.c \
|
||||
$(SRC_PATH)/tic.c \
|
||||
$(SRC_PATH)/dialog.c \
|
||||
$(SRC_PATH)/menu.c \
|
||||
$(SRC_PATH)/surf.c \
|
||||
$(SRC_PATH)/tic80.c
|
||||
|
||||
LOCAL_SHARED_LIBRARIES := SDL2 lua z gif
|
||||
|
||||
LOCAL_LDLIBS := -lGLESv1_CM -lGLESv2 -llog
|
||||
|
||||
include $(BUILD_SHARED_LIBRARY)
|
|
@ -0,0 +1,12 @@
|
|||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
|
||||
LOCAL_MODULE := main
|
||||
|
||||
LOCAL_SRC_FILES := YourSourceHere.c
|
||||
|
||||
LOCAL_STATIC_LIBRARIES := SDL2_static
|
||||
|
||||
include $(BUILD_SHARED_LIBRARY)
|
||||
$(call import-module,SDL)LOCAL_PATH := $(call my-dir)
|
|
@ -0,0 +1,6 @@
|
|||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := z
|
||||
LOCAL_SRC_FILES := ../../../../lib/android/zlib/$(TARGET_ARCH_ABI)/libz.so
|
||||
include $(PREBUILT_SHARED_LIBRARY)
|
|
@ -0,0 +1,20 @@
|
|||
# To enable ProGuard in your project, edit project.properties
|
||||
# to define the proguard.config property as described in that file.
|
||||
#
|
||||
# Add project specific ProGuard rules here.
|
||||
# By default, the flags in this file are appended to flags specified
|
||||
# in ${sdk.dir}/tools/proguard/proguard-android.txt
|
||||
# You can edit the include path and order by changing the ProGuard
|
||||
# include property in project.properties.
|
||||
#
|
||||
# For more details, see
|
||||
# http://developer.android.com/guide/developing/tools/proguard.html
|
||||
|
||||
# Add any project specific keep options here:
|
||||
|
||||
# If your project uses WebView with JS, uncomment the following
|
||||
# and specify the fully qualified class name to the JavaScript interface
|
||||
# class:
|
||||
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
|
||||
# public *;
|
||||
#}
|
|
@ -0,0 +1,14 @@
|
|||
# This file is automatically generated by Android Tools.
|
||||
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
|
||||
#
|
||||
# This file must be checked in Version Control Systems.
|
||||
#
|
||||
# To customize properties used by the Ant build system edit
|
||||
# "ant.properties", and override values to adapt the script to your
|
||||
# project structure.
|
||||
#
|
||||
# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
|
||||
#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
|
||||
|
||||
# Project target.
|
||||
target=android-12
|
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 963 B |
After Width: | Height: | Size: 846 B |
After Width: | Height: | Size: 975 B |
|
@ -0,0 +1,60 @@
|
|||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:id="@+id/saveFileDialog"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent"
|
||||
android:orientation="vertical" >
|
||||
<ListView
|
||||
android:id="@+id/fileList"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:padding="10dp" />
|
||||
<LinearLayout
|
||||
android:id="@+id/fileLinearLayout2"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:padding="10dp" >
|
||||
|
||||
<TextView
|
||||
android:id="@+id/fileTextView1"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="10dp"
|
||||
android:text="@string/enterFileName"
|
||||
android:textAppearance="?android:attr/textAppearanceMedium" />
|
||||
<EditText
|
||||
android:id="@+id/fileName"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:contentDescription="@string/enterFileName"
|
||||
android:inputType="text"
|
||||
android:padding="10dp" />
|
||||
<LinearLayout
|
||||
android:id="@+id/fileLinearLayout3"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal" >
|
||||
<Button
|
||||
android:id="@+id/fileSaveLoad"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:padding="10dp"
|
||||
android:text="@string/saveButtonText" />
|
||||
<Button
|
||||
android:id="@+id/fileCancel"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:padding="10dp"
|
||||
android:text="@string/cancelButtonText" />
|
||||
<Button
|
||||
android:id="@+id/newFolder"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:text="@string/newFolderButtonText" />
|
||||
</LinearLayout>
|
||||
</LinearLayout>
|
||||
</LinearLayout>
|
|
@ -0,0 +1,7 @@
|
|||
<com.samsung.sprc.fileselector.TextViewWithImage xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent"
|
||||
android:padding="10dp"
|
||||
android:textSize="16sp" >
|
||||
|
||||
</com.samsung.sprc.fileselector.TextViewWithImage>
|
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="app_name">TIC-80</string>
|
||||
<string name="enterFileName">Enter file name:</string>
|
||||
<string name="saveButtonText">Save</string>
|
||||
<string name="cancelButtonText">Cancel</string>
|
||||
<string name="cannotSaveFileMessage">Cannot save file</string>
|
||||
<string name="fileNameFirstMessage">Please enter the file name first</string>
|
||||
<string name="okButtonText">OK</string>
|
||||
<string name="loadButtonText">Load</string>
|
||||
<string name="accessDenied">Access denied</string>
|
||||
<string name="missingFile">No such file</string>
|
||||
<string name="newFolderButtonText">New folder</string>
|
||||
<string name="newFolderDialogMessage">Create new folder</string>
|
||||
<string name="createButtonText">Create</string>
|
||||
<string name="folderCreationOk">Folder created sucessfully</string>
|
||||
<string name="folderCreationError">Error while creating folder</string>
|
||||
<string name="information">Information</string>
|
||||
</resources>
|
|
@ -0,0 +1,129 @@
|
|||
package com.nesbox.tic;
|
||||
|
||||
import com.samsung.sprc.fileselector.FileSelector;
|
||||
import com.samsung.sprc.fileselector.FileOperation;
|
||||
import com.samsung.sprc.fileselector.OnHandleFileListener;
|
||||
|
||||
import org.libsdl.app.SDLActivity;
|
||||
|
||||
public class TIC extends SDLActivity
|
||||
{
|
||||
@Override
|
||||
protected String[] getLibraries() {
|
||||
return new String[] {
|
||||
"SDL2",
|
||||
"lua",
|
||||
"z",
|
||||
"gif",
|
||||
"main"
|
||||
};
|
||||
}
|
||||
|
||||
protected final String[] fileSelectorResult = new String[]{""};
|
||||
|
||||
public String saveFile(final String name)
|
||||
{
|
||||
fileSelectorResult[0] = "";
|
||||
|
||||
runOnUiThread(new Runnable()
|
||||
{
|
||||
@Override
|
||||
public void run()
|
||||
{
|
||||
new FileSelector(TIC.this, FileOperation.SAVE, mSaveFileListener, name).show();
|
||||
}
|
||||
});
|
||||
|
||||
synchronized (fileSelectorResult)
|
||||
{
|
||||
try
|
||||
{
|
||||
fileSelectorResult.wait();
|
||||
}
|
||||
catch (InterruptedException ex)
|
||||
{
|
||||
ex.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
return fileSelectorResult[0];
|
||||
}
|
||||
|
||||
OnHandleFileListener mSaveFileListener = new OnHandleFileListener()
|
||||
{
|
||||
@Override
|
||||
public void handleFile(final String filePath)
|
||||
{
|
||||
fileSelectorResult[0] = filePath;
|
||||
|
||||
synchronized (fileSelectorResult)
|
||||
{
|
||||
fileSelectorResult.notify();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleCancel()
|
||||
{
|
||||
fileSelectorResult[0] = "";
|
||||
|
||||
synchronized (fileSelectorResult)
|
||||
{
|
||||
fileSelectorResult.notify();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
public String loadFile()
|
||||
{
|
||||
fileSelectorResult[0] = "";
|
||||
|
||||
runOnUiThread(new Runnable()
|
||||
{
|
||||
@Override
|
||||
public void run()
|
||||
{
|
||||
new FileSelector(TIC.this, FileOperation.LOAD, mLoadFileListener, "").show();
|
||||
}
|
||||
});
|
||||
|
||||
synchronized (fileSelectorResult)
|
||||
{
|
||||
try
|
||||
{
|
||||
fileSelectorResult.wait();
|
||||
}
|
||||
catch (InterruptedException ex)
|
||||
{
|
||||
ex.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
return fileSelectorResult[0];
|
||||
}
|
||||
|
||||
OnHandleFileListener mLoadFileListener = new OnHandleFileListener()
|
||||
{
|
||||
@Override
|
||||
public void handleFile(final String filePath)
|
||||
{
|
||||
fileSelectorResult[0] = filePath;
|
||||
|
||||
synchronized (fileSelectorResult)
|
||||
{
|
||||
fileSelectorResult.notify();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleCancel()
|
||||
{
|
||||
fileSelectorResult[0] = "";
|
||||
|
||||
synchronized (fileSelectorResult)
|
||||
{
|
||||
fileSelectorResult.notify();
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
|
@ -0,0 +1,56 @@
|
|||
package com.samsung.sprc.fileselector;
|
||||
|
||||
/**
|
||||
* This class contais information about the file name and type
|
||||
*/
|
||||
public class FileData implements Comparable<FileData> {
|
||||
|
||||
/** Constant that specifies the object is a reference to the parent */
|
||||
public static final int UP_FOLDER = 0;
|
||||
/** Constant that specifies the object is a folder */
|
||||
public static final int DIRECTORY = 1;
|
||||
/** Constant that specifies the object is a file */
|
||||
public static final int FILE = 2;
|
||||
|
||||
/** The file's name */
|
||||
final private String mFileName;
|
||||
|
||||
/** Defines the type of file. Can be one of UP_FOLDER, DIRECTORY or FILE */
|
||||
final private int mFileType;
|
||||
|
||||
/**
|
||||
* This class holds information about the file.
|
||||
*
|
||||
* @param fileName
|
||||
* - file name
|
||||
* @param fileType
|
||||
* - file type - can be UP_FOLDER, DIRECTORY or FILE
|
||||
* @throws IllegalArgumentException
|
||||
* - when illegal type (different than UP_FOLDER, DIRECTORY or
|
||||
* FILE)
|
||||
*/
|
||||
public FileData(final String fileName, final int fileType) {
|
||||
|
||||
if (fileType != UP_FOLDER && fileType != DIRECTORY && fileType != FILE) {
|
||||
throw new IllegalArgumentException("Illegel type of file");
|
||||
}
|
||||
this.mFileName = fileName;
|
||||
this.mFileType = fileType;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int compareTo(final FileData another) {
|
||||
if (mFileType != another.mFileType) {
|
||||
return mFileType - another.mFileType;
|
||||
}
|
||||
return mFileName.compareTo(another.mFileName);
|
||||
}
|
||||
|
||||
public String getFileName() {
|
||||
return mFileName;
|
||||
}
|
||||
|
||||
public int getFileType() {
|
||||
return mFileType;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,67 @@
|
|||
package com.samsung.sprc.fileselector;
|
||||
|
||||
import com.nesbox.tic.R;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import android.content.Context;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.BaseAdapter;
|
||||
|
||||
/**
|
||||
* Adapter used to display a files list
|
||||
*/
|
||||
public class FileListAdapter extends BaseAdapter {
|
||||
|
||||
/** Array of FileData objects that will be used to display a list */
|
||||
private final ArrayList<FileData> mFileDataArray;
|
||||
|
||||
private final Context mContext;
|
||||
|
||||
public FileListAdapter(Context context, List<FileData> aFileDataArray) {
|
||||
mFileDataArray = (ArrayList<FileData>) aFileDataArray;
|
||||
mContext = context;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getCount() {
|
||||
return mFileDataArray.size();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object getItem(int position) {
|
||||
return mFileDataArray.get(position);
|
||||
}
|
||||
|
||||
@Override
|
||||
public long getItemId(int position) {
|
||||
return position;
|
||||
}
|
||||
|
||||
@Override
|
||||
public View getView(int position, View convertView, ViewGroup parent) {
|
||||
FileData tempFileData = mFileDataArray.get(position);
|
||||
TextViewWithImage tempView = new TextViewWithImage(mContext);
|
||||
tempView.setText(tempFileData.getFileName());
|
||||
int imgRes = -1;
|
||||
switch (tempFileData.getFileType()) {
|
||||
case FileData.UP_FOLDER: {
|
||||
imgRes = R.drawable.up_folder;
|
||||
break;
|
||||
}
|
||||
case FileData.DIRECTORY: {
|
||||
imgRes = R.drawable.folder;
|
||||
break;
|
||||
}
|
||||
case FileData.FILE: {
|
||||
imgRes = R.drawable.file;
|
||||
break;
|
||||
}
|
||||
}
|
||||
tempView.setImageResource(imgRes);
|
||||
return tempView;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
package com.samsung.sprc.fileselector;
|
||||
|
||||
/** Enum used to determine the file operation being performed. */
|
||||
public enum FileOperation {
|
||||
SAVE, LOAD
|
||||
}
|
|
@ -0,0 +1,308 @@
|
|||
package com.samsung.sprc.fileselector;
|
||||
|
||||
import com.nesbox.tic.R;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.app.Dialog;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.os.Environment;
|
||||
import android.view.Gravity;
|
||||
import android.view.View;
|
||||
import android.view.View.OnClickListener;
|
||||
import android.widget.AdapterView;
|
||||
import android.widget.AdapterView.OnItemClickListener;
|
||||
import android.widget.AdapterView.OnItemSelectedListener;
|
||||
import android.widget.ArrayAdapter;
|
||||
import android.widget.Button;
|
||||
import android.widget.EditText;
|
||||
import android.widget.ListView;
|
||||
import android.widget.Spinner;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
/**
|
||||
* Create the file selection dialog. This class will create a custom dialog for
|
||||
* file selection which can be used to save files.
|
||||
*/
|
||||
public class FileSelector {
|
||||
|
||||
/** The list of files and folders which you can choose from */
|
||||
private ListView mFileListView;
|
||||
|
||||
/** Button to save/load file */
|
||||
private Button mSaveLoadButton;
|
||||
/** Cancel Button - close dialog */
|
||||
private Button mCancelButton;
|
||||
/** Button to create a new folder */
|
||||
private Button mNewFolderButton;
|
||||
|
||||
/** Spinner by which to select the file type filtering */
|
||||
// private Spinner mFilterSpinner;
|
||||
|
||||
/**
|
||||
* Indicates current location in the directory structure displayed in the
|
||||
* dialog.
|
||||
*/
|
||||
private File mCurrentLocation;
|
||||
|
||||
/**
|
||||
* The file selector dialog.
|
||||
*/
|
||||
private final Dialog mDialog;
|
||||
|
||||
private Context mContext;
|
||||
|
||||
/** Save or Load file listener. */
|
||||
final OnHandleFileListener mOnHandleFileListener;
|
||||
|
||||
/**
|
||||
* Constructor that creates the file selector dialog.
|
||||
*
|
||||
* @param context
|
||||
* The current context.
|
||||
* @param operation
|
||||
* LOAD - to load file / SAVE - to save file
|
||||
* @param onHandleFileListener
|
||||
* Notified after pressing the save or load button.
|
||||
*/
|
||||
public FileSelector(final Context context, final FileOperation operation,
|
||||
final OnHandleFileListener onHandleFileListener, final String fileName) {
|
||||
mContext = context;
|
||||
mOnHandleFileListener = onHandleFileListener;
|
||||
|
||||
final File sdCard = Environment.getExternalStorageDirectory();
|
||||
if (sdCard.canRead()) {
|
||||
mCurrentLocation = sdCard;
|
||||
} else {
|
||||
mCurrentLocation = Environment.getRootDirectory();
|
||||
}
|
||||
|
||||
mDialog = new Dialog(context);
|
||||
mDialog.setContentView(R.layout.dialog);
|
||||
mDialog.setTitle(mCurrentLocation.getAbsolutePath());
|
||||
|
||||
switch(operation)
|
||||
{
|
||||
case SAVE:
|
||||
((EditText) mDialog.findViewById(R.id.fileName)).setText(fileName);
|
||||
break;
|
||||
}
|
||||
|
||||
prepareFilesList();
|
||||
|
||||
setSaveLoadButton(operation);
|
||||
setNewFolderButton(operation);
|
||||
setCancelButton();
|
||||
}
|
||||
|
||||
/**
|
||||
* This method prepares the mFileListView
|
||||
*
|
||||
*/
|
||||
private void prepareFilesList() {
|
||||
mFileListView = (ListView) mDialog.findViewById(R.id.fileList);
|
||||
|
||||
mFileListView.setOnItemClickListener(new OnItemClickListener() {
|
||||
|
||||
@Override
|
||||
public void onItemClick(final AdapterView<?> parent, final View view, final int position, final long id) {
|
||||
// Check if "../" item should be added.
|
||||
if (id == 0) {
|
||||
final String parentLocation = mCurrentLocation.getParent();
|
||||
if (parentLocation != null) { // text == "../"
|
||||
mCurrentLocation = new File(parentLocation);
|
||||
makeList(mCurrentLocation, "*.*");
|
||||
} else {
|
||||
onItemSelect(parent, position);
|
||||
}
|
||||
} else {
|
||||
onItemSelect(parent, position);
|
||||
}
|
||||
}
|
||||
});
|
||||
makeList(mCurrentLocation, "*.*");
|
||||
}
|
||||
|
||||
/**
|
||||
* The method that fills the list with a directories contents.
|
||||
*
|
||||
* @param location
|
||||
* Indicates the directory whose contents should be displayed in
|
||||
* the dialog.
|
||||
* @param fitlesFilter
|
||||
* The filter specifies the type of file to be displayed
|
||||
*/
|
||||
private void makeList(final File location, final String fitlesFilter) {
|
||||
final ArrayList<FileData> fileList = new ArrayList<FileData>();
|
||||
final String parentLocation = location.getParent();
|
||||
if (parentLocation != null) {
|
||||
// First item on the list.
|
||||
fileList.add(new FileData("../", FileData.UP_FOLDER));
|
||||
}
|
||||
File listFiles[] = location.listFiles();
|
||||
if (listFiles != null) {
|
||||
ArrayList<FileData> fileDataList = new ArrayList<FileData>();
|
||||
for (int index = 0; index < listFiles.length; index++) {
|
||||
File tempFile = listFiles[index];
|
||||
if (FileUtils.accept(tempFile, fitlesFilter)) {
|
||||
int type = tempFile.isDirectory() ? FileData.DIRECTORY : FileData.FILE;
|
||||
fileDataList.add(new FileData(listFiles[index].getName(), type));
|
||||
}
|
||||
}
|
||||
fileList.addAll(fileDataList);
|
||||
Collections.sort(fileList);
|
||||
}
|
||||
// Fill the list with the contents of fileList.
|
||||
if (mFileListView != null) {
|
||||
FileListAdapter adapter = new FileListAdapter(mContext, fileList);
|
||||
mFileListView.setAdapter(adapter);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle the file list item selection.
|
||||
*
|
||||
* Change the directory on the list or change the name of the saved file if
|
||||
* the user selected a file.
|
||||
*
|
||||
* @param parent
|
||||
* First parameter of the onItemClick() method of
|
||||
* OnItemClickListener. It's a value of text property of the
|
||||
* item.
|
||||
* @param position
|
||||
* Third parameter of the onItemClick() method of
|
||||
* OnItemClickListener. It's the index on the list of the
|
||||
* selected item.
|
||||
*/
|
||||
private void onItemSelect(final AdapterView<?> parent, final int position) {
|
||||
final String itemText = ((FileData) parent.getItemAtPosition(position)).getFileName();
|
||||
final String itemPath = mCurrentLocation.getAbsolutePath() + File.separator + itemText;
|
||||
final File itemLocation = new File(itemPath);
|
||||
|
||||
if (!itemLocation.canRead()) {
|
||||
Toast.makeText(mContext, "Access denied!!!", Toast.LENGTH_SHORT).show();
|
||||
} else if (itemLocation.isDirectory()) {
|
||||
mCurrentLocation = itemLocation;
|
||||
makeList(mCurrentLocation, "*.*");
|
||||
} else if (itemLocation.isFile()) {
|
||||
final EditText fileName = (EditText) mDialog.findViewById(R.id.fileName);
|
||||
fileName.setText(itemText);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Set button name and click handler for Save or Load button.
|
||||
*
|
||||
* @param operation
|
||||
* Performed file operation.
|
||||
*/
|
||||
private void setSaveLoadButton(final FileOperation operation) {
|
||||
mSaveLoadButton = (Button) mDialog.findViewById(R.id.fileSaveLoad);
|
||||
switch (operation) {
|
||||
case SAVE:
|
||||
mSaveLoadButton.setText(R.string.saveButtonText);
|
||||
break;
|
||||
case LOAD:
|
||||
mSaveLoadButton.setText(R.string.loadButtonText);
|
||||
break;
|
||||
}
|
||||
mSaveLoadButton.setOnClickListener(new SaveLoadClickListener(operation, this, mContext));
|
||||
}
|
||||
|
||||
/**
|
||||
* Set button visibility and click handler for New folder button.
|
||||
*
|
||||
* @param operation
|
||||
* Performed file operation.
|
||||
*/
|
||||
private void setNewFolderButton(final FileOperation operation) {
|
||||
mNewFolderButton = (Button) mDialog.findViewById(R.id.newFolder);
|
||||
OnClickListener newFolderListener = new OnClickListener() {
|
||||
@Override
|
||||
public void onClick(final View v) {
|
||||
openNewFolderDialog();
|
||||
}
|
||||
};
|
||||
switch (operation) {
|
||||
case SAVE:
|
||||
mNewFolderButton.setVisibility(View.VISIBLE);
|
||||
mNewFolderButton.setOnClickListener(newFolderListener);
|
||||
break;
|
||||
case LOAD:
|
||||
mNewFolderButton.setVisibility(View.GONE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/** Opens a dialog for creating a new folder. */
|
||||
private void openNewFolderDialog() {
|
||||
AlertDialog.Builder alert = new AlertDialog.Builder(mContext);
|
||||
alert.setTitle(R.string.newFolderButtonText);
|
||||
alert.setMessage(R.string.newFolderDialogMessage);
|
||||
final EditText input = new EditText(mContext);
|
||||
alert.setView(input);
|
||||
alert.setPositiveButton(R.string.createButtonText, new DialogInterface.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(final DialogInterface dialog, final int whichButton) {
|
||||
File file = new File(mCurrentLocation.getAbsolutePath() + File.separator + input.getText().toString());
|
||||
if (file.mkdir()) {
|
||||
Toast t = Toast.makeText(mContext, R.string.folderCreationOk, Toast.LENGTH_SHORT);
|
||||
t.setGravity(Gravity.CENTER, 0, 0);
|
||||
t.show();
|
||||
} else {
|
||||
Toast t = Toast.makeText(mContext, R.string.folderCreationError, Toast.LENGTH_SHORT);
|
||||
t.setGravity(Gravity.CENTER, 0, 0);
|
||||
t.show();
|
||||
}
|
||||
makeList(mCurrentLocation, "*.*");
|
||||
}
|
||||
});
|
||||
alert.show();
|
||||
}
|
||||
|
||||
/** Set onClick() event handler for the cancel button. */
|
||||
private void setCancelButton()
|
||||
{
|
||||
mDialog.setOnCancelListener(new DialogInterface.OnCancelListener()
|
||||
{
|
||||
@Override
|
||||
public void onCancel(DialogInterface dialog)
|
||||
{
|
||||
mOnHandleFileListener.handleCancel();
|
||||
}
|
||||
});
|
||||
|
||||
mCancelButton = (Button) mDialog.findViewById(R.id.fileCancel);
|
||||
mCancelButton.setOnClickListener(new OnClickListener() {
|
||||
@Override
|
||||
public void onClick(final View view) {
|
||||
mDialog.cancel();
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
public String getSelectedFileName() {
|
||||
final EditText fileName = (EditText) mDialog.findViewById(R.id.fileName);
|
||||
return fileName.getText().toString();
|
||||
}
|
||||
|
||||
public File getCurrentLocation() {
|
||||
return mCurrentLocation;
|
||||
}
|
||||
|
||||
/** Simple wrapper around the Dialog.show() method. */
|
||||
public void show() {
|
||||
mDialog.show();
|
||||
}
|
||||
|
||||
/** Simple wrapper around the Dialog.dissmiss() method. */
|
||||
public void dismiss() {
|
||||
mDialog.dismiss();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,36 @@
|
|||
package com.samsung.sprc.fileselector;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
/**
|
||||
* A set of tools for file operations
|
||||
*/
|
||||
public class FileUtils {
|
||||
|
||||
/** Filter which accepts every file */
|
||||
public static final String FILTER_ALLOW_ALL = "*.*";
|
||||
|
||||
/**
|
||||
* This method checks that the file is accepted by the filter
|
||||
*
|
||||
* @param file
|
||||
* - file that will be checked if there is a specific type
|
||||
* @param filter
|
||||
* - criterion - the file type(for example ".jpg")
|
||||
* @return true - if file meets the criterion - false otherwise.
|
||||
*/
|
||||
public static boolean accept(final File file, final String filter) {
|
||||
if (filter.compareTo(FILTER_ALLOW_ALL) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (file.isDirectory()) {
|
||||
return true;
|
||||
}
|
||||
int lastIndexOfPoint = file.getName().lastIndexOf('.');
|
||||
if (lastIndexOfPoint == -1) {
|
||||
return false;
|
||||
}
|
||||
String fileType = file.getName().substring(lastIndexOfPoint).toLowerCase();
|
||||
return fileType.compareTo(filter) == 0;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,15 @@
|
|||
package com.samsung.sprc.fileselector;
|
||||
|
||||
public interface OnHandleFileListener {
|
||||
/**
|
||||
* This method is called after clicking the Save or Load button on the
|
||||
* dialog, if the file name was correct. It should be used to save or load a
|
||||
* file using the filePath path.
|
||||
*
|
||||
* @param filePath
|
||||
* File path set in the dialog when the Save or Load button was
|
||||
* clicked.
|
||||
*/
|
||||
void handleFile(String filePath);
|
||||
void handleCancel();
|
||||
}
|
|
@ -0,0 +1,92 @@
|
|||
package com.samsung.sprc.fileselector;
|
||||
|
||||
import com.nesbox.tic.R;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.content.Context;
|
||||
import android.view.Gravity;
|
||||
import android.view.View;
|
||||
import android.view.View.OnClickListener;
|
||||
import android.widget.Toast;
|
||||
|
||||
/**
|
||||
* This Listener handles Save or Load button clicks.
|
||||
*/
|
||||
public class SaveLoadClickListener implements OnClickListener {
|
||||
|
||||
/** Performed operation. */
|
||||
private final FileOperation mOperation;
|
||||
|
||||
/** FileSelector in which you used SaveLoadClickListener */
|
||||
private final FileSelector mFileSelector;
|
||||
|
||||
private final Context mContext;
|
||||
|
||||
/**
|
||||
* @param operation
|
||||
* Performed operation.
|
||||
* @param fileSelector
|
||||
* The FileSeletor which used this Listener.
|
||||
* @param context
|
||||
* context.
|
||||
*/
|
||||
public SaveLoadClickListener(final FileOperation operation, final FileSelector fileSelector, final Context context) {
|
||||
mOperation = operation;
|
||||
mFileSelector = fileSelector;
|
||||
mContext = context;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onClick(final View view) {
|
||||
final String text = mFileSelector.getSelectedFileName();
|
||||
if (checkFileName(text)) {
|
||||
final String filePath = mFileSelector.getCurrentLocation().getAbsolutePath() + File.separator + text;
|
||||
final File file = new File(filePath);
|
||||
int messageText = 0;
|
||||
// Check file access rights.
|
||||
switch (mOperation) {
|
||||
case SAVE:
|
||||
if ((file.exists()) && (!file.canWrite())) {
|
||||
messageText = R.string.cannotSaveFileMessage;
|
||||
}
|
||||
break;
|
||||
case LOAD:
|
||||
if (!file.exists()) {
|
||||
messageText = R.string.missingFile;
|
||||
} else if (!file.canRead()) {
|
||||
messageText = R.string.accessDenied;
|
||||
}
|
||||
break;
|
||||
}
|
||||
if (messageText != 0) {
|
||||
// Access denied.
|
||||
final Toast t = Toast.makeText(mContext, messageText, Toast.LENGTH_SHORT);
|
||||
t.setGravity(Gravity.CENTER, 0, 0);
|
||||
t.show();
|
||||
} else {
|
||||
// Access granted.
|
||||
mFileSelector.mOnHandleFileListener.handleFile(filePath);
|
||||
mFileSelector.dismiss();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if file name is correct, e.g. if it isn't empty.
|
||||
*
|
||||
* @return False, if file name is empty true otherwise.
|
||||
*/
|
||||
boolean checkFileName(String text) {
|
||||
if (text.length() == 0) {
|
||||
final AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
|
||||
builder.setTitle(R.string.information);
|
||||
builder.setMessage(R.string.fileNameFirstMessage);
|
||||
builder.setNeutralButton(R.string.okButtonText, null);
|
||||
builder.show();
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,58 @@
|
|||
package com.samsung.sprc.fileselector;
|
||||
|
||||
import android.content.Context;
|
||||
import android.view.View;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
/**
|
||||
* Class which combines ImageView and TextView in LineralLayout with horizontal
|
||||
* orientation
|
||||
*/
|
||||
public class TextViewWithImage extends LinearLayout {
|
||||
|
||||
/**
|
||||
* Image - in this project will be used to display icon representing the
|
||||
* file type
|
||||
*/
|
||||
private ImageView mImage;
|
||||
/** Text - in this project will be used to display the file name */
|
||||
private TextView mText;
|
||||
|
||||
public TextViewWithImage(Context context) {
|
||||
super(context);
|
||||
setOrientation(HORIZONTAL);
|
||||
mImage = new ImageView(context);
|
||||
mText = new TextView(context);
|
||||
|
||||
LayoutParams lp = new LayoutParams(0, LayoutParams.WRAP_CONTENT, 1);
|
||||
lp.weight = 1;
|
||||
addView(mImage, lp);
|
||||
lp = new LayoutParams(0, LayoutParams.WRAP_CONTENT, 3);
|
||||
addView(mText, lp);
|
||||
}
|
||||
|
||||
/** Simple wrapper around the TextView.getText() method. */
|
||||
public CharSequence getText() {
|
||||
return mText.getText();
|
||||
}
|
||||
|
||||
/**
|
||||
* Simple wrapper around ImageView.setImageResource() method. but if resId
|
||||
* is equal -1 this method sets Images visibility as GONE
|
||||
*/
|
||||
public void setImageResource(int resId) {
|
||||
if (resId == -1) {
|
||||
mImage.setVisibility(View.GONE);
|
||||
return;
|
||||
}
|
||||
mImage.setImageResource(resId);
|
||||
}
|
||||
|
||||
/** Simple wrapper around TextView.setText() method. */
|
||||
public void setText(String aText) {
|
||||
mText.setText(aText);
|
||||
}
|
||||
|
||||
}
|
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 28 KiB |
After Width: | Height: | Size: 29 KiB |
After Width: | Height: | Size: 2.4 KiB |
After Width: | Height: | Size: 1.6 KiB |
|
@ -0,0 +1,35 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
|
||||
<title>TIC-80 tiny computer</title>
|
||||
|
||||
<style type="text/css">
|
||||
.modal{display:none;position:fixed;z-index:1;padding-top:100px;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#000;background-color:rgba(0,0,0,.4)}.modal-content{position:relative;background-color:#fefefe;margin:auto;padding:2px 16px;border:1px solid #888;width:500px;box-shadow:0 4px 8px 0 rgba(0,0,0,.2),0 6px 20px 0 rgba(0,0,0,.19);-webkit-animation-name:animatetop;-webkit-animation-duration:.4s;animation-name:animatetop;animation-duration:.4s}@keyframes animatetop{from{top:-300px;opacity:0}to{top:0;opacity:1}}.close{color:#000;float:right;font-size:28px;font-weight:700}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer}
|
||||
</style>
|
||||
</head>
|
||||
<body style="margin:0; padding:0;">
|
||||
|
||||
<div>
|
||||
<canvas style="margin: 0 auto; display: block;" id="canvas" oncontextmenu="event.preventDefault()" onmousedown="window.focus()"></canvas>
|
||||
</div>
|
||||
|
||||
<div id="add-modal" class="modal">
|
||||
<div class="modal-content">
|
||||
<span class="close">×</span>
|
||||
<p>Select a file to add to the computer</p>
|
||||
<p><input type="file" id="upload-input"></input></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
var Module = {canvas: document.getElementById('canvas')};
|
||||
</script>
|
||||
|
||||
<script async type="text/javascript" src="tic.js"></script>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,28 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleDisplayName</key>
|
||||
<string>TIC-80</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>tic</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string>tic.icns</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.nesbox.tic</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>TIC-80</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>0.45.0</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>0.45.0</string>
|
||||
<key>NSHumanReadableCopyright</key>
|
||||
<string>http://tic.computer © 2017</string>
|
||||
</dict>
|
||||
</plist>
|
|
@ -0,0 +1,37 @@
|
|||
APPNAME=tic
|
||||
APPBUNDLE=$(APPNAME).app
|
||||
APPBUNDLECONTENTS=$(APPBUNDLE)/Contents
|
||||
APPBUNDLEEXE=$(APPBUNDLECONTENTS)/MacOS
|
||||
APPBUNDLEICON=$(APPBUNDLECONTENTS)/Resources
|
||||
|
||||
all: dmg
|
||||
|
||||
dmg: appbundle
|
||||
hdiutil create -volname $(APPNAME) -srcfolder $(APPNAME).app -ov -format UDZO $(APPNAME).dmg
|
||||
|
||||
appbundle: $(APPNAME).icns
|
||||
rm -rf $(APPBUNDLE)
|
||||
mkdir $(APPBUNDLE)
|
||||
mkdir $(APPBUNDLE)/Contents
|
||||
mkdir $(APPBUNDLE)/Contents/MacOS
|
||||
mkdir $(APPBUNDLE)/Contents/Resources
|
||||
cp Info.plist $(APPBUNDLECONTENTS)/
|
||||
echo "APPL????" > $(APPBUNDLECONTENTS)/PkgInfo
|
||||
cp $(APPNAME).icns $(APPBUNDLEICON)/
|
||||
cp ../../bin/$(APPNAME) $(APPBUNDLEEXE)/$(APPNAME)
|
||||
|
||||
$(APPNAME).icns: $(APPNAME)Icon.png
|
||||
rm -rf $(APPNAME).iconset
|
||||
mkdir $(APPNAME).iconset
|
||||
sips -z 16 16 $(APPNAME)Icon.png --out $(APPNAME).iconset/icon_16x16.png
|
||||
sips -z 32 32 $(APPNAME)Icon.png --out $(APPNAME).iconset/icon_16x16@2x.png
|
||||
sips -z 32 32 $(APPNAME)Icon.png --out $(APPNAME).iconset/icon_32x32.png
|
||||
sips -z 64 64 $(APPNAME)Icon.png --out $(APPNAME).iconset/icon_32x32@2x.png
|
||||
sips -z 128 128 $(APPNAME)Icon.png --out $(APPNAME).iconset/icon_128x128.png
|
||||
sips -z 256 256 $(APPNAME)Icon.png --out $(APPNAME).iconset/icon_128x128@2x.png
|
||||
sips -z 256 256 $(APPNAME)Icon.png --out $(APPNAME).iconset/icon_256x256.png
|
||||
sips -z 512 512 $(APPNAME)Icon.png --out $(APPNAME).iconset/icon_256x256@2x.png
|
||||
sips -z 512 512 $(APPNAME)Icon.png --out $(APPNAME).iconset/icon_512x512.png
|
||||
cp $(APPNAME)Icon.png $(APPNAME).iconset/icon_512x512@2x.png
|
||||
iconutil -c icns -o $(APPNAME).icns $(APPNAME).iconset
|
||||
rm -r $(APPNAME).iconset
|
After Width: | Height: | Size: 17 KiB |
|
@ -0,0 +1,209 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|ARM">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>ARM</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|ARM">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>ARM</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\dgif_lib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\egif_lib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\gifalloc.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\gif_err.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\gif_font.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\gif_hash.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\openbsd-reallocarray.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\quantize.c" />
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{bc1084df-210a-48d6-a077-761d8c16947b}</ProjectGuid>
|
||||
<Keyword>StaticLibrary</Keyword>
|
||||
<RootNamespace>gif</RootNamespace>
|
||||
<DefaultLanguage>en-US</DefaultLanguage>
|
||||
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
|
||||
<AppContainerApplication>true</AppContainerApplication>
|
||||
<ApplicationType>Windows Store</ApplicationType>
|
||||
<WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.14393.0</WindowsTargetPlatformMinVersion>
|
||||
<ApplicationTypeRevision>10.0</ApplicationTypeRevision>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="Shared">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|arm'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE=1;%(ClCompile.PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|arm'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE=1;%(ClCompile.PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\dgif_lib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\egif_lib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\gif_err.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\gif_font.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\gif_hash.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\gifalloc.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\openbsd-reallocarray.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\quantize.c" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -0,0 +1,950 @@
|
|||
/*
|
||||
* Dirent interface for Microsoft Visual Studio
|
||||
* Version 1.21
|
||||
*
|
||||
* Copyright (C) 2006-2012 Toni Ronkko
|
||||
* This file is part of dirent. Dirent may be freely distributed
|
||||
* under the MIT license. For all details and documentation, see
|
||||
* https://github.com/tronkko/dirent
|
||||
*/
|
||||
#ifndef DIRENT_H
|
||||
#define DIRENT_H
|
||||
|
||||
/*
|
||||
* Include windows.h without Windows Sockets 1.1 to prevent conflicts with
|
||||
* Windows Sockets 2.0.
|
||||
*/
|
||||
#ifndef WIN32_LEAN_AND_MEAN
|
||||
# define WIN32_LEAN_AND_MEAN
|
||||
#endif
|
||||
#include <windows.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdarg.h>
|
||||
#include <wchar.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include <malloc.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <errno.h>
|
||||
|
||||
/* Indicates that d_type field is available in dirent structure */
|
||||
#define _DIRENT_HAVE_D_TYPE
|
||||
|
||||
/* Indicates that d_namlen field is available in dirent structure */
|
||||
#define _DIRENT_HAVE_D_NAMLEN
|
||||
|
||||
/* Entries missing from MSVC 6.0 */
|
||||
#if !defined(FILE_ATTRIBUTE_DEVICE)
|
||||
# define FILE_ATTRIBUTE_DEVICE 0x40
|
||||
#endif
|
||||
|
||||
/* File type and permission flags for stat(), general mask */
|
||||
#if !defined(S_IFMT)
|
||||
# define S_IFMT _S_IFMT
|
||||
#endif
|
||||
|
||||
/* Directory bit */
|
||||
#if !defined(S_IFDIR)
|
||||
# define S_IFDIR _S_IFDIR
|
||||
#endif
|
||||
|
||||
/* Character device bit */
|
||||
#if !defined(S_IFCHR)
|
||||
# define S_IFCHR _S_IFCHR
|
||||
#endif
|
||||
|
||||
/* Pipe bit */
|
||||
#if !defined(S_IFFIFO)
|
||||
# define S_IFFIFO _S_IFFIFO
|
||||
#endif
|
||||
|
||||
/* Regular file bit */
|
||||
#if !defined(S_IFREG)
|
||||
# define S_IFREG _S_IFREG
|
||||
#endif
|
||||
|
||||
/* Read permission */
|
||||
#if !defined(S_IREAD)
|
||||
# define S_IREAD _S_IREAD
|
||||
#endif
|
||||
|
||||
/* Write permission */
|
||||
#if !defined(S_IWRITE)
|
||||
# define S_IWRITE _S_IWRITE
|
||||
#endif
|
||||
|
||||
/* Execute permission */
|
||||
#if !defined(S_IEXEC)
|
||||
# define S_IEXEC _S_IEXEC
|
||||
#endif
|
||||
|
||||
/* Pipe */
|
||||
#if !defined(S_IFIFO)
|
||||
# define S_IFIFO _S_IFIFO
|
||||
#endif
|
||||
|
||||
/* Block device */
|
||||
#if !defined(S_IFBLK)
|
||||
# define S_IFBLK 0
|
||||
#endif
|
||||
|
||||
/* Link */
|
||||
#if !defined(S_IFLNK)
|
||||
# define S_IFLNK 0
|
||||
#endif
|
||||
|
||||
/* Socket */
|
||||
#if !defined(S_IFSOCK)
|
||||
# define S_IFSOCK 0
|
||||
#endif
|
||||
|
||||
/* Read user permission */
|
||||
#if !defined(S_IRUSR)
|
||||
# define S_IRUSR S_IREAD
|
||||
#endif
|
||||
|
||||
/* Write user permission */
|
||||
#if !defined(S_IWUSR)
|
||||
# define S_IWUSR S_IWRITE
|
||||
#endif
|
||||
|
||||
/* Execute user permission */
|
||||
#if !defined(S_IXUSR)
|
||||
# define S_IXUSR 0
|
||||
#endif
|
||||
|
||||
/* Read group permission */
|
||||
#if !defined(S_IRGRP)
|
||||
# define S_IRGRP 0
|
||||
#endif
|
||||
|
||||
/* Write group permission */
|
||||
#if !defined(S_IWGRP)
|
||||
# define S_IWGRP 0
|
||||
#endif
|
||||
|
||||
/* Execute group permission */
|
||||
#if !defined(S_IXGRP)
|
||||
# define S_IXGRP 0
|
||||
#endif
|
||||
|
||||
/* Read others permission */
|
||||
#if !defined(S_IROTH)
|
||||
# define S_IROTH 0
|
||||
#endif
|
||||
|
||||
/* Write others permission */
|
||||
#if !defined(S_IWOTH)
|
||||
# define S_IWOTH 0
|
||||
#endif
|
||||
|
||||
/* Execute others permission */
|
||||
#if !defined(S_IXOTH)
|
||||
# define S_IXOTH 0
|
||||
#endif
|
||||
|
||||
/* Maximum length of file name */
|
||||
#if !defined(PATH_MAX)
|
||||
# define PATH_MAX MAX_PATH
|
||||
#endif
|
||||
#if !defined(FILENAME_MAX)
|
||||
# define FILENAME_MAX MAX_PATH
|
||||
#endif
|
||||
#if !defined(NAME_MAX)
|
||||
# define NAME_MAX FILENAME_MAX
|
||||
#endif
|
||||
|
||||
/* File type flags for d_type */
|
||||
#define DT_UNKNOWN 0
|
||||
#define DT_REG S_IFREG
|
||||
#define DT_DIR S_IFDIR
|
||||
#define DT_FIFO S_IFIFO
|
||||
#define DT_SOCK S_IFSOCK
|
||||
#define DT_CHR S_IFCHR
|
||||
#define DT_BLK S_IFBLK
|
||||
#define DT_LNK S_IFLNK
|
||||
|
||||
/* Macros for converting between st_mode and d_type */
|
||||
#define IFTODT(mode) ((mode) & S_IFMT)
|
||||
#define DTTOIF(type) (type)
|
||||
|
||||
/*
|
||||
* File type macros. Note that block devices, sockets and links cannot be
|
||||
* distinguished on Windows and the macros S_ISBLK, S_ISSOCK and S_ISLNK are
|
||||
* only defined for compatibility. These macros should always return false
|
||||
* on Windows.
|
||||
*/
|
||||
#if !defined(S_ISFIFO)
|
||||
# define S_ISFIFO(mode) (((mode) & S_IFMT) == S_IFIFO)
|
||||
#endif
|
||||
#if !defined(S_ISDIR)
|
||||
# define S_ISDIR(mode) (((mode) & S_IFMT) == S_IFDIR)
|
||||
#endif
|
||||
#if !defined(S_ISREG)
|
||||
# define S_ISREG(mode) (((mode) & S_IFMT) == S_IFREG)
|
||||
#endif
|
||||
#if !defined(S_ISLNK)
|
||||
# define S_ISLNK(mode) (((mode) & S_IFMT) == S_IFLNK)
|
||||
#endif
|
||||
#if !defined(S_ISSOCK)
|
||||
# define S_ISSOCK(mode) (((mode) & S_IFMT) == S_IFSOCK)
|
||||
#endif
|
||||
#if !defined(S_ISCHR)
|
||||
# define S_ISCHR(mode) (((mode) & S_IFMT) == S_IFCHR)
|
||||
#endif
|
||||
#if !defined(S_ISBLK)
|
||||
# define S_ISBLK(mode) (((mode) & S_IFMT) == S_IFBLK)
|
||||
#endif
|
||||
|
||||
/* Return the exact length of d_namlen without zero terminator */
|
||||
#define _D_EXACT_NAMLEN(p) ((p)->d_namlen)
|
||||
|
||||
/* Return number of bytes needed to store d_namlen */
|
||||
#define _D_ALLOC_NAMLEN(p) (PATH_MAX)
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
/* Wide-character version */
|
||||
struct _wdirent {
|
||||
/* Always zero */
|
||||
long d_ino;
|
||||
|
||||
/* Structure size */
|
||||
unsigned short d_reclen;
|
||||
|
||||
/* Length of name without \0 */
|
||||
size_t d_namlen;
|
||||
|
||||
/* File type */
|
||||
int d_type;
|
||||
|
||||
/* File name */
|
||||
wchar_t d_name[PATH_MAX];
|
||||
};
|
||||
typedef struct _wdirent _wdirent;
|
||||
|
||||
struct _WDIR {
|
||||
/* Current directory entry */
|
||||
struct _wdirent ent;
|
||||
|
||||
/* Private file data */
|
||||
WIN32_FIND_DATAW data;
|
||||
|
||||
/* True if data is valid */
|
||||
int cached;
|
||||
|
||||
/* Win32 search handle */
|
||||
HANDLE handle;
|
||||
|
||||
/* Initial directory name */
|
||||
wchar_t *patt;
|
||||
};
|
||||
typedef struct _WDIR _WDIR;
|
||||
|
||||
static _WDIR *_wopendir(const wchar_t *dirname);
|
||||
static struct _wdirent *_wreaddir(_WDIR *dirp);
|
||||
static int _wclosedir(_WDIR *dirp);
|
||||
static void _wrewinddir(_WDIR* dirp);
|
||||
|
||||
|
||||
/* For compatibility with Symbian */
|
||||
#define wdirent _wdirent
|
||||
#define WDIR _WDIR
|
||||
#define wopendir _wopendir
|
||||
#define wreaddir _wreaddir
|
||||
#define wclosedir _wclosedir
|
||||
#define wrewinddir _wrewinddir
|
||||
|
||||
|
||||
/* Multi-byte character versions */
|
||||
struct dirent {
|
||||
/* Always zero */
|
||||
long d_ino;
|
||||
|
||||
/* Structure size */
|
||||
unsigned short d_reclen;
|
||||
|
||||
/* Length of name without \0 */
|
||||
size_t d_namlen;
|
||||
|
||||
/* File type */
|
||||
int d_type;
|
||||
|
||||
/* File name */
|
||||
char d_name[PATH_MAX];
|
||||
};
|
||||
typedef struct dirent dirent;
|
||||
|
||||
struct DIR {
|
||||
struct dirent ent;
|
||||
struct _WDIR *wdirp;
|
||||
};
|
||||
typedef struct DIR DIR;
|
||||
|
||||
static DIR *opendir(const char *dirname);
|
||||
static struct dirent *readdir(DIR *dirp);
|
||||
static int closedir(DIR *dirp);
|
||||
static void rewinddir(DIR* dirp);
|
||||
|
||||
|
||||
/* Internal utility functions */
|
||||
static WIN32_FIND_DATAW *dirent_first(_WDIR *dirp);
|
||||
static WIN32_FIND_DATAW *dirent_next(_WDIR *dirp);
|
||||
|
||||
static int dirent_mbstowcs_s(
|
||||
size_t *pReturnValue,
|
||||
wchar_t *wcstr,
|
||||
size_t sizeInWords,
|
||||
const char *mbstr,
|
||||
size_t count);
|
||||
|
||||
static int dirent_wcstombs_s(
|
||||
size_t *pReturnValue,
|
||||
char *mbstr,
|
||||
size_t sizeInBytes,
|
||||
const wchar_t *wcstr,
|
||||
size_t count);
|
||||
|
||||
static void dirent_set_errno(int error);
|
||||
|
||||
/*
|
||||
* Open directory stream DIRNAME for read and return a pointer to the
|
||||
* internal working area that is used to retrieve individual directory
|
||||
* entries.
|
||||
*/
|
||||
static _WDIR*
|
||||
_wopendir(
|
||||
const wchar_t *dirname)
|
||||
{
|
||||
_WDIR *dirp = NULL;
|
||||
int error;
|
||||
|
||||
/* Must have directory name */
|
||||
if (dirname == NULL || dirname[0] == '\0') {
|
||||
dirent_set_errno(ENOENT);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* Allocate new _WDIR structure */
|
||||
dirp = (_WDIR*)malloc(sizeof(struct _WDIR));
|
||||
if (dirp != NULL) {
|
||||
DWORD n;
|
||||
|
||||
/* Reset _WDIR structure */
|
||||
dirp->handle = INVALID_HANDLE_VALUE;
|
||||
dirp->patt = NULL;
|
||||
dirp->cached = 0;
|
||||
|
||||
/* Compute the length of full path plus zero terminator
|
||||
*
|
||||
* Note that on WinRT there's no way to convert relative paths
|
||||
* into absolute paths, so just assume its an absolute path.
|
||||
*/
|
||||
# if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP)
|
||||
n = wcslen(dirname);
|
||||
# else
|
||||
n = GetFullPathNameW(dirname, 0, NULL, NULL);
|
||||
# endif
|
||||
|
||||
/* Allocate room for absolute directory name and search pattern */
|
||||
dirp->patt = (wchar_t*)malloc(sizeof(wchar_t) * n + 16);
|
||||
if (dirp->patt) {
|
||||
|
||||
/*
|
||||
* Convert relative directory name to an absolute one. This
|
||||
* allows rewinddir() to function correctly even when current
|
||||
* working directory is changed between opendir() and rewinddir().
|
||||
*
|
||||
* Note that on WinRT there's no way to convert relative paths
|
||||
* into absolute paths, so just assume its an absolute path.
|
||||
*/
|
||||
# if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP)
|
||||
wcsncpy_s(dirp->patt, n + 1, dirname, n);
|
||||
# else
|
||||
n = GetFullPathNameW(dirname, n, dirp->patt, NULL);
|
||||
# endif
|
||||
if (n > 0) {
|
||||
wchar_t *p;
|
||||
|
||||
/* Append search pattern \* to the directory name */
|
||||
p = dirp->patt + n;
|
||||
if (dirp->patt < p) {
|
||||
switch (p[-1]) {
|
||||
case '\\':
|
||||
case '/':
|
||||
case ':':
|
||||
/* Directory ends in path separator, e.g. c:\temp\ */
|
||||
/*NOP*/;
|
||||
break;
|
||||
|
||||
default:
|
||||
/* Directory name doesn't end in path separator */
|
||||
*p++ = '\\';
|
||||
}
|
||||
}
|
||||
*p++ = '*';
|
||||
*p = '\0';
|
||||
|
||||
/* Open directory stream and retrieve the first entry */
|
||||
if (dirent_first(dirp)) {
|
||||
/* Directory stream opened successfully */
|
||||
error = 0;
|
||||
}
|
||||
else {
|
||||
/* Cannot retrieve first entry */
|
||||
error = 1;
|
||||
dirent_set_errno(ENOENT);
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
/* Cannot retrieve full path name */
|
||||
dirent_set_errno(ENOENT);
|
||||
error = 1;
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
/* Cannot allocate memory for search pattern */
|
||||
error = 1;
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
/* Cannot allocate _WDIR structure */
|
||||
error = 1;
|
||||
}
|
||||
|
||||
/* Clean up in case of error */
|
||||
if (error && dirp) {
|
||||
_wclosedir(dirp);
|
||||
dirp = NULL;
|
||||
}
|
||||
|
||||
return dirp;
|
||||
}
|
||||
|
||||
/*
|
||||
* Read next directory entry. The directory entry is returned in dirent
|
||||
* structure in the d_name field. Individual directory entries returned by
|
||||
* this function include regular files, sub-directories, pseudo-directories
|
||||
* "." and ".." as well as volume labels, hidden files and system files.
|
||||
*/
|
||||
static struct _wdirent*
|
||||
_wreaddir(
|
||||
_WDIR *dirp)
|
||||
{
|
||||
WIN32_FIND_DATAW *datap;
|
||||
struct _wdirent *entp;
|
||||
|
||||
/* Read next directory entry */
|
||||
datap = dirent_next(dirp);
|
||||
if (datap) {
|
||||
size_t n;
|
||||
DWORD attr;
|
||||
|
||||
/* Pointer to directory entry to return */
|
||||
entp = &dirp->ent;
|
||||
|
||||
/*
|
||||
* Copy file name as wide-character string. If the file name is too
|
||||
* long to fit in to the destination buffer, then truncate file name
|
||||
* to PATH_MAX characters and zero-terminate the buffer.
|
||||
*/
|
||||
n = 0;
|
||||
while (n + 1 < PATH_MAX && datap->cFileName[n] != 0) {
|
||||
entp->d_name[n] = datap->cFileName[n];
|
||||
n++;
|
||||
}
|
||||
dirp->ent.d_name[n] = 0;
|
||||
|
||||
/* Length of file name excluding zero terminator */
|
||||
entp->d_namlen = n;
|
||||
|
||||
/* File type */
|
||||
attr = datap->dwFileAttributes;
|
||||
if ((attr & FILE_ATTRIBUTE_DEVICE) != 0) {
|
||||
entp->d_type = DT_CHR;
|
||||
}
|
||||
else if ((attr & FILE_ATTRIBUTE_DIRECTORY) != 0) {
|
||||
entp->d_type = DT_DIR;
|
||||
}
|
||||
else {
|
||||
entp->d_type = DT_REG;
|
||||
}
|
||||
|
||||
/* Reset dummy fields */
|
||||
entp->d_ino = 0;
|
||||
entp->d_reclen = sizeof(struct _wdirent);
|
||||
|
||||
}
|
||||
else {
|
||||
|
||||
/* Last directory entry read */
|
||||
entp = NULL;
|
||||
|
||||
}
|
||||
|
||||
return entp;
|
||||
}
|
||||
|
||||
/*
|
||||
* Close directory stream opened by opendir() function. This invalidates the
|
||||
* DIR structure as well as any directory entry read previously by
|
||||
* _wreaddir().
|
||||
*/
|
||||
static int
|
||||
_wclosedir(
|
||||
_WDIR *dirp)
|
||||
{
|
||||
int ok;
|
||||
if (dirp) {
|
||||
|
||||
/* Release search handle */
|
||||
if (dirp->handle != INVALID_HANDLE_VALUE) {
|
||||
FindClose(dirp->handle);
|
||||
dirp->handle = INVALID_HANDLE_VALUE;
|
||||
}
|
||||
|
||||
/* Release search pattern */
|
||||
if (dirp->patt) {
|
||||
free(dirp->patt);
|
||||
dirp->patt = NULL;
|
||||
}
|
||||
|
||||
/* Release directory structure */
|
||||
free(dirp);
|
||||
ok = /*success*/0;
|
||||
|
||||
}
|
||||
else {
|
||||
/* Invalid directory stream */
|
||||
dirent_set_errno(EBADF);
|
||||
ok = /*failure*/-1;
|
||||
}
|
||||
return ok;
|
||||
}
|
||||
|
||||
/*
|
||||
* Rewind directory stream such that _wreaddir() returns the very first
|
||||
* file name again.
|
||||
*/
|
||||
static void
|
||||
_wrewinddir(
|
||||
_WDIR* dirp)
|
||||
{
|
||||
if (dirp) {
|
||||
/* Release existing search handle */
|
||||
if (dirp->handle != INVALID_HANDLE_VALUE) {
|
||||
FindClose(dirp->handle);
|
||||
}
|
||||
|
||||
/* Open new search handle */
|
||||
dirent_first(dirp);
|
||||
}
|
||||
}
|
||||
|
||||
/* Get first directory entry (internal) */
|
||||
static WIN32_FIND_DATAW*
|
||||
dirent_first(
|
||||
_WDIR *dirp)
|
||||
{
|
||||
WIN32_FIND_DATAW *datap;
|
||||
|
||||
/* Open directory and retrieve the first entry */
|
||||
dirp->handle = FindFirstFileExW(
|
||||
dirp->patt, FindExInfoStandard, &dirp->data,
|
||||
FindExSearchNameMatch, NULL, 0);
|
||||
if (dirp->handle != INVALID_HANDLE_VALUE) {
|
||||
|
||||
/* a directory entry is now waiting in memory */
|
||||
datap = &dirp->data;
|
||||
dirp->cached = 1;
|
||||
|
||||
}
|
||||
else {
|
||||
|
||||
/* Failed to re-open directory: no directory entry in memory */
|
||||
dirp->cached = 0;
|
||||
datap = NULL;
|
||||
|
||||
}
|
||||
return datap;
|
||||
}
|
||||
|
||||
/* Get next directory entry (internal) */
|
||||
static WIN32_FIND_DATAW*
|
||||
dirent_next(
|
||||
_WDIR *dirp)
|
||||
{
|
||||
WIN32_FIND_DATAW *p;
|
||||
|
||||
/* Get next directory entry */
|
||||
if (dirp->cached != 0) {
|
||||
|
||||
/* A valid directory entry already in memory */
|
||||
p = &dirp->data;
|
||||
dirp->cached = 0;
|
||||
|
||||
}
|
||||
else if (dirp->handle != INVALID_HANDLE_VALUE) {
|
||||
|
||||
/* Get the next directory entry from stream */
|
||||
if (FindNextFileW(dirp->handle, &dirp->data) != FALSE) {
|
||||
/* Got a file */
|
||||
p = &dirp->data;
|
||||
}
|
||||
else {
|
||||
/* The very last entry has been processed or an error occured */
|
||||
FindClose(dirp->handle);
|
||||
dirp->handle = INVALID_HANDLE_VALUE;
|
||||
p = NULL;
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
|
||||
/* End of directory stream reached */
|
||||
p = NULL;
|
||||
|
||||
}
|
||||
|
||||
return p;
|
||||
}
|
||||
|
||||
/*
|
||||
* Open directory stream using plain old C-string.
|
||||
*/
|
||||
static DIR*
|
||||
opendir(
|
||||
const char *dirname)
|
||||
{
|
||||
struct DIR *dirp;
|
||||
int error;
|
||||
|
||||
/* Must have directory name */
|
||||
if (dirname == NULL || dirname[0] == '\0') {
|
||||
dirent_set_errno(ENOENT);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* Allocate memory for DIR structure */
|
||||
dirp = (DIR*)malloc(sizeof(struct DIR));
|
||||
if (dirp) {
|
||||
wchar_t wname[PATH_MAX];
|
||||
size_t n;
|
||||
|
||||
/* Convert directory name to wide-character string */
|
||||
error = dirent_mbstowcs_s(&n, wname, PATH_MAX, dirname, PATH_MAX);
|
||||
if (!error) {
|
||||
|
||||
/* Open directory stream using wide-character name */
|
||||
dirp->wdirp = _wopendir(wname);
|
||||
if (dirp->wdirp) {
|
||||
/* Directory stream opened */
|
||||
error = 0;
|
||||
}
|
||||
else {
|
||||
/* Failed to open directory stream */
|
||||
error = 1;
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
/*
|
||||
* Cannot convert file name to wide-character string. This
|
||||
* occurs if the string contains invalid multi-byte sequences or
|
||||
* the output buffer is too small to contain the resulting
|
||||
* string.
|
||||
*/
|
||||
error = 1;
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
/* Cannot allocate DIR structure */
|
||||
error = 1;
|
||||
}
|
||||
|
||||
/* Clean up in case of error */
|
||||
if (error && dirp) {
|
||||
free(dirp);
|
||||
dirp = NULL;
|
||||
}
|
||||
|
||||
return dirp;
|
||||
}
|
||||
|
||||
/*
|
||||
* Read next directory entry.
|
||||
*
|
||||
* When working with text consoles, please note that file names returned by
|
||||
* readdir() are represented in the default ANSI code page while any output to
|
||||
* console is typically formatted on another code page. Thus, non-ASCII
|
||||
* characters in file names will not usually display correctly on console. The
|
||||
* problem can be fixed in two ways: (1) change the character set of console
|
||||
* to 1252 using chcp utility and use Lucida Console font, or (2) use
|
||||
* _cprintf function when writing to console. The _cprinf() will re-encode
|
||||
* ANSI strings to the console code page so many non-ASCII characters will
|
||||
* display correcly.
|
||||
*/
|
||||
static struct dirent*
|
||||
readdir(
|
||||
DIR *dirp)
|
||||
{
|
||||
WIN32_FIND_DATAW *datap;
|
||||
struct dirent *entp;
|
||||
|
||||
/* Read next directory entry */
|
||||
datap = dirent_next(dirp->wdirp);
|
||||
if (datap) {
|
||||
size_t n;
|
||||
int error;
|
||||
|
||||
/* Attempt to convert file name to multi-byte string */
|
||||
error = dirent_wcstombs_s(
|
||||
&n, dirp->ent.d_name, PATH_MAX, datap->cFileName, PATH_MAX);
|
||||
|
||||
/*
|
||||
* If the file name cannot be represented by a multi-byte string,
|
||||
* then attempt to use old 8+3 file name. This allows traditional
|
||||
* Unix-code to access some file names despite of unicode
|
||||
* characters, although file names may seem unfamiliar to the user.
|
||||
*
|
||||
* Be ware that the code below cannot come up with a short file
|
||||
* name unless the file system provides one. At least
|
||||
* VirtualBox shared folders fail to do this.
|
||||
*/
|
||||
if (error && datap->cAlternateFileName[0] != '\0') {
|
||||
error = dirent_wcstombs_s(
|
||||
&n, dirp->ent.d_name, PATH_MAX,
|
||||
datap->cAlternateFileName, PATH_MAX);
|
||||
}
|
||||
|
||||
if (!error) {
|
||||
DWORD attr;
|
||||
|
||||
/* Initialize directory entry for return */
|
||||
entp = &dirp->ent;
|
||||
|
||||
/* Length of file name excluding zero terminator */
|
||||
entp->d_namlen = n - 1;
|
||||
|
||||
/* File attributes */
|
||||
attr = datap->dwFileAttributes;
|
||||
if ((attr & FILE_ATTRIBUTE_DEVICE) != 0) {
|
||||
entp->d_type = DT_CHR;
|
||||
}
|
||||
else if ((attr & FILE_ATTRIBUTE_DIRECTORY) != 0) {
|
||||
entp->d_type = DT_DIR;
|
||||
}
|
||||
else {
|
||||
entp->d_type = DT_REG;
|
||||
}
|
||||
|
||||
/* Reset dummy fields */
|
||||
entp->d_ino = 0;
|
||||
entp->d_reclen = sizeof(struct dirent);
|
||||
|
||||
}
|
||||
else {
|
||||
/*
|
||||
* Cannot convert file name to multi-byte string so construct
|
||||
* an errornous directory entry and return that. Note that
|
||||
* we cannot return NULL as that would stop the processing
|
||||
* of directory entries completely.
|
||||
*/
|
||||
entp = &dirp->ent;
|
||||
entp->d_name[0] = '?';
|
||||
entp->d_name[1] = '\0';
|
||||
entp->d_namlen = 1;
|
||||
entp->d_type = DT_UNKNOWN;
|
||||
entp->d_ino = 0;
|
||||
entp->d_reclen = 0;
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
/* No more directory entries */
|
||||
entp = NULL;
|
||||
}
|
||||
|
||||
return entp;
|
||||
}
|
||||
|
||||
/*
|
||||
* Close directory stream.
|
||||
*/
|
||||
static int
|
||||
closedir(
|
||||
DIR *dirp)
|
||||
{
|
||||
int ok;
|
||||
if (dirp) {
|
||||
|
||||
/* Close wide-character directory stream */
|
||||
ok = _wclosedir(dirp->wdirp);
|
||||
dirp->wdirp = NULL;
|
||||
|
||||
/* Release multi-byte character version */
|
||||
free(dirp);
|
||||
|
||||
}
|
||||
else {
|
||||
|
||||
/* Invalid directory stream */
|
||||
dirent_set_errno(EBADF);
|
||||
ok = /*failure*/-1;
|
||||
|
||||
}
|
||||
return ok;
|
||||
}
|
||||
|
||||
/*
|
||||
* Rewind directory stream to beginning.
|
||||
*/
|
||||
static void
|
||||
rewinddir(
|
||||
DIR* dirp)
|
||||
{
|
||||
/* Rewind wide-character string directory stream */
|
||||
_wrewinddir(dirp->wdirp);
|
||||
}
|
||||
|
||||
/* Convert multi-byte string to wide character string */
|
||||
static int
|
||||
dirent_mbstowcs_s(
|
||||
size_t *pReturnValue,
|
||||
wchar_t *wcstr,
|
||||
size_t sizeInWords,
|
||||
const char *mbstr,
|
||||
size_t count)
|
||||
{
|
||||
int error;
|
||||
|
||||
#if defined(_MSC_VER) && _MSC_VER >= 1400
|
||||
|
||||
/* Microsoft Visual Studio 2005 or later */
|
||||
error = mbstowcs_s(pReturnValue, wcstr, sizeInWords, mbstr, count);
|
||||
|
||||
#else
|
||||
|
||||
/* Older Visual Studio or non-Microsoft compiler */
|
||||
size_t n;
|
||||
|
||||
/* Convert to wide-character string (or count characters) */
|
||||
n = mbstowcs(wcstr, mbstr, sizeInWords);
|
||||
if (!wcstr || n < count) {
|
||||
|
||||
/* Zero-terminate output buffer */
|
||||
if (wcstr && sizeInWords) {
|
||||
if (n >= sizeInWords) {
|
||||
n = sizeInWords - 1;
|
||||
}
|
||||
wcstr[n] = 0;
|
||||
}
|
||||
|
||||
/* Length of resuting multi-byte string WITH zero terminator */
|
||||
if (pReturnValue) {
|
||||
*pReturnValue = n + 1;
|
||||
}
|
||||
|
||||
/* Success */
|
||||
error = 0;
|
||||
|
||||
}
|
||||
else {
|
||||
|
||||
/* Could not convert string */
|
||||
error = 1;
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
/* Convert wide-character string to multi-byte string */
|
||||
static int
|
||||
dirent_wcstombs_s(
|
||||
size_t *pReturnValue,
|
||||
char *mbstr,
|
||||
size_t sizeInBytes, /* max size of mbstr */
|
||||
const wchar_t *wcstr,
|
||||
size_t count)
|
||||
{
|
||||
int error;
|
||||
|
||||
#if defined(_MSC_VER) && _MSC_VER >= 1400
|
||||
|
||||
/* Microsoft Visual Studio 2005 or later */
|
||||
error = wcstombs_s(pReturnValue, mbstr, sizeInBytes, wcstr, count);
|
||||
|
||||
#else
|
||||
|
||||
/* Older Visual Studio or non-Microsoft compiler */
|
||||
size_t n;
|
||||
|
||||
/* Convert to multi-byte string (or count the number of bytes needed) */
|
||||
n = wcstombs(mbstr, wcstr, sizeInBytes);
|
||||
if (!mbstr || n < count) {
|
||||
|
||||
/* Zero-terminate output buffer */
|
||||
if (mbstr && sizeInBytes) {
|
||||
if (n >= sizeInBytes) {
|
||||
n = sizeInBytes - 1;
|
||||
}
|
||||
mbstr[n] = '\0';
|
||||
}
|
||||
|
||||
/* Length of resulting multi-bytes string WITH zero-terminator */
|
||||
if (pReturnValue) {
|
||||
*pReturnValue = n + 1;
|
||||
}
|
||||
|
||||
/* Success */
|
||||
error = 0;
|
||||
|
||||
}
|
||||
else {
|
||||
|
||||
/* Cannot convert string */
|
||||
error = 1;
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
/* Set errno variable */
|
||||
static void
|
||||
dirent_set_errno(
|
||||
int error)
|
||||
{
|
||||
#if defined(_MSC_VER) && _MSC_VER >= 1400
|
||||
|
||||
/* Microsoft Visual Studio 2005 and later */
|
||||
_set_errno(error);
|
||||
|
||||
#else
|
||||
|
||||
/* Non-Microsoft compiler or older Microsoft compiler */
|
||||
errno = error;
|
||||
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif /*DIRENT_H*/
|
|
@ -0,0 +1,248 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|ARM">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>ARM</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|ARM">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>ARM</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lapi.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lauxlib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lbaselib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lbitlib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lcode.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lcorolib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lctype.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ldblib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ldebug.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ldo.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ldump.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lfunc.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lgc.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\llex.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lmathlib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lmem.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\loadlib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lobject.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lopcodes.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lparser.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lpcap.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lpcode.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lpprint.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lptree.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lpvm.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lstate.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lstring.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lstrlib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ltable.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ltablib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ltm.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lundump.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lutf8lib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lvm.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lzio.c" />
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{53802f21-41da-4ac1-8b62-0dac2ccb8af8}</ProjectGuid>
|
||||
<Keyword>StaticLibrary</Keyword>
|
||||
<RootNamespace>lua</RootNamespace>
|
||||
<DefaultLanguage>en-US</DefaultLanguage>
|
||||
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
|
||||
<AppContainerApplication>true</AppContainerApplication>
|
||||
<ApplicationType>Windows Store</ApplicationType>
|
||||
<WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.14393.0</WindowsTargetPlatformMinVersion>
|
||||
<ApplicationTypeRevision>10.0</ApplicationTypeRevision>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="Shared">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>LUA_COMPAT_5_2;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\lua;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<DisableSpecificWarnings>4244;4267</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>LUA_COMPAT_5_2;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\lua;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<DisableSpecificWarnings>4244;4267</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|arm'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>LUA_COMPAT_5_2;_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE=1;%(ClCompile.PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\lua;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<DisableSpecificWarnings>4244;4267</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|arm'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>LUA_COMPAT_5_2;_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE=1;%(ClCompile.PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\lua;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<DisableSpecificWarnings>4244;4267</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>LUA_COMPAT_5_2;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\lua;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<DisableSpecificWarnings>4244;4267</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>LUA_COMPAT_5_2;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\lua;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<DisableSpecificWarnings>4244;4267</DisableSpecificWarnings>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
|
@ -0,0 +1,125 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Resource Files">
|
||||
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tga;tiff;tif;png;wav;mfcribbon-ms</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="lua">
|
||||
<UniqueIdentifier>{f1922cfd-595d-4973-b7d1-2dfcc365256f}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="lua\lib">
|
||||
<UniqueIdentifier>{69e69bed-ec9a-42f1-a359-fa3fff9e70d8}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="lpeg">
|
||||
<UniqueIdentifier>{3d301d9e-c295-4dc6-b19f-bdb40f8cfe85}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lapi.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lcode.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lctype.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ldblib.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ldebug.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ldo.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ldump.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lfunc.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lgc.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\llex.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lmem.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lobject.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lopcodes.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lparser.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lstate.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lstring.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ltable.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ltm.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lundump.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lvm.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lzio.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lauxlib.c">
|
||||
<Filter>lua\lib</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lbaselib.c">
|
||||
<Filter>lua\lib</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lbitlib.c">
|
||||
<Filter>lua\lib</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lcorolib.c">
|
||||
<Filter>lua\lib</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lmathlib.c">
|
||||
<Filter>lua\lib</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lstrlib.c">
|
||||
<Filter>lua\lib</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ltablib.c">
|
||||
<Filter>lua\lib</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lutf8lib.c">
|
||||
<Filter>lua\lib</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\loadlib.c">
|
||||
<Filter>lua\lib</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lpcap.c">
|
||||
<Filter>lpeg</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lpcode.c">
|
||||
<Filter>lpeg</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lpprint.c">
|
||||
<Filter>lpeg</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lptree.c">
|
||||
<Filter>lpeg</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lpvm.c">
|
||||
<Filter>lpeg</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 20 KiB |
After Width: | Height: | Size: 17 KiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 20 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 17 KiB |
|
@ -0,0 +1,28 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10" xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest" xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10" IgnorableNamespaces="uap mp">
|
||||
<Identity Name="50446Nesbox.TICcomputer" Publisher="CN=1040DC4A-04A1-4B33-9107-C1A9D74775D4" Version="0.45.1.0" />
|
||||
<mp:PhoneIdentity PhoneProductId="93515db0-8ee3-478b-933a-5776b58247b2" PhonePublisherId="00000000-0000-0000-0000-000000000000" />
|
||||
<Properties>
|
||||
<DisplayName>TIC-80</DisplayName>
|
||||
<PublisherDisplayName>Nesbox</PublisherDisplayName>
|
||||
<Logo>Assets\StoreLogo.png</Logo>
|
||||
</Properties>
|
||||
<Dependencies>
|
||||
<TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.0.0" MaxVersionTested="10.0.0.0" />
|
||||
</Dependencies>
|
||||
<Resources>
|
||||
<Resource Language="x-generate" />
|
||||
</Resources>
|
||||
<Applications>
|
||||
<Application Id="App" Executable="$targetnametoken$.exe" EntryPoint="tic.App">
|
||||
<uap:VisualElements DisplayName="TIC-80" Square150x150Logo="Assets\Square150x150Logo.png" Square44x44Logo="Assets\Square44x44Logo.png" Description="tiny computer for making, playing and sharing tiny games" BackgroundColor="#deeed6">
|
||||
<uap:DefaultTile Wide310x150Logo="Assets\Wide310x150Logo.png" ShortName="TIC-80">
|
||||
</uap:DefaultTile>
|
||||
<uap:SplashScreen Image="Assets\SplashScreen.png" BackgroundColor="#deeed6" />
|
||||
</uap:VisualElements>
|
||||
</Application>
|
||||
</Applications>
|
||||
<Capabilities>
|
||||
<Capability Name="internetClient" />
|
||||
</Capabilities>
|
||||
</Package>
|
|
@ -0,0 +1,110 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 14
|
||||
VisualStudioVersion = 14.0.25420.1
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tic", "tic.vcxproj", "{7F895641-6C8F-4481-BD81-57785A4BEB09}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib-uwp", "..\..\..\..\..\sdk\zlib-1.2.8\winrt\zlib-uwp\zlib-uwp.vcxproj", "{978F53DB-F959-4CB4-84A7-463AF29949BE}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDL2-UWP", "..\..\..\..\..\sdk\SDL2-2.0.5\VisualC-WinRT\UWP_VS2015\SDL-UWP.vcxproj", "{89E9B32E-A86A-47C3-A948-D2B1622925CE}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lua", "..\lua\lua.vcxproj", "{53802F21-41DA-4AC1-8B62-0DAC2CCB8AF8}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gif", "..\gif\gif.vcxproj", "{BC1084DF-210A-48D6-A077-761D8C16947B}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tic80", "..\tic80\tic80.vcxproj", "{9C39ACF1-5F52-4A2B-A467-9F2805D6174B}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|ARM = Debug|ARM
|
||||
Debug|x64 = Debug|x64
|
||||
Debug|x86 = Debug|x86
|
||||
Release|ARM = Release|ARM
|
||||
Release|x64 = Release|x64
|
||||
Release|x86 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Debug|ARM.ActiveCfg = Debug|ARM
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Debug|ARM.Build.0 = Debug|ARM
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Debug|ARM.Deploy.0 = Debug|ARM
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Debug|x64.Build.0 = Debug|x64
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Debug|x64.Deploy.0 = Debug|x64
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Debug|x86.Build.0 = Debug|Win32
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Debug|x86.Deploy.0 = Debug|Win32
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Release|ARM.ActiveCfg = Release|ARM
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Release|ARM.Build.0 = Release|ARM
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Release|ARM.Deploy.0 = Release|ARM
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Release|x64.ActiveCfg = Release|x64
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Release|x64.Build.0 = Release|x64
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Release|x64.Deploy.0 = Release|x64
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Release|x86.ActiveCfg = Release|Win32
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Release|x86.Build.0 = Release|Win32
|
||||
{7F895641-6C8F-4481-BD81-57785A4BEB09}.Release|x86.Deploy.0 = Release|Win32
|
||||
{978F53DB-F959-4CB4-84A7-463AF29949BE}.Debug|ARM.ActiveCfg = Debug|ARM
|
||||
{978F53DB-F959-4CB4-84A7-463AF29949BE}.Debug|ARM.Build.0 = Debug|ARM
|
||||
{978F53DB-F959-4CB4-84A7-463AF29949BE}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{978F53DB-F959-4CB4-84A7-463AF29949BE}.Debug|x64.Build.0 = Debug|x64
|
||||
{978F53DB-F959-4CB4-84A7-463AF29949BE}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{978F53DB-F959-4CB4-84A7-463AF29949BE}.Debug|x86.Build.0 = Debug|Win32
|
||||
{978F53DB-F959-4CB4-84A7-463AF29949BE}.Release|ARM.ActiveCfg = Release|ARM
|
||||
{978F53DB-F959-4CB4-84A7-463AF29949BE}.Release|ARM.Build.0 = Release|ARM
|
||||
{978F53DB-F959-4CB4-84A7-463AF29949BE}.Release|x64.ActiveCfg = Release|x64
|
||||
{978F53DB-F959-4CB4-84A7-463AF29949BE}.Release|x64.Build.0 = Release|x64
|
||||
{978F53DB-F959-4CB4-84A7-463AF29949BE}.Release|x86.ActiveCfg = Release|Win32
|
||||
{978F53DB-F959-4CB4-84A7-463AF29949BE}.Release|x86.Build.0 = Release|Win32
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|ARM.ActiveCfg = Debug|ARM
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|ARM.Build.0 = Debug|ARM
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|x64.Build.0 = Debug|x64
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|x86.Build.0 = Debug|Win32
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|ARM.ActiveCfg = Release|ARM
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|ARM.Build.0 = Release|ARM
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|x64.ActiveCfg = Release|x64
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|x64.Build.0 = Release|x64
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|x86.ActiveCfg = Release|Win32
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|x86.Build.0 = Release|Win32
|
||||
{53802F21-41DA-4AC1-8B62-0DAC2CCB8AF8}.Debug|ARM.ActiveCfg = Debug|ARM
|
||||
{53802F21-41DA-4AC1-8B62-0DAC2CCB8AF8}.Debug|ARM.Build.0 = Debug|ARM
|
||||
{53802F21-41DA-4AC1-8B62-0DAC2CCB8AF8}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{53802F21-41DA-4AC1-8B62-0DAC2CCB8AF8}.Debug|x64.Build.0 = Debug|x64
|
||||
{53802F21-41DA-4AC1-8B62-0DAC2CCB8AF8}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{53802F21-41DA-4AC1-8B62-0DAC2CCB8AF8}.Debug|x86.Build.0 = Debug|Win32
|
||||
{53802F21-41DA-4AC1-8B62-0DAC2CCB8AF8}.Release|ARM.ActiveCfg = Release|ARM
|
||||
{53802F21-41DA-4AC1-8B62-0DAC2CCB8AF8}.Release|ARM.Build.0 = Release|ARM
|
||||
{53802F21-41DA-4AC1-8B62-0DAC2CCB8AF8}.Release|x64.ActiveCfg = Release|x64
|
||||
{53802F21-41DA-4AC1-8B62-0DAC2CCB8AF8}.Release|x64.Build.0 = Release|x64
|
||||
{53802F21-41DA-4AC1-8B62-0DAC2CCB8AF8}.Release|x86.ActiveCfg = Release|Win32
|
||||
{53802F21-41DA-4AC1-8B62-0DAC2CCB8AF8}.Release|x86.Build.0 = Release|Win32
|
||||
{BC1084DF-210A-48D6-A077-761D8C16947B}.Debug|ARM.ActiveCfg = Debug|ARM
|
||||
{BC1084DF-210A-48D6-A077-761D8C16947B}.Debug|ARM.Build.0 = Debug|ARM
|
||||
{BC1084DF-210A-48D6-A077-761D8C16947B}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{BC1084DF-210A-48D6-A077-761D8C16947B}.Debug|x64.Build.0 = Debug|x64
|
||||
{BC1084DF-210A-48D6-A077-761D8C16947B}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{BC1084DF-210A-48D6-A077-761D8C16947B}.Debug|x86.Build.0 = Debug|Win32
|
||||
{BC1084DF-210A-48D6-A077-761D8C16947B}.Release|ARM.ActiveCfg = Release|ARM
|
||||
{BC1084DF-210A-48D6-A077-761D8C16947B}.Release|ARM.Build.0 = Release|ARM
|
||||
{BC1084DF-210A-48D6-A077-761D8C16947B}.Release|x64.ActiveCfg = Release|x64
|
||||
{BC1084DF-210A-48D6-A077-761D8C16947B}.Release|x64.Build.0 = Release|x64
|
||||
{BC1084DF-210A-48D6-A077-761D8C16947B}.Release|x86.ActiveCfg = Release|Win32
|
||||
{BC1084DF-210A-48D6-A077-761D8C16947B}.Release|x86.Build.0 = Release|Win32
|
||||
{9C39ACF1-5F52-4A2B-A467-9F2805D6174B}.Debug|ARM.ActiveCfg = Debug|ARM
|
||||
{9C39ACF1-5F52-4A2B-A467-9F2805D6174B}.Debug|ARM.Build.0 = Debug|ARM
|
||||
{9C39ACF1-5F52-4A2B-A467-9F2805D6174B}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{9C39ACF1-5F52-4A2B-A467-9F2805D6174B}.Debug|x64.Build.0 = Debug|x64
|
||||
{9C39ACF1-5F52-4A2B-A467-9F2805D6174B}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{9C39ACF1-5F52-4A2B-A467-9F2805D6174B}.Debug|x86.Build.0 = Debug|Win32
|
||||
{9C39ACF1-5F52-4A2B-A467-9F2805D6174B}.Release|ARM.ActiveCfg = Release|ARM
|
||||
{9C39ACF1-5F52-4A2B-A467-9F2805D6174B}.Release|ARM.Build.0 = Release|ARM
|
||||
{9C39ACF1-5F52-4A2B-A467-9F2805D6174B}.Release|x64.ActiveCfg = Release|x64
|
||||
{9C39ACF1-5F52-4A2B-A467-9F2805D6174B}.Release|x64.Build.0 = Release|x64
|
||||
{9C39ACF1-5F52-4A2B-A467-9F2805D6174B}.Release|x86.ActiveCfg = Release|Win32
|
||||
{9C39ACF1-5F52-4A2B-A467-9F2805D6174B}.Release|x86.Build.0 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
|
@ -0,0 +1,287 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{7f895641-6c8f-4481-bd81-57785a4beb09}</ProjectGuid>
|
||||
<RootNamespace>tic</RootNamespace>
|
||||
<DefaultLanguage>en-US</DefaultLanguage>
|
||||
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
|
||||
<AppContainerApplication>true</AppContainerApplication>
|
||||
<ApplicationType>Windows Store</ApplicationType>
|
||||
<WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.14393.0</WindowsTargetPlatformMinVersion>
|
||||
<ApplicationTypeRevision>10.0</ApplicationTypeRevision>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|ARM">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>ARM</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|ARM">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>ARM</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<UseDotNetNativeToolchain>true</UseDotNetNativeToolchain>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<UseDotNetNativeToolchain>true</UseDotNetNativeToolchain>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<UseDotNetNativeToolchain>true</UseDotNetNativeToolchain>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<PackageCertificateKeyFile>tic_StoreKey.pfx</PackageCertificateKeyFile>
|
||||
<PackageCertificateThumbprint>FAF3D8EF7331C1BFD85A8A5CE536BBA943CFEF65</PackageCertificateThumbprint>
|
||||
<AppxAutoIncrementPackageRevision>False</AppxAutoIncrementPackageRevision>
|
||||
<AppxBundle>Always</AppxBundle>
|
||||
<AppxBundlePlatforms>x86|x64|arm</AppxBundlePlatforms>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
|
||||
<ClCompile>
|
||||
<AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
|
||||
<DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\..\include\tic80;..\..\..\include\lua;..\..\..\include\gif;..\..\..\include\sdl2;..\..\..\include\zlib;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<BufferSecurityCheck>
|
||||
</BufferSecurityCheck>
|
||||
<PreprocessorDefinitions>_WINSOCK_DEPRECATED_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;LUA_COMPAT_5_2;_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE=1;%(ClCompile.PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>d2d1.lib; d3d11.lib; dxgi.lib; windowscodecs.lib; dwrite.lib;WindowsApp.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalOptions>/nodefaultlib:vccorlibd /nodefaultlib:msvcrtd vccorlibd.lib msvcrtd.lib</AdditionalOptions>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
|
||||
<ClCompile>
|
||||
<AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
|
||||
<DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\..\include\tic80;..\..\..\include\lua;..\..\..\include\gif;..\..\..\include\sdl2;..\..\..\include\zlib;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<BufferSecurityCheck>
|
||||
</BufferSecurityCheck>
|
||||
<PreprocessorDefinitions>_WINSOCK_DEPRECATED_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;LUA_COMPAT_5_2;_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE=1;%(ClCompile.PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>d2d1.lib; d3d11.lib; dxgi.lib; windowscodecs.lib; dwrite.lib;WindowsApp.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalOptions>/nodefaultlib:vccorlib /nodefaultlib:msvcrt vccorlib.lib msvcrt.lib</AdditionalOptions>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
|
||||
<DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\..\include\tic80;..\..\..\include\lua;..\..\..\include\gif;..\..\..\include\sdl2;..\..\..\include\zlib;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<BufferSecurityCheck>
|
||||
</BufferSecurityCheck>
|
||||
<PreprocessorDefinitions>_WINSOCK_DEPRECATED_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;LUA_COMPAT_5_2;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>d2d1.lib; d3d11.lib; dxgi.lib; windowscodecs.lib; dwrite.lib;WindowsApp.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalOptions>/nodefaultlib:vccorlibd /nodefaultlib:msvcrtd vccorlibd.lib msvcrtd.lib</AdditionalOptions>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
|
||||
<DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\..\include\tic80;..\..\..\include\lua;..\..\..\include\gif;..\..\..\include\sdl2;..\..\..\include\zlib;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<BufferSecurityCheck>
|
||||
</BufferSecurityCheck>
|
||||
<PreprocessorDefinitions>_WINSOCK_DEPRECATED_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;LUA_COMPAT_5_2;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>d2d1.lib; d3d11.lib; dxgi.lib; windowscodecs.lib; dwrite.lib;WindowsApp.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalOptions>/nodefaultlib:vccorlib /nodefaultlib:msvcrt vccorlib.lib msvcrt.lib</AdditionalOptions>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
|
||||
<DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\..\include\tic80;..\..\..\include\lua;..\..\..\include\gif;..\..\..\include\sdl2;..\..\..\include\zlib;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<BufferSecurityCheck>
|
||||
</BufferSecurityCheck>
|
||||
<PreprocessorDefinitions>_WINSOCK_DEPRECATED_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;LUA_COMPAT_5_2;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>d2d1.lib; d3d11.lib; dxgi.lib; windowscodecs.lib; dwrite.lib;WindowsApp.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalOptions>/nodefaultlib:vccorlibd /nodefaultlib:msvcrtd vccorlibd.lib msvcrtd.lib</AdditionalOptions>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
|
||||
<DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<AdditionalIncludeDirectories>..\include;..\..\..\include\tic80;..\..\..\include\lua;..\..\..\include\gif;..\..\..\include\sdl2;..\..\..\include\zlib;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<BufferSecurityCheck>
|
||||
</BufferSecurityCheck>
|
||||
<PreprocessorDefinitions>_WINSOCK_DEPRECATED_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;LUA_COMPAT_5_2;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>d2d1.lib; d3d11.lib; dxgi.lib; windowscodecs.lib; dwrite.lib;WindowsApp.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalOptions>/nodefaultlib:vccorlib /nodefaultlib:msvcrt vccorlib.lib msvcrt.lib</AdditionalOptions>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<AppxManifest Include="Package.appxmanifest">
|
||||
<SubType>Designer</SubType>
|
||||
</AppxManifest>
|
||||
<None Include="tic_StoreKey.pfx" />
|
||||
<None Include="tic_TemporaryKey.pfx" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Image Include="Assets\LockScreenLogo.scale-200.png" />
|
||||
<Image Include="Assets\SplashScreen.scale-200.png" />
|
||||
<Image Include="Assets\Square150x150Logo.scale-200.png" />
|
||||
<Image Include="Assets\Square44x44Logo.scale-200.png" />
|
||||
<Image Include="Assets\Square44x44Logo.targetsize-24_altform-unplated.png" />
|
||||
<Image Include="Assets\StoreLogo.png" />
|
||||
<Image Include="Assets\Wide310x150Logo.scale-200.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\..\..\..\sdk\SDL2-2.0.5\VisualC-WinRT\UWP_VS2015\SDL-UWP.vcxproj">
|
||||
<Project>{89e9b32e-a86a-47c3-a948-d2b1622925ce}</Project>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\..\..\..\sdk\zlib-1.2.8\winrt\zlib-uwp\zlib-uwp.vcxproj">
|
||||
<Project>{978f53db-f959-4cb4-84a7-463af29949be}</Project>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\gif\gif.vcxproj">
|
||||
<Project>{bc1084df-210a-48d6-a077-761d8c16947b}</Project>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\lua\lua.vcxproj">
|
||||
<Project>{53802f21-41da-4ac1-8b62-0dac2ccb8af8}</Project>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\tic80\tic80.vcxproj">
|
||||
<Project>{9c39acf1-5f52-4a2b-a467-9f2805d6174b}</Project>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\SDL2-2.0.5\src\main\winrt\SDL_winrt_main_NonXAML.cpp">
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\code.c" />
|
||||
<ClCompile Include="..\..\..\src\config.c" />
|
||||
<ClCompile Include="..\..\..\src\console.c" />
|
||||
<ClCompile Include="..\..\..\src\dialog.c" />
|
||||
<ClCompile Include="..\..\..\src\ext\file_dialog.cpp">
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\ext\gif.c" />
|
||||
<ClCompile Include="..\..\..\src\ext\md5.c" />
|
||||
<ClCompile Include="..\..\..\src\ext\net\SDLnet.c" />
|
||||
<ClCompile Include="..\..\..\src\ext\net\SDLnetselect.c" />
|
||||
<ClCompile Include="..\..\..\src\ext\net\SDLnetTCP.c" />
|
||||
<ClCompile Include="..\..\..\src\fs.c" />
|
||||
<ClCompile Include="..\..\..\src\history.c" />
|
||||
<ClCompile Include="..\..\..\src\html.c" />
|
||||
<ClCompile Include="..\..\..\src\keymap.c" />
|
||||
<ClCompile Include="..\..\..\src\map.c" />
|
||||
<ClCompile Include="..\..\..\src\menu.c" />
|
||||
<ClCompile Include="..\..\..\src\music.c" />
|
||||
<ClCompile Include="..\..\..\src\net.c" />
|
||||
<ClCompile Include="..\..\..\src\run.c" />
|
||||
<ClCompile Include="..\..\..\src\sfx.c" />
|
||||
<ClCompile Include="..\..\..\src\sprite.c" />
|
||||
<ClCompile Include="..\..\..\src\start.c" />
|
||||
<ClCompile Include="..\..\..\src\studio.c" />
|
||||
<ClCompile Include="..\..\..\src\surf.c" />
|
||||
<ClCompile Include="..\..\..\src\tools.c" />
|
||||
<ClCompile Include="..\..\..\src\world.c" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Package.StoreAssociation.xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="..\..\..\..\..\sdk\SDL2-2.0.5\src\main\winrt\SDL2-WinRTResources.rc" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
|
@ -0,0 +1,133 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Assets">
|
||||
<UniqueIdentifier>5fd31c85-b0c7-45fe-a8e6-8cc5dcfd285d</UniqueIdentifier>
|
||||
<Extensions>bmp;fbx;gif;jpg;jpeg;tga;tiff;tif;png</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="src">
|
||||
<UniqueIdentifier>{6dbd8d4d-dffd-4a4e-a7f6-d8357c295022}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="src\ext">
|
||||
<UniqueIdentifier>{4a787b83-e89b-4707-b2a5-cb6c79ba169e}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="src\ext\net">
|
||||
<UniqueIdentifier>{6cfada12-6c33-4060-be5d-20da24e5ff84}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Image Include="Assets\LockScreenLogo.scale-200.png">
|
||||
<Filter>Assets</Filter>
|
||||
</Image>
|
||||
<Image Include="Assets\SplashScreen.scale-200.png">
|
||||
<Filter>Assets</Filter>
|
||||
</Image>
|
||||
<Image Include="Assets\Square150x150Logo.scale-200.png">
|
||||
<Filter>Assets</Filter>
|
||||
</Image>
|
||||
<Image Include="Assets\Square44x44Logo.scale-200.png">
|
||||
<Filter>Assets</Filter>
|
||||
</Image>
|
||||
<Image Include="Assets\Square44x44Logo.targetsize-24_altform-unplated.png">
|
||||
<Filter>Assets</Filter>
|
||||
</Image>
|
||||
<Image Include="Assets\StoreLogo.png">
|
||||
<Filter>Assets</Filter>
|
||||
</Image>
|
||||
<Image Include="Assets\Wide310x150Logo.scale-200.png">
|
||||
<Filter>Assets</Filter>
|
||||
</Image>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<AppxManifest Include="Package.appxmanifest" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="tic_TemporaryKey.pfx" />
|
||||
<None Include="Package.StoreAssociation.xml" />
|
||||
<None Include="tic_StoreKey.pfx" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\..\src\console.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\fs.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\map.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\music.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\run.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\sfx.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\sprite.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\start.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\studio.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\ext\file_dialog.cpp">
|
||||
<Filter>src\ext</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\SDL2-2.0.5\src\main\winrt\SDL_winrt_main_NonXAML.cpp" />
|
||||
<ClCompile Include="..\..\..\src\history.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\world.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\html.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\code.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\config.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\ext\gif.c">
|
||||
<Filter>src\ext</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\ext\md5.c">
|
||||
<Filter>src\ext</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\keymap.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\ext\net\SDLnet.c">
|
||||
<Filter>src\ext\net</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\ext\net\SDLnetTCP.c">
|
||||
<Filter>src\ext\net</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\net.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\tools.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\dialog.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\menu.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\ext\net\SDLnetselect.c">
|
||||
<Filter>src\ext\net</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\surf.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="..\..\..\..\..\sdk\SDL2-2.0.5\src\main\winrt\SDL2-WinRTResources.rc" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -0,0 +1,33 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<ShowAllFiles>false</ShowAllFiles>
|
||||
<AppxShowAllApps>True</AppxShowAllApps>
|
||||
<AppxPackageIsForStore>True</AppxPackageIsForStore>
|
||||
<AppxBuildConfigurationSelection>x86|x64|arm</AppxBuildConfigurationSelection>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
|
||||
<DebuggerFlavor>UWPRemoteDebugger</DebuggerFlavor>
|
||||
<DebuggerMachineName>XboxOne</DebuggerMachineName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
|
||||
<DebuggerFlavor>UWPRemoteDebugger</DebuggerFlavor>
|
||||
<DebuggerMachineName>XboxOne</DebuggerMachineName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<DebuggerFlavor>UWPRemoteDebugger</DebuggerFlavor>
|
||||
<DebuggerMachineName>XboxOne</DebuggerMachineName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<DebuggerMachineName>XboxOne</DebuggerMachineName>
|
||||
<DebuggerFlavor>UWPRemoteDebugger</DebuggerFlavor>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<DebuggerMachineName>XboxOne</DebuggerMachineName>
|
||||
<DebuggerFlavor>UWPRemoteDebugger</DebuggerFlavor>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<DebuggerMachineName>XboxOne</DebuggerMachineName>
|
||||
<DebuggerFlavor>AppHostLocalDebugger</DebuggerFlavor>
|
||||
</PropertyGroup>
|
||||
</Project>
|
|
@ -0,0 +1,223 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|ARM">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>ARM</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|ARM">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>ARM</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\..\src\ext\blip_buf.c" />
|
||||
<ClCompile Include="..\..\..\src\ext\duktape\duktape.c" />
|
||||
<ClCompile Include="..\..\..\src\ext\gif.c" />
|
||||
<ClCompile Include="..\..\..\src\jsapi.c" />
|
||||
<ClCompile Include="..\..\..\src\luaapi.c" />
|
||||
<ClCompile Include="..\..\..\src\tic.c" />
|
||||
<ClCompile Include="..\..\..\src\tic80.c" />
|
||||
<ClCompile Include="..\..\..\src\tools.c" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\gif\gif.vcxproj">
|
||||
<Project>{bc1084df-210a-48d6-a077-761d8c16947b}</Project>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\lua\lua.vcxproj">
|
||||
<Project>{53802f21-41da-4ac1-8b62-0dac2ccb8af8}</Project>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{9c39acf1-5f52-4a2b-a467-9f2805d6174b}</ProjectGuid>
|
||||
<Keyword>DynamicLibrary</Keyword>
|
||||
<RootNamespace>tic80</RootNamespace>
|
||||
<DefaultLanguage>en-US</DefaultLanguage>
|
||||
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
|
||||
<AppContainerApplication>true</AppContainerApplication>
|
||||
<ApplicationType>Windows Store</ApplicationType>
|
||||
<WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.14393.0</WindowsTargetPlatformMinVersion>
|
||||
<ApplicationTypeRevision>10.0</ApplicationTypeRevision>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="Shared">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
<IgnoreImportLibrary>false</IgnoreImportLibrary>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
<IgnoreImportLibrary>false</IgnoreImportLibrary>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
<IgnoreImportLibrary>false</IgnoreImportLibrary>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
<IgnoreImportLibrary>false</IgnoreImportLibrary>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
<IgnoreImportLibrary>false</IgnoreImportLibrary>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
<IgnoreImportLibrary>false</IgnoreImportLibrary>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\tic80;..\..\..\include\lua;..\..\..\include\gif;..\..\..\include\sdl2;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>LUA_COMPAT_5_2;_CRT_SECURE_NO_WARNINGS;TIC80_SHARED;_WINDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\tic80;..\..\..\include\lua;..\..\..\include\gif;..\..\..\include\sdl2;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>LUA_COMPAT_5_2;_CRT_SECURE_NO_WARNINGS;TIC80_SHARED;_WINDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|arm'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\tic80;..\..\..\include\lua;..\..\..\include\gif;..\..\..\include\sdl2;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>LUA_COMPAT_5_2;_CRT_SECURE_NO_WARNINGS;TIC80_SHARED;_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE=1;%(ClCompile.PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|arm'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\tic80;..\..\..\include\lua;..\..\..\include\gif;..\..\..\include\sdl2;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>LUA_COMPAT_5_2;_CRT_SECURE_NO_WARNINGS;TIC80_SHARED;_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE=1;%(ClCompile.PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\tic80;..\..\..\include\lua;..\..\..\include\gif;..\..\..\include\sdl2;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>LUA_COMPAT_5_2;_CRT_SECURE_NO_WARNINGS;TIC80_SHARED;_WINDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\tic80;..\..\..\include\lua;..\..\..\include\gif;..\..\..\include\sdl2;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>LUA_COMPAT_5_2;_CRT_SECURE_NO_WARNINGS;TIC80_SHARED;_WINDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
|
@ -0,0 +1,40 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="src">
|
||||
<UniqueIdentifier>{7fef5e56-dbab-4c46-9b74-272938095273}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="src\ext">
|
||||
<UniqueIdentifier>{b58ae033-7ba6-4374-96d2-041873673e45}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="src\ext\duktape">
|
||||
<UniqueIdentifier>{8029f6c9-1965-4fa9-811f-a9f1cf42fd8a}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\..\src\jsapi.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\luaapi.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\tic.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\tic80.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\tools.c">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\ext\duktape\duktape.c">
|
||||
<Filter>src\ext\duktape</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\ext\blip_buf.c">
|
||||
<Filter>src\ext</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\src\ext\gif.c">
|
||||
<Filter>src\ext</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -0,0 +1,163 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\..\examples\sdl-renderer.c" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\tic80\tic80.vcxproj">
|
||||
<Project>{c4d8bc10-ebf6-42bb-9b5d-6712fb428a50}</Project>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{86CAA9C1-C61A-40D8-AC77-33D94754C824}</ProjectGuid>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>example</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="Shared">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\sdl2;..\..\..\include\tic80;</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<AdditionalDependencies>SDL2main.lib;SDL2.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib\windows</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\sdl2;..\..\..\include\tic80;</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<AdditionalDependencies>SDL2main.lib;SDL2.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib\windows</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\sdl2;..\..\..\include\tic80;</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<AdditionalDependencies>SDL2main.lib;SDL2.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib\windows</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\sdl2;..\..\..\include\tic80;</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<AdditionalDependencies>SDL2main.lib;SDL2.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>..\..\..\lib\windows</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\..\examples\sdl-renderer.c" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -0,0 +1,4 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup />
|
||||
</Project>
|
|
@ -0,0 +1,146 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\dgif_lib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\egif_lib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\gifalloc.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\gif_err.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\gif_font.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\gif_hash.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\openbsd-reallocarray.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\quantize.c" />
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{6EA9D998-7557-4AED-ABFC-142F9960C9B6}</ProjectGuid>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>gif</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="Shared">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup />
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\dgif_lib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\egif_lib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\gif_err.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\gif_font.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\gif_hash.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\gifalloc.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\openbsd-reallocarray.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\giflib-5.1.4\lib\quantize.c" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -0,0 +1,4 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup />
|
||||
</Project>
|
|
@ -0,0 +1,950 @@
|
|||
/*
|
||||
* Dirent interface for Microsoft Visual Studio
|
||||
* Version 1.21
|
||||
*
|
||||
* Copyright (C) 2006-2012 Toni Ronkko
|
||||
* This file is part of dirent. Dirent may be freely distributed
|
||||
* under the MIT license. For all details and documentation, see
|
||||
* https://github.com/tronkko/dirent
|
||||
*/
|
||||
#ifndef DIRENT_H
|
||||
#define DIRENT_H
|
||||
|
||||
/*
|
||||
* Include windows.h without Windows Sockets 1.1 to prevent conflicts with
|
||||
* Windows Sockets 2.0.
|
||||
*/
|
||||
#ifndef WIN32_LEAN_AND_MEAN
|
||||
# define WIN32_LEAN_AND_MEAN
|
||||
#endif
|
||||
#include <windows.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdarg.h>
|
||||
#include <wchar.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include <malloc.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <errno.h>
|
||||
|
||||
/* Indicates that d_type field is available in dirent structure */
|
||||
#define _DIRENT_HAVE_D_TYPE
|
||||
|
||||
/* Indicates that d_namlen field is available in dirent structure */
|
||||
#define _DIRENT_HAVE_D_NAMLEN
|
||||
|
||||
/* Entries missing from MSVC 6.0 */
|
||||
#if !defined(FILE_ATTRIBUTE_DEVICE)
|
||||
# define FILE_ATTRIBUTE_DEVICE 0x40
|
||||
#endif
|
||||
|
||||
/* File type and permission flags for stat(), general mask */
|
||||
#if !defined(S_IFMT)
|
||||
# define S_IFMT _S_IFMT
|
||||
#endif
|
||||
|
||||
/* Directory bit */
|
||||
#if !defined(S_IFDIR)
|
||||
# define S_IFDIR _S_IFDIR
|
||||
#endif
|
||||
|
||||
/* Character device bit */
|
||||
#if !defined(S_IFCHR)
|
||||
# define S_IFCHR _S_IFCHR
|
||||
#endif
|
||||
|
||||
/* Pipe bit */
|
||||
#if !defined(S_IFFIFO)
|
||||
# define S_IFFIFO _S_IFFIFO
|
||||
#endif
|
||||
|
||||
/* Regular file bit */
|
||||
#if !defined(S_IFREG)
|
||||
# define S_IFREG _S_IFREG
|
||||
#endif
|
||||
|
||||
/* Read permission */
|
||||
#if !defined(S_IREAD)
|
||||
# define S_IREAD _S_IREAD
|
||||
#endif
|
||||
|
||||
/* Write permission */
|
||||
#if !defined(S_IWRITE)
|
||||
# define S_IWRITE _S_IWRITE
|
||||
#endif
|
||||
|
||||
/* Execute permission */
|
||||
#if !defined(S_IEXEC)
|
||||
# define S_IEXEC _S_IEXEC
|
||||
#endif
|
||||
|
||||
/* Pipe */
|
||||
#if !defined(S_IFIFO)
|
||||
# define S_IFIFO _S_IFIFO
|
||||
#endif
|
||||
|
||||
/* Block device */
|
||||
#if !defined(S_IFBLK)
|
||||
# define S_IFBLK 0
|
||||
#endif
|
||||
|
||||
/* Link */
|
||||
#if !defined(S_IFLNK)
|
||||
# define S_IFLNK 0
|
||||
#endif
|
||||
|
||||
/* Socket */
|
||||
#if !defined(S_IFSOCK)
|
||||
# define S_IFSOCK 0
|
||||
#endif
|
||||
|
||||
/* Read user permission */
|
||||
#if !defined(S_IRUSR)
|
||||
# define S_IRUSR S_IREAD
|
||||
#endif
|
||||
|
||||
/* Write user permission */
|
||||
#if !defined(S_IWUSR)
|
||||
# define S_IWUSR S_IWRITE
|
||||
#endif
|
||||
|
||||
/* Execute user permission */
|
||||
#if !defined(S_IXUSR)
|
||||
# define S_IXUSR 0
|
||||
#endif
|
||||
|
||||
/* Read group permission */
|
||||
#if !defined(S_IRGRP)
|
||||
# define S_IRGRP 0
|
||||
#endif
|
||||
|
||||
/* Write group permission */
|
||||
#if !defined(S_IWGRP)
|
||||
# define S_IWGRP 0
|
||||
#endif
|
||||
|
||||
/* Execute group permission */
|
||||
#if !defined(S_IXGRP)
|
||||
# define S_IXGRP 0
|
||||
#endif
|
||||
|
||||
/* Read others permission */
|
||||
#if !defined(S_IROTH)
|
||||
# define S_IROTH 0
|
||||
#endif
|
||||
|
||||
/* Write others permission */
|
||||
#if !defined(S_IWOTH)
|
||||
# define S_IWOTH 0
|
||||
#endif
|
||||
|
||||
/* Execute others permission */
|
||||
#if !defined(S_IXOTH)
|
||||
# define S_IXOTH 0
|
||||
#endif
|
||||
|
||||
/* Maximum length of file name */
|
||||
#if !defined(PATH_MAX)
|
||||
# define PATH_MAX MAX_PATH
|
||||
#endif
|
||||
#if !defined(FILENAME_MAX)
|
||||
# define FILENAME_MAX MAX_PATH
|
||||
#endif
|
||||
#if !defined(NAME_MAX)
|
||||
# define NAME_MAX FILENAME_MAX
|
||||
#endif
|
||||
|
||||
/* File type flags for d_type */
|
||||
#define DT_UNKNOWN 0
|
||||
#define DT_REG S_IFREG
|
||||
#define DT_DIR S_IFDIR
|
||||
#define DT_FIFO S_IFIFO
|
||||
#define DT_SOCK S_IFSOCK
|
||||
#define DT_CHR S_IFCHR
|
||||
#define DT_BLK S_IFBLK
|
||||
#define DT_LNK S_IFLNK
|
||||
|
||||
/* Macros for converting between st_mode and d_type */
|
||||
#define IFTODT(mode) ((mode) & S_IFMT)
|
||||
#define DTTOIF(type) (type)
|
||||
|
||||
/*
|
||||
* File type macros. Note that block devices, sockets and links cannot be
|
||||
* distinguished on Windows and the macros S_ISBLK, S_ISSOCK and S_ISLNK are
|
||||
* only defined for compatibility. These macros should always return false
|
||||
* on Windows.
|
||||
*/
|
||||
#if !defined(S_ISFIFO)
|
||||
# define S_ISFIFO(mode) (((mode) & S_IFMT) == S_IFIFO)
|
||||
#endif
|
||||
#if !defined(S_ISDIR)
|
||||
# define S_ISDIR(mode) (((mode) & S_IFMT) == S_IFDIR)
|
||||
#endif
|
||||
#if !defined(S_ISREG)
|
||||
# define S_ISREG(mode) (((mode) & S_IFMT) == S_IFREG)
|
||||
#endif
|
||||
#if !defined(S_ISLNK)
|
||||
# define S_ISLNK(mode) (((mode) & S_IFMT) == S_IFLNK)
|
||||
#endif
|
||||
#if !defined(S_ISSOCK)
|
||||
# define S_ISSOCK(mode) (((mode) & S_IFMT) == S_IFSOCK)
|
||||
#endif
|
||||
#if !defined(S_ISCHR)
|
||||
# define S_ISCHR(mode) (((mode) & S_IFMT) == S_IFCHR)
|
||||
#endif
|
||||
#if !defined(S_ISBLK)
|
||||
# define S_ISBLK(mode) (((mode) & S_IFMT) == S_IFBLK)
|
||||
#endif
|
||||
|
||||
/* Return the exact length of d_namlen without zero terminator */
|
||||
#define _D_EXACT_NAMLEN(p) ((p)->d_namlen)
|
||||
|
||||
/* Return number of bytes needed to store d_namlen */
|
||||
#define _D_ALLOC_NAMLEN(p) (PATH_MAX)
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
/* Wide-character version */
|
||||
struct _wdirent {
|
||||
/* Always zero */
|
||||
long d_ino;
|
||||
|
||||
/* Structure size */
|
||||
unsigned short d_reclen;
|
||||
|
||||
/* Length of name without \0 */
|
||||
size_t d_namlen;
|
||||
|
||||
/* File type */
|
||||
int d_type;
|
||||
|
||||
/* File name */
|
||||
wchar_t d_name[PATH_MAX];
|
||||
};
|
||||
typedef struct _wdirent _wdirent;
|
||||
|
||||
struct _WDIR {
|
||||
/* Current directory entry */
|
||||
struct _wdirent ent;
|
||||
|
||||
/* Private file data */
|
||||
WIN32_FIND_DATAW data;
|
||||
|
||||
/* True if data is valid */
|
||||
int cached;
|
||||
|
||||
/* Win32 search handle */
|
||||
HANDLE handle;
|
||||
|
||||
/* Initial directory name */
|
||||
wchar_t *patt;
|
||||
};
|
||||
typedef struct _WDIR _WDIR;
|
||||
|
||||
static _WDIR *_wopendir(const wchar_t *dirname);
|
||||
static struct _wdirent *_wreaddir(_WDIR *dirp);
|
||||
static int _wclosedir(_WDIR *dirp);
|
||||
static void _wrewinddir(_WDIR* dirp);
|
||||
|
||||
|
||||
/* For compatibility with Symbian */
|
||||
#define wdirent _wdirent
|
||||
#define WDIR _WDIR
|
||||
#define wopendir _wopendir
|
||||
#define wreaddir _wreaddir
|
||||
#define wclosedir _wclosedir
|
||||
#define wrewinddir _wrewinddir
|
||||
|
||||
|
||||
/* Multi-byte character versions */
|
||||
struct dirent {
|
||||
/* Always zero */
|
||||
long d_ino;
|
||||
|
||||
/* Structure size */
|
||||
unsigned short d_reclen;
|
||||
|
||||
/* Length of name without \0 */
|
||||
size_t d_namlen;
|
||||
|
||||
/* File type */
|
||||
int d_type;
|
||||
|
||||
/* File name */
|
||||
char d_name[PATH_MAX];
|
||||
};
|
||||
typedef struct dirent dirent;
|
||||
|
||||
struct DIR {
|
||||
struct dirent ent;
|
||||
struct _WDIR *wdirp;
|
||||
};
|
||||
typedef struct DIR DIR;
|
||||
|
||||
static DIR *opendir(const char *dirname);
|
||||
static struct dirent *readdir(DIR *dirp);
|
||||
static int closedir(DIR *dirp);
|
||||
static void rewinddir(DIR* dirp);
|
||||
|
||||
|
||||
/* Internal utility functions */
|
||||
static WIN32_FIND_DATAW *dirent_first(_WDIR *dirp);
|
||||
static WIN32_FIND_DATAW *dirent_next(_WDIR *dirp);
|
||||
|
||||
static int dirent_mbstowcs_s(
|
||||
size_t *pReturnValue,
|
||||
wchar_t *wcstr,
|
||||
size_t sizeInWords,
|
||||
const char *mbstr,
|
||||
size_t count);
|
||||
|
||||
static int dirent_wcstombs_s(
|
||||
size_t *pReturnValue,
|
||||
char *mbstr,
|
||||
size_t sizeInBytes,
|
||||
const wchar_t *wcstr,
|
||||
size_t count);
|
||||
|
||||
static void dirent_set_errno(int error);
|
||||
|
||||
/*
|
||||
* Open directory stream DIRNAME for read and return a pointer to the
|
||||
* internal working area that is used to retrieve individual directory
|
||||
* entries.
|
||||
*/
|
||||
static _WDIR*
|
||||
_wopendir(
|
||||
const wchar_t *dirname)
|
||||
{
|
||||
_WDIR *dirp = NULL;
|
||||
int error;
|
||||
|
||||
/* Must have directory name */
|
||||
if (dirname == NULL || dirname[0] == '\0') {
|
||||
dirent_set_errno(ENOENT);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* Allocate new _WDIR structure */
|
||||
dirp = (_WDIR*)malloc(sizeof(struct _WDIR));
|
||||
if (dirp != NULL) {
|
||||
DWORD n;
|
||||
|
||||
/* Reset _WDIR structure */
|
||||
dirp->handle = INVALID_HANDLE_VALUE;
|
||||
dirp->patt = NULL;
|
||||
dirp->cached = 0;
|
||||
|
||||
/* Compute the length of full path plus zero terminator
|
||||
*
|
||||
* Note that on WinRT there's no way to convert relative paths
|
||||
* into absolute paths, so just assume its an absolute path.
|
||||
*/
|
||||
# if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP)
|
||||
n = wcslen(dirname);
|
||||
# else
|
||||
n = GetFullPathNameW(dirname, 0, NULL, NULL);
|
||||
# endif
|
||||
|
||||
/* Allocate room for absolute directory name and search pattern */
|
||||
dirp->patt = (wchar_t*)malloc(sizeof(wchar_t) * n + 16);
|
||||
if (dirp->patt) {
|
||||
|
||||
/*
|
||||
* Convert relative directory name to an absolute one. This
|
||||
* allows rewinddir() to function correctly even when current
|
||||
* working directory is changed between opendir() and rewinddir().
|
||||
*
|
||||
* Note that on WinRT there's no way to convert relative paths
|
||||
* into absolute paths, so just assume its an absolute path.
|
||||
*/
|
||||
# if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP)
|
||||
wcsncpy_s(dirp->patt, n + 1, dirname, n);
|
||||
# else
|
||||
n = GetFullPathNameW(dirname, n, dirp->patt, NULL);
|
||||
# endif
|
||||
if (n > 0) {
|
||||
wchar_t *p;
|
||||
|
||||
/* Append search pattern \* to the directory name */
|
||||
p = dirp->patt + n;
|
||||
if (dirp->patt < p) {
|
||||
switch (p[-1]) {
|
||||
case '\\':
|
||||
case '/':
|
||||
case ':':
|
||||
/* Directory ends in path separator, e.g. c:\temp\ */
|
||||
/*NOP*/;
|
||||
break;
|
||||
|
||||
default:
|
||||
/* Directory name doesn't end in path separator */
|
||||
*p++ = '\\';
|
||||
}
|
||||
}
|
||||
*p++ = '*';
|
||||
*p = '\0';
|
||||
|
||||
/* Open directory stream and retrieve the first entry */
|
||||
if (dirent_first(dirp)) {
|
||||
/* Directory stream opened successfully */
|
||||
error = 0;
|
||||
}
|
||||
else {
|
||||
/* Cannot retrieve first entry */
|
||||
error = 1;
|
||||
dirent_set_errno(ENOENT);
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
/* Cannot retrieve full path name */
|
||||
dirent_set_errno(ENOENT);
|
||||
error = 1;
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
/* Cannot allocate memory for search pattern */
|
||||
error = 1;
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
/* Cannot allocate _WDIR structure */
|
||||
error = 1;
|
||||
}
|
||||
|
||||
/* Clean up in case of error */
|
||||
if (error && dirp) {
|
||||
_wclosedir(dirp);
|
||||
dirp = NULL;
|
||||
}
|
||||
|
||||
return dirp;
|
||||
}
|
||||
|
||||
/*
|
||||
* Read next directory entry. The directory entry is returned in dirent
|
||||
* structure in the d_name field. Individual directory entries returned by
|
||||
* this function include regular files, sub-directories, pseudo-directories
|
||||
* "." and ".." as well as volume labels, hidden files and system files.
|
||||
*/
|
||||
static struct _wdirent*
|
||||
_wreaddir(
|
||||
_WDIR *dirp)
|
||||
{
|
||||
WIN32_FIND_DATAW *datap;
|
||||
struct _wdirent *entp;
|
||||
|
||||
/* Read next directory entry */
|
||||
datap = dirent_next(dirp);
|
||||
if (datap) {
|
||||
size_t n;
|
||||
DWORD attr;
|
||||
|
||||
/* Pointer to directory entry to return */
|
||||
entp = &dirp->ent;
|
||||
|
||||
/*
|
||||
* Copy file name as wide-character string. If the file name is too
|
||||
* long to fit in to the destination buffer, then truncate file name
|
||||
* to PATH_MAX characters and zero-terminate the buffer.
|
||||
*/
|
||||
n = 0;
|
||||
while (n + 1 < PATH_MAX && datap->cFileName[n] != 0) {
|
||||
entp->d_name[n] = datap->cFileName[n];
|
||||
n++;
|
||||
}
|
||||
dirp->ent.d_name[n] = 0;
|
||||
|
||||
/* Length of file name excluding zero terminator */
|
||||
entp->d_namlen = n;
|
||||
|
||||
/* File type */
|
||||
attr = datap->dwFileAttributes;
|
||||
if ((attr & FILE_ATTRIBUTE_DEVICE) != 0) {
|
||||
entp->d_type = DT_CHR;
|
||||
}
|
||||
else if ((attr & FILE_ATTRIBUTE_DIRECTORY) != 0) {
|
||||
entp->d_type = DT_DIR;
|
||||
}
|
||||
else {
|
||||
entp->d_type = DT_REG;
|
||||
}
|
||||
|
||||
/* Reset dummy fields */
|
||||
entp->d_ino = 0;
|
||||
entp->d_reclen = sizeof(struct _wdirent);
|
||||
|
||||
}
|
||||
else {
|
||||
|
||||
/* Last directory entry read */
|
||||
entp = NULL;
|
||||
|
||||
}
|
||||
|
||||
return entp;
|
||||
}
|
||||
|
||||
/*
|
||||
* Close directory stream opened by opendir() function. This invalidates the
|
||||
* DIR structure as well as any directory entry read previously by
|
||||
* _wreaddir().
|
||||
*/
|
||||
static int
|
||||
_wclosedir(
|
||||
_WDIR *dirp)
|
||||
{
|
||||
int ok;
|
||||
if (dirp) {
|
||||
|
||||
/* Release search handle */
|
||||
if (dirp->handle != INVALID_HANDLE_VALUE) {
|
||||
FindClose(dirp->handle);
|
||||
dirp->handle = INVALID_HANDLE_VALUE;
|
||||
}
|
||||
|
||||
/* Release search pattern */
|
||||
if (dirp->patt) {
|
||||
free(dirp->patt);
|
||||
dirp->patt = NULL;
|
||||
}
|
||||
|
||||
/* Release directory structure */
|
||||
free(dirp);
|
||||
ok = /*success*/0;
|
||||
|
||||
}
|
||||
else {
|
||||
/* Invalid directory stream */
|
||||
dirent_set_errno(EBADF);
|
||||
ok = /*failure*/-1;
|
||||
}
|
||||
return ok;
|
||||
}
|
||||
|
||||
/*
|
||||
* Rewind directory stream such that _wreaddir() returns the very first
|
||||
* file name again.
|
||||
*/
|
||||
static void
|
||||
_wrewinddir(
|
||||
_WDIR* dirp)
|
||||
{
|
||||
if (dirp) {
|
||||
/* Release existing search handle */
|
||||
if (dirp->handle != INVALID_HANDLE_VALUE) {
|
||||
FindClose(dirp->handle);
|
||||
}
|
||||
|
||||
/* Open new search handle */
|
||||
dirent_first(dirp);
|
||||
}
|
||||
}
|
||||
|
||||
/* Get first directory entry (internal) */
|
||||
static WIN32_FIND_DATAW*
|
||||
dirent_first(
|
||||
_WDIR *dirp)
|
||||
{
|
||||
WIN32_FIND_DATAW *datap;
|
||||
|
||||
/* Open directory and retrieve the first entry */
|
||||
dirp->handle = FindFirstFileExW(
|
||||
dirp->patt, FindExInfoStandard, &dirp->data,
|
||||
FindExSearchNameMatch, NULL, 0);
|
||||
if (dirp->handle != INVALID_HANDLE_VALUE) {
|
||||
|
||||
/* a directory entry is now waiting in memory */
|
||||
datap = &dirp->data;
|
||||
dirp->cached = 1;
|
||||
|
||||
}
|
||||
else {
|
||||
|
||||
/* Failed to re-open directory: no directory entry in memory */
|
||||
dirp->cached = 0;
|
||||
datap = NULL;
|
||||
|
||||
}
|
||||
return datap;
|
||||
}
|
||||
|
||||
/* Get next directory entry (internal) */
|
||||
static WIN32_FIND_DATAW*
|
||||
dirent_next(
|
||||
_WDIR *dirp)
|
||||
{
|
||||
WIN32_FIND_DATAW *p;
|
||||
|
||||
/* Get next directory entry */
|
||||
if (dirp->cached != 0) {
|
||||
|
||||
/* A valid directory entry already in memory */
|
||||
p = &dirp->data;
|
||||
dirp->cached = 0;
|
||||
|
||||
}
|
||||
else if (dirp->handle != INVALID_HANDLE_VALUE) {
|
||||
|
||||
/* Get the next directory entry from stream */
|
||||
if (FindNextFileW(dirp->handle, &dirp->data) != FALSE) {
|
||||
/* Got a file */
|
||||
p = &dirp->data;
|
||||
}
|
||||
else {
|
||||
/* The very last entry has been processed or an error occured */
|
||||
FindClose(dirp->handle);
|
||||
dirp->handle = INVALID_HANDLE_VALUE;
|
||||
p = NULL;
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
|
||||
/* End of directory stream reached */
|
||||
p = NULL;
|
||||
|
||||
}
|
||||
|
||||
return p;
|
||||
}
|
||||
|
||||
/*
|
||||
* Open directory stream using plain old C-string.
|
||||
*/
|
||||
static DIR*
|
||||
opendir(
|
||||
const char *dirname)
|
||||
{
|
||||
struct DIR *dirp;
|
||||
int error;
|
||||
|
||||
/* Must have directory name */
|
||||
if (dirname == NULL || dirname[0] == '\0') {
|
||||
dirent_set_errno(ENOENT);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* Allocate memory for DIR structure */
|
||||
dirp = (DIR*)malloc(sizeof(struct DIR));
|
||||
if (dirp) {
|
||||
wchar_t wname[PATH_MAX];
|
||||
size_t n;
|
||||
|
||||
/* Convert directory name to wide-character string */
|
||||
error = dirent_mbstowcs_s(&n, wname, PATH_MAX, dirname, PATH_MAX);
|
||||
if (!error) {
|
||||
|
||||
/* Open directory stream using wide-character name */
|
||||
dirp->wdirp = _wopendir(wname);
|
||||
if (dirp->wdirp) {
|
||||
/* Directory stream opened */
|
||||
error = 0;
|
||||
}
|
||||
else {
|
||||
/* Failed to open directory stream */
|
||||
error = 1;
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
/*
|
||||
* Cannot convert file name to wide-character string. This
|
||||
* occurs if the string contains invalid multi-byte sequences or
|
||||
* the output buffer is too small to contain the resulting
|
||||
* string.
|
||||
*/
|
||||
error = 1;
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
/* Cannot allocate DIR structure */
|
||||
error = 1;
|
||||
}
|
||||
|
||||
/* Clean up in case of error */
|
||||
if (error && dirp) {
|
||||
free(dirp);
|
||||
dirp = NULL;
|
||||
}
|
||||
|
||||
return dirp;
|
||||
}
|
||||
|
||||
/*
|
||||
* Read next directory entry.
|
||||
*
|
||||
* When working with text consoles, please note that file names returned by
|
||||
* readdir() are represented in the default ANSI code page while any output to
|
||||
* console is typically formatted on another code page. Thus, non-ASCII
|
||||
* characters in file names will not usually display correctly on console. The
|
||||
* problem can be fixed in two ways: (1) change the character set of console
|
||||
* to 1252 using chcp utility and use Lucida Console font, or (2) use
|
||||
* _cprintf function when writing to console. The _cprinf() will re-encode
|
||||
* ANSI strings to the console code page so many non-ASCII characters will
|
||||
* display correcly.
|
||||
*/
|
||||
static struct dirent*
|
||||
readdir(
|
||||
DIR *dirp)
|
||||
{
|
||||
WIN32_FIND_DATAW *datap;
|
||||
struct dirent *entp;
|
||||
|
||||
/* Read next directory entry */
|
||||
datap = dirent_next(dirp->wdirp);
|
||||
if (datap) {
|
||||
size_t n;
|
||||
int error;
|
||||
|
||||
/* Attempt to convert file name to multi-byte string */
|
||||
error = dirent_wcstombs_s(
|
||||
&n, dirp->ent.d_name, PATH_MAX, datap->cFileName, PATH_MAX);
|
||||
|
||||
/*
|
||||
* If the file name cannot be represented by a multi-byte string,
|
||||
* then attempt to use old 8+3 file name. This allows traditional
|
||||
* Unix-code to access some file names despite of unicode
|
||||
* characters, although file names may seem unfamiliar to the user.
|
||||
*
|
||||
* Be ware that the code below cannot come up with a short file
|
||||
* name unless the file system provides one. At least
|
||||
* VirtualBox shared folders fail to do this.
|
||||
*/
|
||||
if (error && datap->cAlternateFileName[0] != '\0') {
|
||||
error = dirent_wcstombs_s(
|
||||
&n, dirp->ent.d_name, PATH_MAX,
|
||||
datap->cAlternateFileName, PATH_MAX);
|
||||
}
|
||||
|
||||
if (!error) {
|
||||
DWORD attr;
|
||||
|
||||
/* Initialize directory entry for return */
|
||||
entp = &dirp->ent;
|
||||
|
||||
/* Length of file name excluding zero terminator */
|
||||
entp->d_namlen = n - 1;
|
||||
|
||||
/* File attributes */
|
||||
attr = datap->dwFileAttributes;
|
||||
if ((attr & FILE_ATTRIBUTE_DEVICE) != 0) {
|
||||
entp->d_type = DT_CHR;
|
||||
}
|
||||
else if ((attr & FILE_ATTRIBUTE_DIRECTORY) != 0) {
|
||||
entp->d_type = DT_DIR;
|
||||
}
|
||||
else {
|
||||
entp->d_type = DT_REG;
|
||||
}
|
||||
|
||||
/* Reset dummy fields */
|
||||
entp->d_ino = 0;
|
||||
entp->d_reclen = sizeof(struct dirent);
|
||||
|
||||
}
|
||||
else {
|
||||
/*
|
||||
* Cannot convert file name to multi-byte string so construct
|
||||
* an errornous directory entry and return that. Note that
|
||||
* we cannot return NULL as that would stop the processing
|
||||
* of directory entries completely.
|
||||
*/
|
||||
entp = &dirp->ent;
|
||||
entp->d_name[0] = '?';
|
||||
entp->d_name[1] = '\0';
|
||||
entp->d_namlen = 1;
|
||||
entp->d_type = DT_UNKNOWN;
|
||||
entp->d_ino = 0;
|
||||
entp->d_reclen = 0;
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
/* No more directory entries */
|
||||
entp = NULL;
|
||||
}
|
||||
|
||||
return entp;
|
||||
}
|
||||
|
||||
/*
|
||||
* Close directory stream.
|
||||
*/
|
||||
static int
|
||||
closedir(
|
||||
DIR *dirp)
|
||||
{
|
||||
int ok;
|
||||
if (dirp) {
|
||||
|
||||
/* Close wide-character directory stream */
|
||||
ok = _wclosedir(dirp->wdirp);
|
||||
dirp->wdirp = NULL;
|
||||
|
||||
/* Release multi-byte character version */
|
||||
free(dirp);
|
||||
|
||||
}
|
||||
else {
|
||||
|
||||
/* Invalid directory stream */
|
||||
dirent_set_errno(EBADF);
|
||||
ok = /*failure*/-1;
|
||||
|
||||
}
|
||||
return ok;
|
||||
}
|
||||
|
||||
/*
|
||||
* Rewind directory stream to beginning.
|
||||
*/
|
||||
static void
|
||||
rewinddir(
|
||||
DIR* dirp)
|
||||
{
|
||||
/* Rewind wide-character string directory stream */
|
||||
_wrewinddir(dirp->wdirp);
|
||||
}
|
||||
|
||||
/* Convert multi-byte string to wide character string */
|
||||
static int
|
||||
dirent_mbstowcs_s(
|
||||
size_t *pReturnValue,
|
||||
wchar_t *wcstr,
|
||||
size_t sizeInWords,
|
||||
const char *mbstr,
|
||||
size_t count)
|
||||
{
|
||||
int error;
|
||||
|
||||
#if defined(_MSC_VER) && _MSC_VER >= 1400
|
||||
|
||||
/* Microsoft Visual Studio 2005 or later */
|
||||
error = mbstowcs_s(pReturnValue, wcstr, sizeInWords, mbstr, count);
|
||||
|
||||
#else
|
||||
|
||||
/* Older Visual Studio or non-Microsoft compiler */
|
||||
size_t n;
|
||||
|
||||
/* Convert to wide-character string (or count characters) */
|
||||
n = mbstowcs(wcstr, mbstr, sizeInWords);
|
||||
if (!wcstr || n < count) {
|
||||
|
||||
/* Zero-terminate output buffer */
|
||||
if (wcstr && sizeInWords) {
|
||||
if (n >= sizeInWords) {
|
||||
n = sizeInWords - 1;
|
||||
}
|
||||
wcstr[n] = 0;
|
||||
}
|
||||
|
||||
/* Length of resuting multi-byte string WITH zero terminator */
|
||||
if (pReturnValue) {
|
||||
*pReturnValue = n + 1;
|
||||
}
|
||||
|
||||
/* Success */
|
||||
error = 0;
|
||||
|
||||
}
|
||||
else {
|
||||
|
||||
/* Could not convert string */
|
||||
error = 1;
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
/* Convert wide-character string to multi-byte string */
|
||||
static int
|
||||
dirent_wcstombs_s(
|
||||
size_t *pReturnValue,
|
||||
char *mbstr,
|
||||
size_t sizeInBytes, /* max size of mbstr */
|
||||
const wchar_t *wcstr,
|
||||
size_t count)
|
||||
{
|
||||
int error;
|
||||
|
||||
#if defined(_MSC_VER) && _MSC_VER >= 1400
|
||||
|
||||
/* Microsoft Visual Studio 2005 or later */
|
||||
error = wcstombs_s(pReturnValue, mbstr, sizeInBytes, wcstr, count);
|
||||
|
||||
#else
|
||||
|
||||
/* Older Visual Studio or non-Microsoft compiler */
|
||||
size_t n;
|
||||
|
||||
/* Convert to multi-byte string (or count the number of bytes needed) */
|
||||
n = wcstombs(mbstr, wcstr, sizeInBytes);
|
||||
if (!mbstr || n < count) {
|
||||
|
||||
/* Zero-terminate output buffer */
|
||||
if (mbstr && sizeInBytes) {
|
||||
if (n >= sizeInBytes) {
|
||||
n = sizeInBytes - 1;
|
||||
}
|
||||
mbstr[n] = '\0';
|
||||
}
|
||||
|
||||
/* Length of resulting multi-bytes string WITH zero-terminator */
|
||||
if (pReturnValue) {
|
||||
*pReturnValue = n + 1;
|
||||
}
|
||||
|
||||
/* Success */
|
||||
error = 0;
|
||||
|
||||
}
|
||||
else {
|
||||
|
||||
/* Cannot convert string */
|
||||
error = 1;
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
/* Set errno variable */
|
||||
static void
|
||||
dirent_set_errno(
|
||||
int error)
|
||||
{
|
||||
#if defined(_MSC_VER) && _MSC_VER >= 1400
|
||||
|
||||
/* Microsoft Visual Studio 2005 and later */
|
||||
_set_errno(error);
|
||||
|
||||
#else
|
||||
|
||||
/* Non-Microsoft compiler or older Microsoft compiler */
|
||||
errno = error;
|
||||
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif /*DIRENT_H*/
|
|
@ -0,0 +1,179 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lapi.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lauxlib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lbaselib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lbitlib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lcode.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lcorolib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lctype.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ldblib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ldebug.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ldo.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ldump.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lfunc.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lgc.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\linit.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\llex.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lmathlib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lmem.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\loadlib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lobject.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lopcodes.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\loslib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lparser.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lpcap.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lpcode.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lpprint.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lptree.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lpvm.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lstate.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lstring.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lstrlib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ltable.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ltablib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ltm.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lundump.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lutf8lib.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lvm.c" />
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lzio.c" />
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{57D2471B-3138-495E-AF18-6E290D098FFC}</ProjectGuid>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>lua</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<PlatformToolset>v140_xp</PlatformToolset>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="Shared">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup />
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>LUA_COMPAT_5_2;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\lua;</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>LUA_COMPAT_5_2;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\lua;</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>LUA_COMPAT_5_2;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\lua;</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>LUA_COMPAT_5_2;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\lua;</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
|
@ -0,0 +1,127 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="lua">
|
||||
<UniqueIdentifier>{11fdcc17-fcff-49b3-a02a-4944ad26ce17}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="lua\lib">
|
||||
<UniqueIdentifier>{5da24537-1b54-450f-a97d-dd0e4d1b62a8}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="lpeg">
|
||||
<UniqueIdentifier>{b8388de1-c7fc-49ff-8421-8685878cb398}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lauxlib.c">
|
||||
<Filter>lua\lib</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lbaselib.c">
|
||||
<Filter>lua\lib</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lbitlib.c">
|
||||
<Filter>lua\lib</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lcorolib.c">
|
||||
<Filter>lua\lib</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lmathlib.c">
|
||||
<Filter>lua\lib</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lstrlib.c">
|
||||
<Filter>lua\lib</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ltablib.c">
|
||||
<Filter>lua\lib</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lutf8lib.c">
|
||||
<Filter>lua\lib</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lapi.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lcode.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lctype.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ldblib.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ldebug.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ldo.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ldump.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lfunc.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lgc.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\linit.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\llex.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lmem.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\loadlib.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lobject.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lopcodes.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\loslib.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lparser.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lstate.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lstring.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ltable.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\ltm.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lundump.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lvm.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lzio.c">
|
||||
<Filter>lua</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lpcap.c">
|
||||
<Filter>lpeg</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lpcode.c">
|
||||
<Filter>lpeg</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lpprint.c">
|
||||
<Filter>lpeg</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lptree.c">
|
||||
<Filter>lpeg</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\..\sdk\lua-5.3.1\src\lpvm.c">
|
||||
<Filter>lpeg</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -0,0 +1,160 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{95A32262-B41A-4123-BD54-B26ED158CB29}</ProjectGuid>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>test</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="Shared">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\gif;..\..\..\include\tic80;..\..\..\src;</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\gif;..\..\..\include\tic80;..\..\..\src;</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\gif;..\..\..\include\tic80;..\..\..\src;</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>..\..\..\include\gif;..\..\..\include\tic80;..\..\..\src;</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\..\src\ext\gif.c" />
|
||||
<ClCompile Include="..\..\..\tests\test_gif.c" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\gif\gif.vcxproj">
|
||||
<Project>{6ea9d998-7557-4aed-abfc-142f9960c9b6}</Project>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\..\tests\test_gif.c" />
|
||||
<ClCompile Include="..\..\..\src\ext\gif.c" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<LocalDebuggerWorkingDirectory>$(ProjectDir)..\..\..\tests</LocalDebuggerWorkingDirectory>
|
||||
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<LocalDebuggerWorkingDirectory>$(ProjectDir)..\..\..\tests</LocalDebuggerWorkingDirectory>
|
||||
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<LocalDebuggerWorkingDirectory>$(ProjectDir)..\..\..\tests</LocalDebuggerWorkingDirectory>
|
||||
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<LocalDebuggerWorkingDirectory>$(ProjectDir)..\..\..\tests</LocalDebuggerWorkingDirectory>
|
||||
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
|
||||
</PropertyGroup>
|
||||
</Project>
|
|
@ -0,0 +1,88 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 14
|
||||
VisualStudioVersion = 14.0.25420.1
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tic", "tic.vcxproj", "{B6ECC66E-26FA-42C2-8F6C-E4338424F38A}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lua", "..\lua\lua.vcxproj", "{57D2471B-3138-495E-AF18-6E290D098FFC}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib", "..\zlib\zlib.vcxproj", "{1DFBDFA2-F204-42FF-B99E-250E4B2EBA04}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gif", "..\gif\gif.vcxproj", "{6EA9D998-7557-4AED-ABFC-142F9960C9B6}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tic80", "..\tic80\tic80.vcxproj", "{C4D8BC10-EBF6-42BB-9B5D-6712FB428A50}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "example", "..\example\example.vcxproj", "{86CAA9C1-C61A-40D8-AC77-33D94754C824}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "test", "..\test\test.vcxproj", "{95A32262-B41A-4123-BD54-B26ED158CB29}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|x64 = Debug|x64
|
||||
Debug|x86 = Debug|x86
|
||||
Release|x64 = Release|x64
|
||||
Release|x86 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{B6ECC66E-26FA-42C2-8F6C-E4338424F38A}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{B6ECC66E-26FA-42C2-8F6C-E4338424F38A}.Debug|x64.Build.0 = Debug|x64
|
||||
{B6ECC66E-26FA-42C2-8F6C-E4338424F38A}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{B6ECC66E-26FA-42C2-8F6C-E4338424F38A}.Debug|x86.Build.0 = Debug|Win32
|
||||
{B6ECC66E-26FA-42C2-8F6C-E4338424F38A}.Release|x64.ActiveCfg = Release|x64
|
||||
{B6ECC66E-26FA-42C2-8F6C-E4338424F38A}.Release|x64.Build.0 = Release|x64
|
||||
{B6ECC66E-26FA-42C2-8F6C-E4338424F38A}.Release|x86.ActiveCfg = Release|Win32
|
||||
{B6ECC66E-26FA-42C2-8F6C-E4338424F38A}.Release|x86.Build.0 = Release|Win32
|
||||
{57D2471B-3138-495E-AF18-6E290D098FFC}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{57D2471B-3138-495E-AF18-6E290D098FFC}.Debug|x64.Build.0 = Debug|x64
|
||||
{57D2471B-3138-495E-AF18-6E290D098FFC}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{57D2471B-3138-495E-AF18-6E290D098FFC}.Debug|x86.Build.0 = Debug|Win32
|
||||
{57D2471B-3138-495E-AF18-6E290D098FFC}.Release|x64.ActiveCfg = Release|x64
|
||||
{57D2471B-3138-495E-AF18-6E290D098FFC}.Release|x64.Build.0 = Release|x64
|
||||
{57D2471B-3138-495E-AF18-6E290D098FFC}.Release|x86.ActiveCfg = Release|Win32
|
||||
{57D2471B-3138-495E-AF18-6E290D098FFC}.Release|x86.Build.0 = Release|Win32
|
||||
{1DFBDFA2-F204-42FF-B99E-250E4B2EBA04}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{1DFBDFA2-F204-42FF-B99E-250E4B2EBA04}.Debug|x64.Build.0 = Debug|x64
|
||||
{1DFBDFA2-F204-42FF-B99E-250E4B2EBA04}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{1DFBDFA2-F204-42FF-B99E-250E4B2EBA04}.Debug|x86.Build.0 = Debug|Win32
|
||||
{1DFBDFA2-F204-42FF-B99E-250E4B2EBA04}.Release|x64.ActiveCfg = Release|x64
|
||||
{1DFBDFA2-F204-42FF-B99E-250E4B2EBA04}.Release|x64.Build.0 = Release|x64
|
||||
{1DFBDFA2-F204-42FF-B99E-250E4B2EBA04}.Release|x86.ActiveCfg = Release|Win32
|
||||
{1DFBDFA2-F204-42FF-B99E-250E4B2EBA04}.Release|x86.Build.0 = Release|Win32
|
||||
{6EA9D998-7557-4AED-ABFC-142F9960C9B6}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{6EA9D998-7557-4AED-ABFC-142F9960C9B6}.Debug|x64.Build.0 = Debug|x64
|
||||
{6EA9D998-7557-4AED-ABFC-142F9960C9B6}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{6EA9D998-7557-4AED-ABFC-142F9960C9B6}.Debug|x86.Build.0 = Debug|Win32
|
||||
{6EA9D998-7557-4AED-ABFC-142F9960C9B6}.Release|x64.ActiveCfg = Release|x64
|
||||
{6EA9D998-7557-4AED-ABFC-142F9960C9B6}.Release|x64.Build.0 = Release|x64
|
||||
{6EA9D998-7557-4AED-ABFC-142F9960C9B6}.Release|x86.ActiveCfg = Release|Win32
|
||||
{6EA9D998-7557-4AED-ABFC-142F9960C9B6}.Release|x86.Build.0 = Release|Win32
|
||||
{C4D8BC10-EBF6-42BB-9B5D-6712FB428A50}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{C4D8BC10-EBF6-42BB-9B5D-6712FB428A50}.Debug|x64.Build.0 = Debug|x64
|
||||
{C4D8BC10-EBF6-42BB-9B5D-6712FB428A50}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{C4D8BC10-EBF6-42BB-9B5D-6712FB428A50}.Debug|x86.Build.0 = Debug|Win32
|
||||
{C4D8BC10-EBF6-42BB-9B5D-6712FB428A50}.Release|x64.ActiveCfg = Release|x64
|
||||
{C4D8BC10-EBF6-42BB-9B5D-6712FB428A50}.Release|x64.Build.0 = Release|x64
|
||||
{C4D8BC10-EBF6-42BB-9B5D-6712FB428A50}.Release|x86.ActiveCfg = Release|Win32
|
||||
{C4D8BC10-EBF6-42BB-9B5D-6712FB428A50}.Release|x86.Build.0 = Release|Win32
|
||||
{86CAA9C1-C61A-40D8-AC77-33D94754C824}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{86CAA9C1-C61A-40D8-AC77-33D94754C824}.Debug|x64.Build.0 = Debug|x64
|
||||
{86CAA9C1-C61A-40D8-AC77-33D94754C824}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{86CAA9C1-C61A-40D8-AC77-33D94754C824}.Debug|x86.Build.0 = Debug|Win32
|
||||
{86CAA9C1-C61A-40D8-AC77-33D94754C824}.Release|x64.ActiveCfg = Release|x64
|
||||
{86CAA9C1-C61A-40D8-AC77-33D94754C824}.Release|x64.Build.0 = Release|x64
|
||||
{86CAA9C1-C61A-40D8-AC77-33D94754C824}.Release|x86.ActiveCfg = Release|Win32
|
||||
{86CAA9C1-C61A-40D8-AC77-33D94754C824}.Release|x86.Build.0 = Release|Win32
|
||||
{95A32262-B41A-4123-BD54-B26ED158CB29}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{95A32262-B41A-4123-BD54-B26ED158CB29}.Debug|x64.Build.0 = Debug|x64
|
||||
{95A32262-B41A-4123-BD54-B26ED158CB29}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{95A32262-B41A-4123-BD54-B26ED158CB29}.Debug|x86.Build.0 = Debug|Win32
|
||||
{95A32262-B41A-4123-BD54-B26ED158CB29}.Release|x64.ActiveCfg = Release|x64
|
||||
{95A32262-B41A-4123-BD54-B26ED158CB29}.Release|x64.Build.0 = Release|x64
|
||||
{95A32262-B41A-4123-BD54-B26ED158CB29}.Release|x86.ActiveCfg = Release|Win32
|
||||
{95A32262-B41A-4123-BD54-B26ED158CB29}.Release|x86.Build.0 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|