GithubHelp home page GithubHelp logo

tasemulators / gens-rerecording Goto Github PK

View Code? Open in Web Editor NEW
20.0 20.0 10.0 21.32 MB

The Gens rerecording project, a Sega Genesis, 32x, Sega CD emulator. The primary purpose is to expand features related to creating Tool-Assisted movies.

Home Page: http://tasvideos.org/EmulatorResources/Gens.html

C 41.83% C++ 42.88% HTML 1.58% Lua 0.32% Assembly 13.08% Objective-C 0.29% Batchfile 0.02%

gens-rerecording's People

Contributors

lab313ru avatar marzojr avatar realmonster avatar vadosnaprimer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gens-rerecording's Issues

Full Aero Support for Vista

Currently, certain actions under Vista will cause Aero to disable and a
compatibility warning to be displayed in the taskbar area. So far, I've
noticed the following does this:

1. EPX when it changes resolution (SonicCD does this for the title screen)
2. Switching between various render modes.
3. Various render modes switching resolution

I'm unsure what causes it but since it doesn't cause any major problems,
I'm proposing it's initially set to a low priority since it is only a minor
bug (and few people currently use Vista, even fewer with Aero).

Original issue reported on code.google.com by [email protected] on 5 Aug 2008 at 5:26

Loading savestates past the end of the movie in read-only mode

If I'm recording, and I switch to read-only mode and load a savestate that
is past the end of where I'm currently recording, something unexpected
happens. I think the mode switches to "finished" because it gives me
control but isn't recording.

This is pretty dangerous behavior. What SHOULD happen is that Gens should
realize that the state you loaded for playback is inconsistent with the
current movie, and give the standard "inconsistent with this movie"
message/choice.

Original issue reported on code.google.com by [email protected] on 8 Aug 2008 at 10:21

RAM Search new features - undo, search range, and mass highlight + eliminate

1) an Undo button! Especially when I am always selecting "no more than"
instead of "more than"

2) A search range, that saves your last range in the .cfg.  That way we can
quit seeing those 00AA values.

3) You can select a ram address and select eliminate to remove it from the
list.  It would be really nice if you could highlight several addresses and
then eliminate them


Original issue reported on code.google.com by [email protected] on 17 Aug 2008 at 12:11

Unable to select movie, something to do with mp3 files

1. Make a directory with spaces
2. Copy an ISO of a SegaCD game into there (my games filename also had spaces)
3. Open it and attempt to play a movie

When I browse to a movie and click open, it fails to open it. It just
displays 0 for rerecords, number of frames etc. and won't let me click play.

Specifics:
Path for ISO: H:\Games\Emulators\MDEmu-SR\Sonic CD (U)\Sonic CD (U).iso
Path for Movie: H:\Games\Emulators\MDEmu-SR\sonic-cd-usa-v2-nitsuja.gmv

It used to work fine like this (when playing upthorn's movie). Removing the
cfg file made no difference.

Original issue reported on code.google.com by [email protected] on 25 Aug 2008 at 4:57

Full Memory watch list doesn't watch without advancing a frame

What steps will reproduce the problem?
1. Load a list longer than Memory watch window.
2. Advance a frame
3. Scroll down list - values stay at -52

What is the expected output? What do you see instead?


Please use labels and text to provide additional information.


Original issue reported on code.google.com by [email protected] on 4 Dec 2008 at 11:24

Open ROM --> Cancel with already open ROM resets main frame counter

1. Open a ROM. Any ROM. Note the white frame counter is increasing.
2. (optional) Play back a movie.
3. Go to File --> Open ROM... but cancel without opening a ROM. The white
frame counter will reset to 0, and any movie already playing back will stop.

Expected functionality: frame counter should not reset, movie should
continue playing back.

Original issue reported on code.google.com by [email protected] on 10 Aug 2008 at 6:24

Request: Save the lag counter

I would like to be able to compare lag frames across savestate loads
without having to manually reset a counter after each load, much like how
the frame counter works. This can be achieved simply by adding the lag
counter to the savestate format.

The loading of the lag counter value could be made optional, although
actually I can't think of any circumstance where I would want to let the
lag counter accumulate across savestate boundaries as it does now. It's
easy to implement either way, but I would like confirmation as to whether
my feeling that it doesn't need to be optional is correct.

Original issue reported on code.google.com by [email protected] on 27 Jul 2008 at 6:48

Increased command line support

It would be nice if the following arguments could be passed into gens via
commandline (not just a rom name):

-cfg [filename]  Would load a specific .cfg file (useful for having
multiple gens configurations without keeping copies of gens in separate
folders)

-playmovie [filename] Would play a specific gmv/gm2 when gens is loaded

-readonly [bool]  Set read only status

-loadstate [filename]

-pause [bool]  whether to start paused or unpaused 

Original issue reported on code.google.com by [email protected] on 15 Aug 2008 at 11:36

Pause after movie playback

A toggle that, if in read-only, will pause a movie playback automatically
when it reaches the last frame (thus preventing the movie from finishing).


Original issue reported on code.google.com by [email protected] on 25 Jul 2008 at 2:35

Make output audio volume independent of emulation speed

Currently, speeding up the emulation causes the sound from multiple frames
of emulation to accumulate and get output as unusually loud or garbled
samples. Also, slowing down the emulation causes the sound to output
intermittently (which means it becomes harder to hear clearly and also
quieter on average).

I would like for both of these cases to instead output sound that's
continuous in volume. I believe this can be achieved by (in both cases)
dividing the final sound sample values (Seg_L, Seg_R) by the square root of
the delta number of elapsed sound samples since the last sound output, and
also (for the slowdown case) mixing in the previous output values instead
of leaving a gap in the output buffer when there is no new audio data yet.

Original issue reported on code.google.com by [email protected] on 28 Jul 2008 at 8:20

Crackling in CD audio

CD audio in Sega CD games sounds very crackly sometimes. This is a bug that
appeared between Gens9f and Gens9j (listen to Track 02 or Track 06 of Sonic
CD in those two versions and the difference is incredibly obvious) so I'm
guessing it's a bug in the volume control feature.

Original issue reported on code.google.com by [email protected] on 27 Jul 2008 at 6:26

Frame counter tweaks

1) When movie is in read-only, frame count should be in xxxx/yyyy format. 
Meaning you are on frame 53/1000 (of a 1000 frame long movie)

2) Some indication that a movie is not playing such as (no movie) 2343


Original issue reported on code.google.com by [email protected] on 25 Jul 2008 at 2:40

Auto-fire - ability to set multiple patterns

Auto-fire should have settings other than 1 on 1 off.
such as 2 on 2 off for 30fps games (that still accept input every frame but
require 2 frames of each input).

or other settings, especially to match weapon firing patterns of various games.

This feature was added to FCEU.16 or later.


Original issue reported on code.google.com by [email protected] on 25 Jul 2008 at 2:08

Macro support

Movie macros.  These will be blocks of input that can be inserted into a
movie from a hotkey/menu button.  Thy will also take into account lag via
the lag counter.


Original issue reported on code.google.com by [email protected] on 25 Jul 2008 at 1:44

Lua output window not resizeable.

The extra space to output values in LUA is invaluable. However, there is a
limit of about 10-15 lines at a time. 

The ability to dynamically resize the window would add to the utility of LUA


Original issue reported on code.google.com by [email protected] on 4 Dec 2008 at 11:29

LUA Input window

Since LUA contains the ability to output to the console (outside of the
emulator window) having 1 or more inputs via textboxes would allow for
additional control of LUA software dynamically. 

Example: A value determined externally in MATLAB is used to select the
target value of the RNG. LUA contains an input box that stays stable
regardless of start/run/restart. The LUA script uses that value to tell the
player the correct key combo to reach that value. 

Currently, this is done by having the LUA script open in an external
notepad window. The value is hardcoded into the script. 

Original issue reported on code.google.com by [email protected] on 4 Dec 2008 at 11:38

Bugs with movie length?

I fixed some possibly-related bugs recently with setting the movie length
(the movie wasn't getting shorter when I recorded from a savestate before
the end) and input splice (the input in the spliced-on section had
everything 2 frames late, including one frame of pressing all buttons).
Everything seems to be working normally again, but I think someone ought to
review my last two checkins (revisions 112 and 114) because I don't really
understand why I had to make those changes, which usually means there's a
better way to do it and probably another bug still there.

Original issue reported on code.google.com by [email protected] on 8 Sep 2008 at 1:39

Memory Watch - Recent File loads wrong file in list.

What steps will reproduce the problem?
1. Load a list
2. Load a second list
3. Load list in position 2. 
4. Try and load list that moves to position 2. 
5. Reloads List in position 1.

What is the expected output? What do you see instead?
Wrong list loads.

Please use labels and text to provide additional information.


Original issue reported on code.google.com by [email protected] on 4 Dec 2008 at 11:22

Frame advance occurs with

What steps will reproduce the problem?
1. In gens, load rom. Check that "allow background input" is disabled under
options->input.
2. Shift focus to another window.
3. Press frame advance key (\) (entering it here triggered it, for instance)

What is the expected output? What do you see instead?
It is expected that it not advance the frame, as the option is set not to
allow it. But it does, and maintains input that you held when shifting
focus (according to input display. tested with left, up+a, down+left+a+b+c). 

What version of the product are you using? On what operating system?
Gens "10a", Windows XP Pro
about says gens v2.11

Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 27 Jan 2009 at 9:43

7z archive support

The ability to open any rom zipped with a 7z compatible archive (7z, rar,
zip, etc)

If more than 1 valid rom, open a dialog with a list of available choices.

For reference, Nestopia and FCEUX have this.

Original issue reported on code.google.com by [email protected] on 25 Jul 2008 at 2:17

Request: RAM Watch --> Add Cheat

It's been a greyed out option for some time, but I feel I should re-request
it here for the hell of it.

I would quite like to be able to be able to add addresses and values in ram
watch to the game genie/cheat section. Doing it manually doesn't work, so
I'm assuming some sort of translation needs to be done.

Original issue reported on code.google.com by [email protected] on 25 Jul 2008 at 2:00

Request: Diagonal direction support

Some controllers have independant buttons for their diagonal d-pad. This
can be a problem in gens, as when the diagonals are pressed d-pad input
pretty much goes away entirely, which can be pretty annoying. I'm
requesting an (optional) keybinding for these buttons that simply holds
down their adjacent buttons (for example, top-left would hold down both up
and left).


Original issue reported on code.google.com by [email protected] on 25 Jul 2008 at 2:05

Current version has a pop-under dosbox.

Just updated my gens SVN for the first time in a while. 

It now creates a pop-under dosbox with the title being the directory and exe. 

Closing this box closes Gens. This is the first time I've encountered this
issue.


Original issue reported on code.google.com by [email protected] on 22 Jan 2009 at 7:31

RAM Watch GUI/Feature enhancements

Various tweak to RAM watch:
Dialog menu, with standard new, open, save, save as, recent, close options
with Accel keys attached.

2 new features in an "options" menu tab.
1) Load on startup - if checked, ram watch will open automatically when
gens is loaded
2) Load last file on startup - if checked, ram watch will load the last
watch file (from the recent list) when ram watch is loaded.



Original issue reported on code.google.com by [email protected] on 25 Jul 2008 at 1:36

RAM search, watch, and cheats for alternate CPU contexts

While working on implementing memory.register for LUA, it occured to me
that for SegaCD games, and 32X games, it would be very helpful to be able
to specify which CPU's memory space you want to hook.
Which, in turn, made me realize that there is literally no visibility of
the SegaCD sub68k memory space in current RAM search, and there's only one
small region of the 32X SH2 memory space currently included. Additionally,
the Z80's memory space, while almost entirely included in the 0xA0xxxx
region, could benefit from being separated from the Main68K memory.
My proposal is to turn the ram search dialog into a tabbed interface.
1. the 68000 tab, including: 
    *the game SRAM (SRAM_Start - SRAM_End) when applicable
    *the portion of SegaCD PRG-RAM viewable by the Main 68000 (020000 -
03FFFF; no change necessary)
    *the SegaCD Data RAM (200000 - 23FFFF; no change necessary) when applicable
    *the cartridge battery ram (400000 - 7FFFFF; trimmed to emulated BRAM
size) when applicable
    *the 32X frame buffer (840000 - 85FFFF) when applicable
    *the 32X frame overwrite buffer (860000 - 87FFFF) when applicable
    *the Z80 RAM (no change necessary)
    *the I/O region (A10000 - A1002F; perhaps) when applicable
    *the 32X register region (A15100 - A151FF) when applicable
    *the Main 68000 work RAM (no change necessary)
2. the Z80 tab, including:
    *The z80 RAM (0000 - 1FFF; same region currently shown at A0xxxx)
    *The YM2612 region (4000 - 4004)
    *The PSG region (7F11 - 7F12)
    *The z80 window into Main 68000 memory (8000 - FFFF)
3. the Sub 68000 tab (when SegaCD is active) including:
    *the PRG RAM (000000 - 01FFFF; same memory as shown in m68k tab)
    *the Data RAM (080000 - 0DFFFF; same memory as shown in m68k tab, but
mapped differently)
    *the system battery RAM (FE4000 - FEFFFF; not shown currently)
    *the segaCD registers area (FF8000 - FF81FF; not shown currently)
4. The SH2 tab (when 32X is active) including:
    *the registers (00004000 - 000041ff; larger set than m68k can access)
    *the frame buffer (04000000 - 0401FFFF; same as m68k sees)
    *the frame overwrite buffer (04020000 - 0403FFFF; same as m68k sees)
    *the SDRAM (06000000 - 0603FFFF; currently displayed)

I do intend to work on this myself, but suspect I will require Nitsuja's
assistance to make sure that I don't fuck anything up in the process.

Original issue reported on code.google.com by [email protected] on 4 Nov 2008 at 4:02

Turbo Toggle

A new hotkey that would turn on/off turbo rather than having to hold down
the key.

Original issue reported on code.google.com by [email protected] on 25 Jul 2008 at 2:02

Lua scripts that run intensely for a long time freeze gens

What steps will reproduce the problem?
1. Write any code with a ton of gens.emulateframeinvisible()
2. Let the code run, and say 'No' to stopping code. 
3. Minimize Gens
4. Restore Gens
5. CRASH 

What is the expected output? 
The actual game window. 


What do you see instead?
A white screen. Inability to do anything but shut gens down via windows
task manager.





Original issue reported on code.google.com by [email protected] on 14 Dec 2008 at 5:56

Support for WAV files for CD audio tracks

Gens should support WAV files as an alternative to MP3 files, both when
they are specified as type WAV in a cue file, and when there is no cue file
and they are found by the auto-search.

While WAV doesn't seem to offer much advantage over binary audio or MP3
files, apparently enough people have their CD audio tracks in WAV format
that it would be worthwhile to support it.

Original issue reported on code.google.com by [email protected] on 30 Jul 2008 at 5:20

Background Input

Allows GENS to accept input while not in focus.  Primarily used for
mutli-game TAS movies.

Should be togglable.


Original issue reported on code.google.com by [email protected] on 25 Jul 2008 at 1:51

Input configuration no longer distinguishes between left(shift/control/alt) and right(shift/control/alt)

In Gens 9, keys could be configured specifically to (for instance)
left-control, or right-control, and would not go off if the other control
key was pressed.

Gens 10 correctly reads keys that were previously configured this way, but
does not currently allow for keys to be newly assigned to a specific
(left/right) modifier key. Instead it assigns generally to shift, control,
alt, or windows, and will go be read if either the left or right of the
given key is pressed, instead of only the one which the user pressed during
configuration.

Original issue reported on code.google.com by [email protected] on 12 Aug 2008 at 1:26

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.