Opened 16 years ago

Closed 16 years ago

Last modified 12 months ago

#8280 closed patch (wontfix)

Scaler mods for MSVC6

Reported by: SF/jamieson630 Owned by: fingolfin
Priority: normal Component: Port: Win32
Keywords: Cc:
Game:

Description

The attached patch modifies the new template
foundation for several scalers (including HQ) to avoid
compile-time errors from the non-template-friendly
MSVC6. The two primary changes:

* Avoided the use of template structs, which MSVC6
does not recognize at all.

* Avoided using the same name for template and non-
template functions (which MAKE_WRAPPER was doing),
since MSVC6 ignores the template functions in such
cases. (This resulted in the non-template function
calling ITSELF by mistake, thus an endless recursion and
eventual stack fault.)

Note that these changes allow the code to COMPILE
under MSVC6, and the scalers to activate without
crashing ScummVM. However, the visual output does
NOT appear correct from an MSVC6 build, which
indicates other problems in MSVC6's interpretation of the
templates. I will see about attaching screenshots of the
trouble scalers to demonstrate. Since I have no
understanding of our scalers, I wouldn't even know
where MSVC might be goofing up the template
parameters.

(BTW, Fingolfin, once I circumvented the same-function-
name problem, I did get MSVC6 to quit ignoring the
template structs. Hence, I *was* able to verify that this
code compiles, at least on MSVC6, and that it runs the
scalers without crashing.)

Ticket imported from: #815860. Ticket imported from: patches/385.

Attachments (6)

scalers.diff (6.4 KB ) - added by SF/jamieson630 16 years ago.
Scalers patch, rev. 1
2xsai.png (176.5 KB ) - added by SF/jamieson630 16 years ago.
MI2 Bones Scene, 2xsai
super2xsai.png (170.0 KB ) - added by SF/jamieson630 16 years ago.
MI2 Bones Scene, super2xsai
supereagle.png (226.8 KB ) - added by SF/jamieson630 16 years ago.
MI2 Bones Scene, supereagle
hq2x.png (220.0 KB ) - added by SF/jamieson630 16 years ago.
MI2 Bones Scene, hq2x
tv2x.png (155.3 KB ) - added by SF/jamieson630 16 years ago.
MI2 Bones Scene, tv2x

Download all attachments as: .zip

Change History (9)

by SF/jamieson630, 16 years ago

Attachment: scalers.diff added

Scalers patch, rev. 1

by SF/jamieson630, 16 years ago

Attachment: 2xsai.png added

MI2 Bones Scene, 2xsai

by SF/jamieson630, 16 years ago

Attachment: super2xsai.png added

MI2 Bones Scene, super2xsai

by SF/jamieson630, 16 years ago

Attachment: supereagle.png added

MI2 Bones Scene, supereagle

by SF/jamieson630, 16 years ago

Attachment: hq2x.png added

MI2 Bones Scene, hq2x

by SF/jamieson630, 16 years ago

Attachment: tv2x.png added

MI2 Bones Scene, tv2x

comment:1 by SF/jamieson630, 16 years ago

Resolution: wontfix
Status: newclosed

comment:2 by SF/jamieson630, 16 years ago

Per IRC discussions, this patch will not be applied. Support for
MSVC6 cannot be maintained as the code continues to be
optimized in a manner that requires strict standards
compliance on the part of the compiler. For now, the scalers
in question have been disabled in MSVC6 builds; it should be
understood that MSVC6 will not be supported at all before too
long.

comment:3 by digitall, 12 months ago

Component: Port: Win32
Note: See TracTickets for help on using tickets.