The libmame library only exports C symbols in its API although the MAME internals do require linking against the C++ standard library so although programs using libmame can be C programs, a C++ standard library must be present on the system to use libmame. Programs can link against the library either statically (although this produces a very large executable) or dynamically (the preferred mechanism). Libmame is defined as a C API in a single header file, libmame.h. Libmame is a patch that can be applied to the standard MAME source code to produce a modified version of MAME, still under the MAME license, that can be compiled as a library. * (actually, the patched version can be compiled as a standalone program as normal but has the additional feature of supporting being compiled as a library, but for the purposes of this documentation, only the patched MAME compiled as a library will be considered) Embedding MAME in unusual places, such as directly into operating systems or window managers or elsewhere that unique functionality could be provided (example: a Linux installer that plays MAME games while the user waits for the install to complete).start a game from a known save state, feed it canned input for a fixed number of frames, and then save its game state and compare to a previously saved state to ensure that the game is still playing exactly as before a MAME coding change) Automated test suites that run games and detect crashes or even unintended changes to game states (i.e.Sophisticated benchmarking programs that 'play' the game during the benchmark, or game playback systems that can play back games starting with a saved game state and a recorded sequence of user inputs, resulting in much smaller playback files than standard movie files.Implement sophisticated user input schemes that may involve user interaction not possible with standalone MAME.Programmatically saving and loading game states to start emulated games at a known point in time, every time, according to user preferences.Rendering the UI that would normally control the game in a way that integrates with the frontend UI rather than being the MAME default boxed-list UI system.Rendering the game screen in any position on the monitor, including being embedded in or sharing the screen with other UI elements.MAME can be built directly into a "frontend" program and allow for unique features, such as:.The benefit of libmame is to allow programs to incorporate game emulation into themselves directly rather than forking a copy of the MAME standalone and giving up control of the audio, video, and user input system, a program built using libmame can run the emulator within its own process space and have full control over the rendering of audio and video and the handling of user input. Libmame is a patch to the official MAME sources that allows MAME to be built as a C library instead of as a standalone program *. Suggested credit line: Library of Congress, Music Division.Libmame - MAME as a C library libmame - MAME as a C library Please contact: Performing Arts Reading Room. The Library of Congress would like to learn more about these materials and would like to hear from individuals or institutions that have any additional information or know of their history. ![]() In some cases, the Library was unable to identify a possible rights holder and has elected to place some of those items online as an exercise of fair use for strictly non-commercial educational uses. ![]() Items included here with the permission of the rights holders are indicated as such in the bibliographic record for each item. This catalog data provides the details known to the Library of Congress regarding the corresponding items and may assist users in making independent assessments of the legal status of these items as related to their desired uses. Users should consult the bibliographic information that accompanies each item for specific information. Responsibility for making an independent legal assessment of an item and securing any necessary permission ultimately rests with persons desiring to use the item. There may be content that is protected as "works for hire" (copyright may be held by the party that commissioned the original work) and/or under the copyright or neighboring-rights laws of other nations. The written permission of the copyright owners and/or other rights holders (such as holders of publicity and/or privacy rights) is required for distribution, reproduction, or other use of protected items beyond that allowed by fair use or other statutory exemptions. The Library of Congress is providing access to these materials for educational and research purposes and makes no warranty with regard to their use for other purposes.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |