11 July 2017, 01:55 | #22 | |
Registered User
Join Date: Dec 2012
Location: Vancouver/Canada
Posts: 676
|
Quote:
Again..it can play 2img Apple IIgs games. What it cannot play is apple II games in .dsk, .do format that is 140 KB and it is 8-bit. That it cannot play. |
|
11 July 2017, 02:40 | #23 | |
Registered User
Join Date: Feb 2012
Location: #DrainTheSwamp
Posts: 4,545
|
Quote:
so we should skip KEGS and try to fix the AppleWin emulator. I hope someone can help. #1) based on LinApple I did my own test, removed all the curl/ftp stuff from the source and I can build a binary for cygwin. with curl the emulator is able to download diskimages from some ftp servers. so i removed all the curl stuff, since you can just insert a diskimage locally. now using the amiga crosscompiler, i get the first errors I cannot fix: Code:
$ make m68k-amigaos-g++.exe -O3 -w -I/opt/m68k-amigaos/include/SDL -c -o Debug.o Debug.cpp In file included from stdafx.h:54, from Debug.cpp:38: Log.h:7: badly punctuated parameter list in `#define' In file included from stdafx.h:63, from Debug.cpp:38: SerialComms.h:3: pthread.h: No such file or directory make: *** [<builtin>: Debug.o] Error 1 Log.h - what is wrong here? Code:
1 #pragma once 2 3 #ifndef _VC71 // __VA_ARGS__ not supported on MSVC++ .NET 7.x 4 #ifdef _DEBUG 5 #define LOG(format, ...) LogOutput(format, __VA_ARGS__) 6 #else 7 #define LOG(...) 8 #endif 9 #endif 10 11 extern void LogOutput(LPCTSTR format, ...); doing so, i'm stuck with pthread.h - is there something to replace pthread.h ? #2) these pthread related functions seems to be used, in a simple way, not really sure, but i guess some time(!?) critical situations, for example: Code:
1 void CpuNmiReset() 2 { 3 _ASSERT(g_bCritSectionValid); 4 if (g_bCritSectionValid) pthread_mutex_lock(&g_CriticalSection); 5 g_bmNMI = 0; 6 g_bNmiFlank = FALSE; 7 if (g_bCritSectionValid) pthread_mutex_unlock(&g_CriticalSection); 8 } while doing so i have another problem: Code:
194 typedef struct 195 { 196 union 197 { 198 struct 199 { 200 BYTE l; 201 BYTE h; 202 }; 203 USHORT w; 204 }; 205 } IWORD; 206 what is wrong in line 202 ? ^^^this error did not occure when i build the binary for cygwin, this was gcc 5.4.0. now the amiga crosscompiler is gcc 2.95.3 - this might be a bit too old now? Last edited by emufan; 11 July 2017 at 04:44. |
|
11 July 2017, 04:43 | #24 |
AmigaDev.com
Join Date: Mar 2016
Location: Stockholm, Sweden
Age: 35
Posts: 625
|
This is as far as I get:
Code:
Linking applewin obj/m68k-amigaos/Release/SerialComms.o(.text+0x438):obj/m68k-amigaos/Release/SerialComms.o: undefined reference to `tcgetattr' obj/m68k-amigaos/Release/SerialComms.o(.text+0x450):obj/m68k-amigaos/Release/SerialComms.o: undefined reference to `cfsetispeed' obj/m68k-amigaos/Release/SerialComms.o(.text+0x468):obj/m68k-amigaos/Release/SerialComms.o: undefined reference to `cfsetospeed' obj/m68k-amigaos/Release/SerialComms.o(.text+0x5d6):obj/m68k-amigaos/Release/SerialComms.o: undefined reference to `tcsetattr' obj/m68k-amigaos/Release/Timer.o(.text+0x184):obj/m68k-amigaos/Release/Timer.o: undefined reference to `setitimer' obj/m68k-amigaos/Release/Timer.o(.text+0x216):obj/m68k-amigaos/Release/Timer.o: undefined reference to `setitimer' obj/m68k-amigaos/Release/Riff.o(.text+0x82):obj/m68k-amigaos/Release/Riff.o: undefined reference to `SetFilePointer(void*, long, long, unsigned)' obj/m68k-amigaos/Release/Riff.o(.text+0x266):obj/m68k-amigaos/Release/Riff.o: undefined reference to `SetFilePointer(void*, long, long, unsigned)' obj/m68k-amigaos/Release/Riff.o(.text+0x2e6):obj/m68k-amigaos/Release/Riff.o: undefined reference to `SetFilePointer(void*, long, long, unsigned)' obj/m68k-amigaos/Release/Riff.o(.text+0x342):obj/m68k-amigaos/Release/Riff.o: undefined reference to `SetFilePointer(void*, long, long, unsigned)' obj/m68k-amigaos/Release/DiskImage.o(.text+0xa7e):obj/m68k-amigaos/Release/DiskImage.o: undefined reference to `SetFilePointer(void*, long, long, unsigned)' obj/m68k-amigaos/Release/DiskImage.o(.text+0xd1e):obj/m68k-amigaos/Release/DiskImage.o: more undefined references to `SetFilePointer(void*, long, long, unsigned)' follow obj/m68k-amigaos/Release/Frame.o(.text+0x68):obj/m68k-amigaos/Release/Frame.o: undefined reference to `DrawStatusArea(short)' obj/m68k-amigaos/Release/Harddisk.o(.text+0xb48):obj/m68k-amigaos/Release/Harddisk.o: undefined reference to `SetFilePointer(void*, long, long, unsigned)' obj/m68k-amigaos/Release/Harddisk.o(.text+0xc4e):obj/m68k-amigaos/Release/Harddisk.o: undefined reference to `SetFilePointer(void*, long, long, unsigned)' obj/m68k-amigaos/Release/Harddisk.o(.text+0xcc4):obj/m68k-amigaos/Release/Harddisk.o: undefined reference to `SetFilePointer(void*, long, long, unsigned)' obj/m68k-amigaos/Release/Harddisk.o(.text+0xd6a):obj/m68k-amigaos/Release/Harddisk.o: undefined reference to `SetFilePointer(void*, long, long, unsigned)' /opt/m68k-amigaos/lib/gcc/m68k-amigaos/6.3.1b/libstdc++.a(ctype_configure_char.o)(.text+0x7a): In function `std::ctype<char>::ctype(int*, char const*, bool, unsigned long)': /home/marlon/amigaos-cross-toolchain/.build-m68k/build/gcc-6/m68k-amigaos/libstdc++-v3/src/c++11/ctype_configure_char.cc:49: undefined reference to `vtable for std::ctype<char>' /opt/m68k-amigaos/lib/gcc/m68k-amigaos/6.3.1b/libstdc++.a(ctype_configure_char.o)(.text+0x18a): In function `std::ctype<char>::ctype(char const*, bool, unsigned long)': /home/marlon/amigaos-cross-toolchain/.build-m68k/build/gcc-6/m68k-amigaos/libstdc++-v3/src/c++11/ctype_configure_char.cc:60: undefined reference to `vtable for std::ctype<char>' collect2: error: ld returned 1 exit status Makefile:168: recipe for target '../bin/applewin.68k' failed make[1]: *** [../bin/applewin.68k] Error 1 Makefile:16: recipe for target 'applewin' failed make: *** [applewin] Error 2 I suggest using this repo as a starting point rather than some code from a dropbox: https://github.com/dabonetn/linapple-pie Which is referenced here: http://linapple.sourceforge.net/down...017-03-12_2001 Where I suppose xboxown's source is based on (unsure if it's older or up to date) |
11 July 2017, 04:48 | #25 | |
AmigaDev.com
Join Date: Mar 2016
Location: Stockholm, Sweden
Age: 35
Posts: 625
|
Quote:
http://eab.abime.net/showthread.php?t=85474 https://github.com/bebbo/amigaos-cross-toolchain |
|
11 July 2017, 05:00 | #26 |
AmigaDev.com
Join Date: Mar 2016
Location: Stockholm, Sweden
Age: 35
Posts: 625
|
To be honest, the code is rather messy and it seems that the LinApple programmer has made some shortcuts here and there just to get it working. So in order to do a proper port to Amiga there's more to it than just compiling.
|
11 July 2017, 05:05 | #27 | |
Registered User
Join Date: Dec 2012
Location: Vancouver/Canada
Posts: 676
|
Quote:
Actually that is where I got it from I think we should all work together as union as one to do this. So please guys assign me a task something where I can work on and I will report it as I work on it. In the end, we will literally have the best apple ii emulator ever invented by man kind in human history in Amiga 68k. With kegs on the side we will be set. |
|
11 July 2017, 05:07 | #28 |
Registered User
Join Date: Feb 2012
Location: #DrainTheSwamp
Posts: 4,545
|
i'm already using "Version from June, 2015: linapple_src-2b.tar.bz2"
once i tested the 6.x crosscompiler, but it was just ridiculus to download 2gb of useless data, each time you want to build it. but it's maybe worth another try, hence your results 1st i will try the linapple-pie with my current setup. |
11 July 2017, 05:08 | #29 | |
AmigaDev.com
Join Date: Mar 2016
Location: Stockholm, Sweden
Age: 35
Posts: 625
|
It already compiles for me, it's missing linkers to libc stuff. I'll check with bebbo and see what he has to say about it.
Quote:
The "Version from June, 2015: linapple_src-2b.tar.bz2" is actually older than the repo, fyi. |
|
11 July 2017, 05:39 | #30 |
Registered User
Join Date: Feb 2012
Location: #DrainTheSwamp
Posts: 4,545
|
but it makes no diff, it starts with the same error above (Log.h). :/
so it might be a compiler issue, i think i still have a gcc 3.x somewhere, gonna test this 1st. are there now some binary packs for the 6.x gcc crosscompiler? centos got a build, anyone made one for cygwin 32bit, willing to share? Last edited by emufan; 11 July 2017 at 05:49. |
11 July 2017, 09:57 | #31 |
Amiga user
Join Date: Nov 2008
Location: Sofia / Bulgaria
Posts: 459
|
I have ported AppleLin to AmigaOS 4 long time ago, but then I faced some really weird endian issues, so I left the port unfinished/unpublished. KEGS is working okay, so I just skipped AppleWin (AppleLin).
|
11 July 2017, 11:53 | #32 | |
Registered User
Join Date: Mar 2010
Location: Beckenham/England
Posts: 796
|
Quote:
|
|
11 July 2017, 17:12 | #33 | |
Registered User
Join Date: Dec 2012
Location: Vancouver/Canada
Posts: 676
|
Quote:
Share with us in how far you have reached in the port up and where you got stuck. This is where we need to begin in resolving the issue. |
|
11 July 2017, 17:29 | #34 | |
AmigaDev.com
Join Date: Mar 2016
Location: Stockholm, Sweden
Age: 35
Posts: 625
|
Quote:
https://github.com/MBeijer/linapple-pie You can see what I've done to make it compile. It's very hacky and I don't expect it to work. But you can use it as a base and go from there to make it work. The only issues when it's done compiling is the actual linking. To build the make-file (on linux) just run ./build_gmake and then type run make. On windows/cygwin run premake4.exe gmake |
|
11 July 2017, 17:37 | #35 | |
Registered User
Join Date: Dec 2012
Location: Vancouver/Canada
Posts: 676
|
Quote:
|
|
11 July 2017, 17:41 | #36 | |
AmigaDev.com
Join Date: Mar 2016
Location: Stockholm, Sweden
Age: 35
Posts: 625
|
Quote:
No, but seriously, click the green "Clone or download" button. EDIT: Now I'm down to this: Code:
Linking applewin obj/m68k-amigaos/Release/Timer.o(.text+0x184):obj/m68k-amigaos/Release/Timer.o: undefined reference to `setitimer' obj/m68k-amigaos/Release/Timer.o(.text+0x216):obj/m68k-amigaos/Release/Timer.o: undefined reference to `setitimer' /opt/m68k-amigaos/lib/gcc/m68k-amigaos/6.3.1b/libstdc++.a(ctype_configure_char.o)(.text+0x7a): In function `std::ctype<char>::ctype(int*, char const*, bool, unsigned long)': /home/marlon/amigaos-cross-toolchain/.build-m68k/build/gcc-6/m68k-amigaos/libstdc++-v3/src/c++11/ctype_configure_char.cc:49: undefined reference to `vtable for std::ctype<char>' /opt/m68k-amigaos/lib/gcc/m68k-amigaos/6.3.1b/libstdc++.a(ctype_configure_char.o)(.text+0x18a): In function `std::ctype<char>::ctype(char const*, bool, unsigned long)': /home/marlon/amigaos-cross-toolchain/.build-m68k/build/gcc-6/m68k-amigaos/libstdc++-v3/src/c++11/ctype_configure_char.cc:60: undefined reference to `vtable for std::ctype<char>' collect2: error: ld returned 1 exit status Makefile:168: recipe for target '../bin/applewin.68k' failed make[1]: *** [../bin/applewin.68k] Error 1 Makefile:16: recipe for target 'applewin' failed make: *** [applewin] Error 2 Last edited by Marlon_; 11 July 2017 at 18:06. |
|
11 July 2017, 18:53 | #37 |
Registered User
Join Date: Feb 2012
Location: #DrainTheSwamp
Posts: 4,545
|
|
11 July 2017, 18:55 | #38 |
AmigaDev.com
Join Date: Mar 2016
Location: Stockholm, Sweden
Age: 35
Posts: 625
|
|
11 July 2017, 19:03 | #39 | |
Registered User
Join Date: Feb 2012
Location: #DrainTheSwamp
Posts: 4,545
|
Quote:
hmm, is premake able to convert from msvc solutions to makefile on it's own? |
|
11 July 2017, 19:12 | #40 |
AmigaDev.com
Join Date: Mar 2016
Location: Stockholm, Sweden
Age: 35
Posts: 625
|
No, you make a configurationfile called premake4.lua where you define what should end up in the make file. then you use premake to generate one of the following:
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Porting SDL2 to Amiga | copse | request.Other | 3 | 30 November 2017 17:46 |
Porting an Amiga game to PC | CYBER_SLUNK | Coders. General | 4 | 31 January 2017 19:14 |
Porting Photoshop to Amiga | KONEY | Coders. General | 25 | 29 December 2016 23:49 |
Porting PhotoChrome ST/e to Amiga. | pandy71 | request.Other | 0 | 09 February 2015 15:12 |
Porting Qt Framework to Amiga OS enviroments | Pyromania | Coders. General | 2 | 24 July 2013 06:42 |
|
|