This is a collection of Frequently Asked Questions.
The sections of this document are:
script_emulation delay(5000); \ simulate_event(ui_snapshot, 50); \ simulate_event(ui_record_start, 50); \ delay(15100); \ simulate_event(ui_record_stop, 50); \ delay(100); \ simulate_event(ui_cancel, 50);
emulator "mng" generic "" emulator_altss "mng" "C:\CLIP" emulator_roms "mng" "C:\CLIP" emulator_roms_filter "mng" "*.mng"
emulator "mp3" generic "" emulator_altss "mp3" "C:\MP3;C:\MUSIC" emulator_roms "mp3" "C:\MP3;C:\MUSIC" emulator_roms_filter "mp3" "*.mp3"
stubedit c:\djgpp\bin\gcc.exe bufsize=32k stubedit c:\djgpp\bin\ld.exe bufsize=32k stubedit c:\djgpp\bin\make.exe bufsize=32k stubedit c:\djgpp\lib\gcc-lib\djgpp\3.23\collect2.exe bufsize=32k
You may need to use different paths to the files, especially for collect2.exe.
In CONFIG.SYS:
dos=high device=C:\DOS\W98\HIMEM.SYS device=C:\DOS\EMM386.EXE NOEMS NOVCPI |
In AUTOEXEC.BAT:
smartdrv 1024 |
If you have a lot of RAM you can use a bigger disk cache like :
smartdrv 8192 |
alias char-major-209 svgalib_helper |
in your /etc/modules.conf file and run only one time :
depmod -a |
After that the module is loaded automatically every time is needed.
Or upgrade at the svgalib 1.9.16 library which supports for some boards the vsync IRQ.
Option "omit xfree86-dga" |
is not present or commented. To test it you can use the `dga' utility. Run :
man dga |
::respawn:-/bin/sh -c advmenu |
or write a simple program wrapper which sets a tty and execs the program you want, like :
i=open("/dev/tty1", O_RDWR); ioctl(i, TIOCSCTTY, 1); exec(...) |
The svgawin drivers are inherently unsafe because they should coexist with the normal Windows drivers.
The most common problem is that the Windows driver sets the video card in a state that the SVGAWIN driver cannot understand or restore.
The only possible solution is to try to reduce the video hardware acceleration at the minimum in DisplayProperties/Settings/Advanced/Troubleshooting.
If you want a stable solution you must use the Linux or DOS version of AdvanceMAME and AdvanceMENU.
Alternatively you can try to use two different video boards, one for Windows and the other for the game display. Check the `device_svgawin_skipboard' option to control which video board to use.
If you have a TV with SCART input (all european TVs) you can buy or build a VGA to SCART cable.
If the game and the video refresh rate are only a little different the tearing split line is slowly moving up or down. If the refreshes are very different the split line is moving randomly.
The tearing effect is mostly noticeable in games with a continuously scrolling background.
Generally they are high refresh rates, prime with the original game frequency.
For example, suppose to use a 70 Hz video mode with a 60 Hz game. You can display every frame for 1/60 of second and get the tearing effect. Alternatively you can display every frame for 1/70 of second, but after 7 frame you need to display a frame for 2/70 of second to synchronize with the original game speed.
The only exception is for frequencies which are multiplier of the original game refresh rate.
In addition you have some extra rights granted by a special license exception which allow you to link the AdvanceMAME GPL source with the not GPL MAME source.
The exception give also to you the rights to eliminate it if you don't like it or if you want to include the AdvanceMAME source in another GPL program. So, AdvanceMAME is 100% GPL.
You can more easily think at it as a sort of double license. A GPL or a GPL + exception. You have all the rights of the GPL, and, if you want, some others.
The only limitation is for AdvanceMAME. AdvanceMAME cannot include external GPL source without the explicit permission of the source copyright holder.
The license exception is added outside the GPL license text. It's added at the top of every source files for which the exception has the validity.
How to add this sort of exceptions is specifically covered on the Official GPL FAQ written by the same people which have written the GPL license and which are the copyright holders of the GPL license.
Specifically, in the Official GPL FAQ you can see that in every source files with the license exception you must add the following text :
"This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version."
Which explicitly claims that the program with the license exception is still GPL.
Anyway, calling a software program or library doesn't change his license.
The license exception explicitly allows you to combine the GPL program with MAME. These exceptions exist specifically to solve this problem. Essentially, if your GPL program need to use another not GPL module, you (as copyright holder) can grant at the user the rights to link it with the not GPL module.
The GPL was made to protect the interests of the copyright holder. But if the copyright holder wants, he can relax the license adding specific exceptions that extend the rights of the users. So, the users can do things not generally permitted by the simple GPL license.
The source distribution of AdvanceMAME is released with an Open Source license. So, it was accepted.
The xmame is released with the "MAME License". The MAME License isn't an Open Source license as defined on http://www.opensource.org/. So, it was rejected.
Some source and documentation files are also under the copyright of Filipe Estima, Ian Patterson, Randy Schnedler, S. Sakamaki.
http://www.gnu.org/licenses/gpl-faq.html
|
If the libraries that you link with falls within the following exception in the GPL:
However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. |
then you don't have to do anything special to use them. In other words, if the libraries you need come with major parts of a proprietary operating system, the GPL says people can link your program with them.
If you want your program to link against a library not covered by that exception, you need to add your own exception, wholly outside of the GPL. This copyright notice and license notice give permission to link with the program FOO:
Copyright (C) yyyy |
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. |
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. |
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
In addition, as a special exception, <name of copyright holder> gives permission to link the code of this program with the FOO library (or with modified versions of FOO that use the same license as FOO), and distribute linked combinations including the two. You must obey the GNU General Public License in all respects for all of the code used other than FOO. If you modify this file, you may extend this exception to your version of the file, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version. |
Only the copyright holders for the program can legally authorize this exception. If you wrote the whole program yourself, then assuming your employer or school does not claim the copyright, you are the copyright holder--so you can authorize the exception. But if you want to use parts of other GPL-covered programs by other authors in your code, you cannot authorize the exception for them. You have to get the approval of the copyright holders of those programs.
When other people modify the program, they do not have to make the same exception for their code--it is their choice whether to do so.
Adding this exception eliminates the legal issue, ...
http://www.gnu.org/licenses/gpl-faq.html#WritingFSWithNFLibs
Strictly speaking, the GPL is a license from the developer for others to use, distribute and change the program. The developer itself is not bound by it, so no matter what the developer does, this is not a "violation" of the GPL.
However, if the developer does something that would violate the GPL if done by someone else, the developer will surely lose moral standing in the community.
http://www.gnu.org/licenses/gpl-faq.html#TOCDeveloperViolate
This is a well-meaning request, but this method of providing the source doesn't really do the job.
A user that wants the source a year from now may be unable to get the proper version from another site at that time. The standard distribution site may have a newer version, but the same diffs probably won't work with that version.
So you need to provide complete sources, not just diffs, with the binaries.
http://www.gnu.org/licenses/gpl-faq.html#TOCDistributingSourceIsInconvenient