[ARCADE] Supermodel 0.3a SVN595

[10] # SuperModel Forum | środa, 12 Kwietnia 2017 00:42CET

[ARCADE] Supermodel 0.3a SVN595

Nowa wersja testowa emulatora arcade maszynek SEGA MODEL III. Aby cieszyć się tymi zmianami, które jednak zachodzą w tym emulatorze trzeba dodać koniecznie jeden parametr do ini: New3DEngine = 1 lub z linii komend dodać switch  -new3d.

Harley

Revision 595

Author: dukeeeey | Date: 11 kwietnia 2017 13:11:45

  • remove unused variable

Revision 594

Author: trzy | Date: 11 kwietnia 2017 09:03:47

  • Extended -gfx-state to produce culling node analysis

Revision 593

Author: trzy | Date: 11 kwietnia 2017 09:03:10

  • Fixed behavior of Util::Config::Node when adding nested nodes (only leaf level can be duplicated; e.g., foo/bar and foo/bar will create one foo with two bar children, rather than two foo each with one bar).

Revision 592

Author: trzy | Date: 9 kwietnia 2017 17:27:43

  • Spindizzi's SCSP DSP fix for the VF3TB cave stage

Revision 591

Author: trzy | Date: 9 kwietnia 2017 17:08:02

  • Hooked up the command line help options (thanks, Spindizzi!) and updated copyright info

Revision 590

Author: trzy | Date: 9 kwietnia 2017 02:10:38

  • Removed unnecessary patches from lemans24

Revision 589

Author: dukeeeey | Date: 8 kwietnia 2017 23:01:11

  • add missing include

Revision 588

Author: trzy | Date: 8 kwietnia 2017 20:30:29

  • Removed patches from source code and moved them into game XML file. Created ROMSet.cpp. Print a more descriptive error when game XML file fails to load.

Revision 587

Author: trzy | Date: 8 kwietnia 2017 20:28:49

  • Updated help text to include -game-xml-file option
» [ARCADE] Supermodel 0.3a SVN595
Harley

Revision 595

Author: dukeeeey | Date: 11 kwietnia 2017 13:11:45

  • remove unused variable

Revision 594

Author: trzy | Date: 11 kwietnia 2017 09:03:47

  • Extended -gfx-state to produce culling node analysis

Revision 593

Author: trzy | Date: 11 kwietnia 2017 09:03:10

  • Fixed behavior of Util::Config::Node when adding nested nodes (only leaf level can be duplicated; e.g., foo/bar and foo/bar will create one foo with two bar children, rather than two foo each with one bar).

Revision 592

Author: trzy | Date: 9 kwietnia 2017 17:27:43

  • Spindizzi's SCSP DSP fix for the VF3TB cave stage

Revision 591

Author: trzy | Date: 9 kwietnia 2017 17:08:02

  • Hooked up the command line help options (thanks, Spindizzi!) and updated copyright info

Revision 590

Author: trzy | Date: 9 kwietnia 2017 02:10:38

  • Removed unnecessary patches from lemans24

Revision 589

Author: dukeeeey | Date: 8 kwietnia 2017 23:01:11

  • add missing include

Revision 588

Author: trzy | Date: 8 kwietnia 2017 20:30:29

  • Removed patches from source code and moved them into game XML file. Created ROMSet.cpp. Print a more descriptive error when game XML file fails to load.

Revision 587

Author: trzy | Date: 8 kwietnia 2017 20:28:49

  • Updated help text to include -game-xml-file option
» [ARCADE] Supermodel 0.3a SVN586
Daytona USA 2 – Battle on the Edge (SEGA, 1998)

Revision 584

Author: trzy | Date: 7 kwietnia 2017 06:42:04

  • Harry Tuttle's fixes to fishing controls: invert fishing rod y and fishing stick y axis values so setting a negative axis is not necessary. Also changed reel to an analog input (similar to a pedal), whose neutral position is 0.

Revision 583

Author: trzy | Date: 7 kwietnia 2017 06:30:27

  • Harry Tuttle's change to Harley gear shift to use a single bit instead of two (no detectable difference in behavior, though)

Revision 582

Author: trzy | Date: 6 kwietnia 2017 05:23:32

  • Removed unused file: Game.cpp

Revision 581

Author: trzy | Date: 5 kwietnia 2017 22:57:40

  • Fixed lamachin title -- thanks Jiterdomer!

Revision 582

Author: trzy | Date: 6 kwietnia 2017 05:23:32

  • Removed unused file: Game.cpp

Revision 581

Author: trzy | Date: 5 kwietnia 2017 22:57:40

  • Fixed lamachin title -- thanks Jiterdomer!

Revision 580

Author: dukeeeey | Date: 5 kwietnia 2017 21:32:01

  • cosmetic

Revision 579

Author: dukeeeey | Date: 5 kwietnia 2017 19:57:38

  • Daytona seems to use this completely undocumented feature of the real3d pro-1000, the ability to invert texture colours. This patch fixes the colours on the cars, and the signs which should flash by alternating their colours.

Revision 578

Author: trzy | Date: 5 kwietnia 2017 18:19:08

  • Removed last vestiges of CINIFile from input system and removed Games.cpp, INIFile.cpp, and ROMLoad.cpp

Revision 577

Author: trzy | Date: 5 kwietnia 2017 18:17:57

  • Using Game::INPUT_* instead of obsolete GAME_INPUT_*

Revision 576

Author: trzy | Date: 5 kwietnia 2017 07:35:45

  • Changes by Harry Tuttle: game list more accurately reflects MAME's, added a root level XML "games" node, print ROM version along with title

Revision 575

Author: trzy | Date: 5 kwietnia 2017 01:28:06

  • Fixed graphics state analyzer

Revision 574

Author: trzy | Date: 5 kwietnia 2017 01:27:39

  • Added cstring

Revision 573

Author: trzy | Date: 4 kwietnia 2017 07:27:37

  • Added remaining games largely thanks to the efforts of the mysterious '阳阳'

Revision 572

Author: dukeeeey | Date: 3 kwietnia 2017 14:02:49

  • more whitespace ..

Revision 571

Author: dukeeeey | Date: 3 kwietnia 2017 14:01:37

  • white space ..

Revision 570

Author: dukeeeey | Date: 3 kwietnia 2017 14:00:25

  • Cache dereferenced values. Cuts loading time from 15 to 5 seconds in debug mode :)

 

» [ARCADE] Supermodel 0.3a SVN569
Emergency Call Ambulance (Sega, 1999)

Games defined in Config/Games.xml:
    ROM Set         Title
    -------         -----
    dayto2pe        Daytona 2 Power Edition
    eca             Emergency Call Ambulance
    fvipers2        Fighting Vipers 2
    lamachin        L.A. Machineguns: Rise of the Machines
    lostwsga        The Lost World
    magtruck        Magical Truck Adventure
    oceanhun        The Ocean Hunter
    scud            Scud Race
    swtrilgy        Star Wars Trilogy
    vf3             Virtua Fighter 3

Revision 569

Author: trzy | Date: 3 kwietnia 2017 07:34:23

  • Included cstring for memcpy

Revision 568

Author: trzy | Date: 3 kwietnia 2017 03:03:38

  • Rewrote large parts of ROM loading code to more gracefully handle merged sets where overwritten parent ROMs are not present. Better handling of multiple zip files. Optimized ROM loading when stride and chunk size are equal and got rid of safety checks that I don't believe are necessary any longer.

Revision 567

Author: dukeeeey | Date: 2 kwietnia 2017 23:03:59

  • Rewrite the spot light code, and implement the missing fog logic. (HarryTuttle)

Revision 566

Author: trzy | Date: 1 kwietnia 2017 07:08:50

  • Fixed missing file detection (set_difference requires inputs sorted by desired key) and improved error reporting

Revision 565

Author: trzy | Date: 31 marca 2017 07:32:16

  • Made scuda a child set of scud

Revision 564

Author: trzy | Date: 31 marca 2017 07:23:34

  • Removed TODO comment

Revision 563

Author: trzy | Date: 31 marca 2017 07:23:04

  • Smarter game selection when a zip file contains multiple games (prefer child when parent is also present in zip)

Revision 562

Author: trzy | Date: 31 marca 2017 06:44:45

  • Warn about parent ROM sets having parent defined (not allowed)

Revision 561

Author: trzy | Date: 31 marca 2017 06:27:09

  • Print missing files from games
» [ARCADE] Supermodel 0.3a SVN560

Revision 560

Author: trzy | Date: 30 marca 2017 08:17:34

  • Support loading of parent ROM sets (e.g., scudp will load scud)

Revision 559

Author: dukeeeey | Date: 29 marca 2017 00:28:46

  • compile fixes

Revision 558

Author: dukeeeey | Date: 28 marca 2017 23:02:14

  • MSYS2 compile fix (HarryTuttle)

Revision 557

Author: dukeeeey | Date: 28 marca 2017 22:24:44

  • Replace glsl 3 function. Apparently this doesn't work on OS X.

Revision 556

Author: dukeeeey | Date: 28 marca 2017 21:33:16

  • fix compile warnings
» [ARCADE] Supermodel 0.3a SVN555

 

Revision 555

Author: trzy | Date: 28 marca 2017 06:03:38

  • Sort games found in zip file by descending order of matching files so that game with the *most* matching files is picked

Revision 554

Author: trzy | Date: 28 marca 2017 06:01:50

  • Added: bass, daytona2, dirtdvls, harley, lemans24, scuda, skichamp, spikeofe, spikeout, von2, vs2, vs298, vs2v991
  • Fixed: dayto2pe title

Revision 553

Author: trzy | Date: 28 marca 2017 03:05:35

  • Fixed scud mpeg roms

Revision 552

Author: dukeeeey | Date: 28 marca 2017 00:06:23

  • don't ask

Revision 551

Author: dukeeeey | Date: 28 marca 2017 00:01:31

  • fix project files

Revision 550

Author: dukeeeey | Date: 27 marca 2017 20:15:15

  • fix multiple default constructors

Revision 549

Author: dukeeeey | Date: 27 marca 2017 16:14:36

  • add missing include
» [ARCADE] Supermodel 0.3a SVN548
Star Wars Trilogy (Sega, LucasArts, 1998)

Revision 548

Author: trzy | Date: 27 marca 2017 05:19:15

  • Massive internal change: removed CConfig object and replaced it with a hierarchical config object system (Util::Config::Node). Games are now defined in an XML file. Hopefully I didn't break too many things :/

Revision 547

Author: trzy | Date: 27 marca 2017 05:13:34

  • Cosmetic: renamed step to stepping

Revision 546

Author: trzy | Date: 27 marca 2017 05:10:36

  • No need to enclose values in quotes when writing INI file. Print that file was saved to console and log.

Revision 545

Author: trzy | Date: 27 marca 2017 05:09:24

  • Added a TODO list

Revision 544

Author: trzy | Date: 27 marca 2017 05:08:40

  • Added srally2

Revision 543

Author: trzy | Date: 27 marca 2017 04:02:22

  • Encapsulated zip file handling and added a "parent" member to the Game struct

Revision 542

Author: trzy | Date: 26 marca 2017 18:38:55

  • Checking in GameLoader.cpp, GameLoader.h, and ROMSet.h (not currently used in build) because I need to make a substantial modification in my local tree

Revision 541

Author: trzy | Date: 25 marca 2017 18:39:09

  • Fixed dayto2pe sample ROMs
» [ARCADE] Supermodel 0.3a SVN540
Fighting Vipers 2 (Sega, 1998)

Revision 540

Author: dukeeeey | Date: 25 marca 2017 01:06:24

  • The mipmap data in some games seems to being sent behind the base textures, and when the base textures are bound and created the mipmap chain is not yet valid in memory. To fix this, we invalidate the base textures, when the mipmap chain is updated.

Revision 539

Author: dukeeeey | Date: 24 marca 2017 21:54:12

  • Just use 1 hash map for the textures, instead of 1 for each format. Should greatly speed up texture invalidation. TODO invalidate texture mipmaps .. the h/w actually seems to stream the mipmap data separate from the base textures in some cases.

Revision 538

Author: dukeeeey | Date: 24 marca 2017 18:43:07

  • cosmetic

Revision 537

Author: dukeeeey | Date: 24 marca 2017 17:51:52

  • calculate the correct number of mipmap textures

Revision 536

Author: dukeeeey | Date: 24 marca 2017 14:38:20

  • Originally to do mipmapping, I just used the base texture and then let the h/w automatically generate the mipmap chain. I wasn't sure the real3d api even exposed to the programmer the ability to directly set the mipmap data. Anyway, as pointed out by HarryTuttle scud actually uses darker mipmaps for an effect on the water. This patch uses the uses the actual mipmap data from the real3d memory. Only tested scud, so hopefully I didn't cause any cataclysmic errors :)

Revision 535

Author: trzy | Date: 24 marca 2017 06:33:25

  • Added fvipers2
» [ARCADE] Supermodel 0.3a SVN533
Daytona USA 2 Power Edition (Sega, 1998)

Revision 533

Author: trzy | Date: 23 marca 2017 05:38:39

  • Added more games to Games.xml: dayto2pe, eca, lamachin, lostwsga, magtruck, oceanhun, vf3. Fixed swtrilgy (MPEG music).

Revision 532

Author: trzy | Date: 23 marca 2017 05:22:25

  • Added 8- and 16-bit tilegen VRAM access handlers to fix missing columns in Star Wars Trilogy tilemaps. Thanks to Spindizzi for initial confirmation that this was the problem.

Revision 531

Author: dukeeeey | Date: 22 marca 2017 21:38:44

  • fix scissor code for native resolution (thanks HarryTuttle)

Revision 530

Author: dukeeeey | Date: 19 marca 2017 10:54:51

  • remove debug code

Revision 529

Author: dukeeeey | Date: 19 marca 2017 02:33:45

  • The model3 has this weird issue where the 2d and 3d planes are misaligned by 2 pixels. Originally I made a quick hack that shifted subviewports 2 pixels. But apparently that wasn't enough, as the issue effects everything. Thanks to HarryTuttle for pointing this out, and making a patch :)
» [ARCADE] Supermodel 0.3a SVN528
The Lost World

Revision 528

Author: dukeeeey | Date: 13 marca 2017 01:59:35

  • Texture coordinates seem to be scaled relative to the fixed texture size of 256. Thanks to HarryTurtle for figuring this crazy logic out. The road in scud matches the arcade now almost perfectly.

Revision 527

Author: dukeeeey | Date: 12 marca 2017 20:00:00

  • Change microtexture scaling values. Seem to much better match expected output. (thanks HarryTuttle)

Revision 526

Author: dukeeeey | Date: 11 marca 2017 13:55:47

  • More fixes to microtexture coordinates. They go vertically up and down the texture sheet, and not horizontally as I had guessed. (Thanks HarryTurtle)

Revision 525

Author: dukeeeey | Date: 11 marca 2017 02:18:43

  • Fix microtexture texture coordinates (thanks HarryTuttle)
» [ARCADE] Supermodel 0.3a SVN524
Dirt Devils (Sega, 1998)

Revision 524

Author: dukeeeey | Date: 7 marca 2017 02:29:07

  • fix the bad projection matrix in dirt devils and lost world

Revision 523

Author: dukeeeey | Date: 22 lutego 2017 00:35:40

  • The hardware actually seems to treat the quad primitive as a triangle strip. The winding order can actually change between the first and second 'triangle' inside the quad, leading our code to incorrectly backface cull the 2nd triangle. So we must re-calculate the winding order for the 2nd triangle. This fixes a massive missing poly in the road in la machine guns, probably other games too. The hardware is unaffected by the winding order, as it doesn't calculate the poly normal from the vertices directly, instead it uses the provided normal in the poly header.

Revision 522

Author: dukeeeey | Date: 20 lutego 2017 18:22:32

  • Support high priority polygons. They are treated as a separate overlay plane by the h/w. Fixes some missing fx in harley.

Revision 521

Author: dukeeeey | Date: 19 lutego 2017 00:58:08

  • Add high priority poly function. Used by harley.

Revision 520

Author: dukeeeey | Date: 16 lutego 2017 18:20:42

  • When the translator map?? bit is enabled the colour format seems to be 4-5bit. Max observed value is 16. Scaling these values up seems to produce the correct colours in harley and dirt devils.
» [ARCADE] Supermodel 0.3a SVN519

Revision 519

Author: dukeeeey | Date: 8 lutego 2017 17:14:50

  • Put a check in there, in case near values come out really close to zero. Fixes a slight corner case in lemans24. A check probably should have been there originally :)

Revision 518

Author: dukeeeey | Date: 7 lutego 2017 15:05:03

  • Dynamically calculate near/far frustum planes for each viewport priority layer by clipping the overlapping meshes with the 4 frustum planes. A bit brute forcy, but the results are great.

Revision 517

Author: dukeeeey | Date: 5 lutego 2017 16:36:05

  • mark the nodes without valid distances set
» [ARCADE] Supermodel 0.3a SVN516

Revision 516

Author: dukeeeey | Date: 22 grudnia 2016 23:11:19

  • cosmetics

Revision 515

Author: dukeeeey | Date: 22 grudnia 2016 23:09:13

  • only need to cull against 4 clipping planes

Revision 514

Author: dukeeeey | Date: 15 grudnia 2016 20:27:08

  • For scroll fog set the viewport to the entire area, allows fog to work in widescreen mode
» [ARCADE] Supermodel 0.3a SVN510
Harley-Davidson & L.A. Riders (Sega, 1997)

Revision 510

Author: dukeeeey | Date: 9 grudnia 2016 15:15:11

  • delete unused files

Revision 509

Author: dukeeeey | Date: 9 grudnia 2016 15:13:46

  • Support microtexture relative scale. The exact scaling values are not known, but a 2x difference between each level seems highly likely. We know from visual inspection from scud that the first level is exactly 4. The SDK has a function that accepts a float input for scale and does this. lod = (1/scale) + 0.5. If lod>3 lod = 3. So this is our best guess.

Revision 508

Author: dukeeeey | Date: 6 grudnia 2016 15:39:46

  • The model3 shares vertices between polygons. But it also seems to do this for polygons with different textures. This means the texture coordinate for potentially different sizes textures is shared. Currently this was broken leading to some corrupted looking textures. The fix is to simply cache the old texture coordinates, and recalculate the normalised coordinates in the new texture coordinate space.

Revision 507

Author: dukeeeey | Date: 6 grudnia 2016 13:25:34

  • refactor
» [ARCADE] Supermodel 0.3a SVN506
Le Mans 24 (Sega, 1998)

Revision 506

Author: dukeeeey | Date: 4 grudnia 2016 23:37:49

  • tweak scroll fog logic
  • Modified: /trunk/Src/Graphics/New3D/New3D.cpp

alternative test32 (506)

  • music correction in sega rally 2 (spindizzy)

Revision 505

Author: dukeeeey | Date: 4 grudnia 2016 23:37:22

  • clean up
  • Modified: /trunk/Src/Graphics/Render2D.cpp
    Modified: /trunk/Src/Graphics/Render2D.h
» [ARCADE] Supermodel 0.3a SVN504
Star Wars Trilogy (Revision A) Sega, LucasArts, 1998

Revision 504

Author: dukeeeey | Date: 28 listopada 2016 18:32:25

  • minor optimisations
  • Modified: /trunk/Src/Graphics/New3D/New3D.cpp
    Modified: /trunk/Src/Graphics/New3D/Texture.cpp


     
» [ARCADE] Supermodel 0.3a SVN503

Revision 503

Author: dukeeeey | Date: 27 listopada 2016 20:30:46

  • Only check the geometry for culling with valid node distances. We will need this later.

Revision 502

Author: dukeeeey | Date: 26 listopada 2016 02:19:51

  • Revert changes .. if we clip against the real3d clipping planes, our wide screen hack won't work anymore.

Revision 501

Author: dukeeeey | Date: 26 listopada 2016 02:12:08

  • Get clipping planes directly from the viewport data. Also no need to clip against a far plane
» [ARCADE] Supermodel 0.3a SVN500
SpikeOut, istnieje nawet opcja, że to dobra kompilacja;)

Revision 500

Author: dukeeeey | Date: 22 listopada 2016 21:30:10

  • Need to walk back in memory and check the previous texture tiles to see if they overlap with the current textures being invalidated. If they overlap they must be cleared too. Algorithm is a bit brute forcy and more expensive than I'd like but it fixes the bad textures in Spikeout.
» [ARCADE] Supermodel 0.3a SVN499

Revision 499

Author: dukeeeey | Date: 21 listopada 2016 10:04:56

  • Skip processing the mipmap section of memory. The real3d doesn't create mipmaps down to 1x1 that is needed to do mipmapping properly on modern hardware anyway.

Revision 498

Author: dukeeeey | Date: 20 listopada 2016 18:02:59

  • Clear queued texture uploads after processing them. Saves re-uploading the same textures whilst paused
» [ARCADE] Supermodel 0.3a SVN497
Scud Race (Australia) Sega, 1996

Supermodel Dev [SVN 497]

Author: dukeeeey | Date: 15 listopada 2016 13:44:47

  • More accurate 2D colours. White should map to 255 not 248

Supermodel Dev [SVN 496]

Author: dukeeeey | Date: 11 listopada 2016 18:50:27

  • Fix the shading in scud. When lighting is disabled the fixed shading intensities appear to be offset values added to the colour value.

Supermodel Dev [SVN 495]

Author: dukeeeey | Date: 21 października 2016 02:04:12

  • change throttle logic for smoother playback, we could get closer to 60fps if SDL timers weren't so lame
» [ARCADE] Supermodel 0.3a SVN494
Supermodel SVN0492 Ocean Hunter
Ocean Hunter w końcu nie rani w oczy, progres naprawdę odczuwalny:)

Supermodel repository [SVN 494]

Author: dukeeeey | Date: 9 października 2016 20:10:57

  • change scroll fog logic to parse the lower priority viewports first

Supermodel repository [SVN 493]

Author: dukeeeey | Date: 9 października 2016 18:34:12

  • implement scroll fog, fixes a tonne of missing fx

Supermodel repository [SVN 492]

Author: dukeeeey | Date: 8 października 2016 17:41:16

  • Parse out scrollfog value used for blending over the 2d background.

Supermodel repository [SVN 491]

Author: dukeeeey | Date: 8 października 2016 17:15:25

  • Fix scenes with missing fog in ocean hunter. The game was passing negative fog densities. The sign seems to be ignored by the model 3.

Supermodel repository [SVN 490]

Author: dukeeeey | Date: 8 października 2016 14:10:47

  • same fix for legacy engine

Supermodel repository [SVN 489]

Author: dukeeeey | Date: 8 października 2016 13:59:25

  • our scratch mem must match correct max texture size

Supermodel repository [SVN 488]

Author: dukeeeey | Date: 6 października 2016 22:10:45

  • Fix the sky in advanced stage in Dirt Devils. It uses a massive (for 1998 :p) 1024x256 texture.

Supermodel repository [SVN 487]

Author: dukeeeey | Date: 6 października 2016 03:37:29

  • Support multiple microTextures, fixes crazy texturing in sega ski champ. I'm assuming microtextures are always located on the other memory bank to the base texture. This logic seems to work for all our games anyway.
Do ściągnięcia
supermodel-r595-t2e.pl.7z
Dodatkowe informacje
Inne treści związane z tematem
[MULTI] Pantheon 5.810 [MULTI] Pantheon 5.810;
Nowa wersja multiemulatora Pantheon, programu autorstwa  Bostjana 'Grandy' Grandoveca. Kolejna dostawa gier, tym razem 216 tytułów dla  Atari XE/XL.
[MULTI] MessUI x86/x64 0.185 [MULTI] MessUI x86/x64 0.185;
Nieoficjalna dystrubucja MESSa, którą zaopatrzono w przyjazny interfejs graficzny, zbliżony do starego gui, jednak nieznacznie poszerzony doczekał się kolejnej odsłony – oprócz wszystkich zmian z messa poprawiono działanie także gui ...
[FRONTEND] MedSat 1.6;
Prosty ale bardzo przydatny frontend dla najnowszej wersji Mednafen'u. Najnowszych bo napisany z myślą tylko o emulacji Segi Saturn. Potrzeba ściągnąć 1.1 do pełni szczęścia i oczywiście nowy mendafen.
[ARCADE] Supermodel 0.3a SVN586 [ARCADE] Supermodel 0.3a SVN586;
Nowa wersja testowa emulatora arcade maszynek SEGA MODEL III. Aby cieszyć się tymi zmianami, które jednak zachodzą w tym emulatorze trzeba dodać koniecznie jeden parametr do ini: New3DEngine = 1 lub z linii komend dodać switch  -new3d.