gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

Flash Equipment > Flash2Advance - Linux support?

#5546 - pab123 - Thu May 01, 2003 9:10 am

Hi,

Is anyone working on a Linux-version of an Flash2Advance (parallel-port version) writer? (No: flgba doesn't work.. it's for flash-advance)

I got the Windows Version running with Wine, and wine has some very interesting logging features wich would it make easy, to reverse-engineer the win32 software..

I assume the biggest problem would be the (C) of the i.linker software..
I don't think it's legal to redistribute the i.linker with a linux version (The multiboot thing wouldn't be a problem: pogoshell rulez ;) ) ..

So i just wanted to ask if anybody is working on it.. if not: i'll waste my time on doing it :)

#5556 - tepples - Thu May 01, 2003 4:53 pm

pab123 wrote:
I got the Windows Version [of the F2A linker software] running with Wine, and wine has some very interesting logging features wich would it make easy, to reverse-engineer the win32 software..

I assume the biggest problem would be the (C) of the i.linker software

In the early 1980s, Compaq opened up the PC platform, using a technique called "clean-room reverse engineering" to clone the PC BIOS. It went something like this:
  1. Alice translates the program into a specification in English.
  2. Alice sends the specification to Bob. All communications between Alice and Bob are expressed in terms of the specification.
  3. Bob implements the specification in code.

A judgment of copyright infringement against a defendant requires that the defendant meet the legal standard of copying, which includes both access to the original work and substantial similarity of expression between the original work and the allegedly infringing work. A judge ruled in IBM v. Compaq that if Bob has seen only the specification and not the original work, then Bob did not have access and could not have infringed the copyright.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#6265 - ecurtz - Wed May 21, 2003 6:42 am

pab123 wrote:

I got the Windows Version running with Wine, and wine has some very interesting logging features wich would it make easy, to reverse-engineer the win32 software..


Can you capture the traffic with WINE when the writer software is running? I just stared looking into doing some drivers for OS X and I don't see any driver activity (using USB Snoop) after the device is initially plugged in. I'm guessing it's just setting up some resident bit which dumps memory back and forth, but I'm not sure. I don't have a F2A - I've tried a FA Xtreme, and an XGFlash, but as far as I can tell these things all work about the same...

- eli

#6650 - philip - Sun Jun 01, 2003 2:16 am

pab123 wrote:

I assume the biggest problem would be the (C) of the i.linker software..
I don't think it's legal to redistribute the i.linker with a linux version (The multiboot thing wouldn't be a problem: pogoshell rulez ;) ) ..


To be honest, I don't think they'd particularly care if you did a Linux version and gave it away. What are they gonna do, be angry you opened up their hardware to another 20% of users at no effort to them? It's possible they may even give you information on how it works if you ask for exactly this reason (if anyone can actually find an email address for the f2a people. I couldn't on their website). After all, they're in the business of selling the hardware, not software.

I just recently got one of these carts and have to program it using the Smartwallet, which is pretty cool, but it'd be nice to be able to use the cable too (though I'm USB, not parallel), if only to be able to backup and restore the savegames.

Oh, and you mention Pogoshell. Where can I get a Linux version of this from? The .exes are for Windows. It looks pretty sweet!

#7075 - Zero - Sun Jun 08, 2003 2:18 am

Quote:
I got the Windows Version running with Wine, and wine has some very interesting logging features wich would it make easy, to reverse-engineer the win32 software..


really? does it work???

i would totally help write software for it. it would help to get some data from these flash2advance guys though....

#7081 - ecurtz - Sun Jun 08, 2003 8:29 pm

Zero wrote:
i would totally help write software for it. it would help to get some data from these flash2advance guys though....


These Japanese guys have developed a homebuilt cable similar enough to the F2A that their firmware will already support some features using the F2A cable.

http://home.att.ne.jp/gamma/TeamKNOx/xla/xla.html

I've written them for permission to use their firmware to develop a Mac OS X tool for the F2A, and they sounded interested in Linux support as well. Any code I write will be available.

My hardware should arrive by next weekend, I'll be sure to post as soon as I have anything working. Anybody who wants to share information feel free to contact me.

- eli

#7282 - pab123 - Fri Jun 13, 2003 6:43 pm

Hi again..

recently i found out, that someone did a program to speak with the usb version of the f2a linker:


http://www.emulinks.de/f2a/

The protocoll for speaking with the ilinker seems to be 100% the same as in the parallel-version (logical :) ).. but the 'startup' code is quiete different.

Is anyone here good in programming parallel-ports?
I couldn't find any good documentation and using /dev/port & lseek(0x378) just reboots my pc, ooops ;)

#7287 - Cyberman - Fri Jun 13, 2003 8:56 pm

You need to use the IO specific instructions to access the ports. Also your program has to have the privledges to access the IO ports. I think you would be better off compiling a module into the kernal to handle this instead. This alleviates the problem of a program directly manipulating the IO. I've seen PLIP drivers and other things for the parallel port so I don't see a problem with a F2A driver.

Things you need:
How to know if the F2A cable is pluged in.
Finding the IO port from BIOS or whatever way is available under Linux.
High level functions you need to run the module with the hardware. IE open the F2A driver read and write to the F2A and close it safely.

At that point all the code resides in the application to copy data to the F2A.

Cyb

#7288 - jerome187 - Fri Jun 13, 2003 9:39 pm

I got the windoze version to start up with wine, but it wolent read/write anything. has anyone got it to work?
[/code]

#8613 - GaiDaigoji - Wed Jul 16, 2003 4:30 pm

pab123 wrote:
Hi again..

recently i found out, that someone did a program to speak with the usb version of the f2a linker:


http://www.emulinks.de/f2a/

The protocoll for speaking with the ilinker seems to be 100% the same as in the parallel-version (logical :) ).. but the 'startup' code is quiete different.

Is anyone here good in programming parallel-ports?
I couldn't find any good documentation and using /dev/port & lseek(0x378) just reboots my pc, ooops ;)


I was thinking the same thing. If that code could be modified to work with a paralell port rather than a usb port it might work.