Page 1 of 12 1 2 3 ... 11 12 >
Topic Options
#69633 - 05/16/11 07:37 PM Can't compile latest MESS? READ THIS THREAD
Just Desserts Offline
Very Senior Member

Registered: 05/23/09
Posts: 1243
If you compile MESS, and if you compile MAME, you will soon need this:

http://icips.us/emulation/crt/new_d3dx9_headers.zip

Put them here for x64, you can possibly put them directly in mingw/mingw64-64/include, I haven't tried it yet:
mingw/mingw64-64/x86_64-w64-mingw32/include/

Do NOT put them in the directx/ folder!

Checkin incoming...

Top
#69634 - 05/16/11 07:44 PM Re: It's dangerous to go alone - take this! (NEW LIBS) [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
Please note that The Management would prefer people get the entire new compile tools package coming with the next MAME u-release. This will include newer GCC compilers and the necessary changed headers, among other things.

Top
#69636 - 05/16/11 07:54 PM Re: It's dangerous to go alone - take this! (NEW LIBS) [Re: R. Belmont]
Just Desserts Offline
Very Senior Member

Registered: 05/23/09
Posts: 1243
Here's a phenomenal preset, in my not-so-humble opinion:
Code:
hlsl_enable               1
hlslpath                  hlsl
shadow_mask_alpha         0.6
shadow_mask_texture       aperture.png
shadow_mask_pix_width     3.0
shadow_mask_pix_height    3.0
shadow_mask_usize         0.1875
shadow_mask_vsize         0.1875
oversample_x              1.0
oversample_y              1.0
pincushion_x              0.06
pincushion_y              0.06
scanline_alpha            0.0
scanline_size             1.0
scanline_bright_scale     1.0
scanline_bright_offset    0.7
scanline_jitter           0.0
defocus_x                 0.0
defocus_y                 0.0
red_converge_x            0.1
red_converge_y            0.0
green_converge_x          0.0
green_converge_y         -0.1
blue_converge_x          -0.05
blue_converge_y           0.05
red_radial_converge_x     0.0
red_radial_converge_y     0.0
green_radial_converge_x   0.0
green_radial_converge_y   0.0
blue_radial_converge_x    0.0
blue_radial_converge_y    0.0
red_from_r                0.9
red_from_g                0.1
red_from_b                0.0
green_from_r              0.0
green_from_g              0.9
green_from_b              0.1
blue_from_r               0.1
blue_from_g               0.0
blue_from_b               0.9
saturation                1.4
red_offset                0.0
green_offset              0.0
blue_offset               0.0
red_scale                 1.25
green_scale               1.25
blue_scale                1.25
red_power                 2.2
green_power               2.2
blue_power                2.2
red_floor                 0.05
green_floor               0.05
blue_floor                0.05
red_phosphor_life         0.4
green_phosphor_life       0.4
blue_phosphor_life        0.4
y_from_y                  1.0
y_from_i                  0.0
y_from_q                  0.0
i_from_y                  0.0
i_from_i                  1.0
i_from_q                  0.0
q_from_y                  0.0
q_from_i                  0.0
q_from_q                  1.0
y_scale                   1.0
i_scale                   1.2
q_scale                   1.0
y_offset                  0.0
i_offset                  0.0
q_offset                  0.0
subsample_length          3.0
dot_crawl_width           1.0
dot_crawl_height          3.0
dot_crawl_rate            3
dot_crawl_skip            2
edge_amount               1.0
edge_ratio                0.0


If you have the GPU grunt to spare - at least a Radeon 5970 or equivalent - then crank the oversampling up to 3.0, the experience borders on religious.

Top
#69637 - 05/16/11 07:59 PM Re: It's dangerous to go alone - take this! (NEW LIBS) [Re: Just Desserts]
Just Desserts Offline
Very Senior Member

Registered: 05/23/09
Posts: 1243
And here's a preset for an arcade monitor as opposed to a shitty NTSC TV:

Code:
hlsl_enable               1
hlslpath                  hlsl
shadow_mask_alpha         0.7
shadow_mask_texture       aperture.png
shadow_mask_pix_width     3.0
shadow_mask_pix_height    3.0
shadow_mask_usize         0.1875
shadow_mask_vsize         0.1875
oversample_x              1.0
oversample_y              1.0
pincushion_x              0.06
pincushion_y              0.06
scanline_alpha            0.0
scanline_size             1.0
scanline_bright_scale     1.0
scanline_bright_offset    0.7
scanline_jitter           0.0
defocus_x                 0.0
defocus_y                 0.0
red_converge_x            0.0
red_converge_y            0.0
green_converge_x          0.0
green_converge_y          0.0
blue_converge_x           0.0
blue_converge_y           0.0
red_radial_converge_x     0.0
red_radial_converge_y     0.0
green_radial_converge_x   0.0
green_radial_converge_y   0.0
blue_radial_converge_x    0.0
blue_radial_converge_y    0.0
red_from_r                1.0
red_from_g                0.0
red_from_b                0.0
green_from_r              0.0
green_from_g              1.0
green_from_b              0.0
blue_from_r               0.0
blue_from_g               0.0
blue_from_b               1.0
saturation                1.4
red_offset                0.0
green_offset              0.0
blue_offset               0.0
red_scale                 1.25
green_scale               1.25
blue_scale                1.25
red_power                 2.2
green_power               2.2
blue_power                2.2
red_floor                 0.05
green_floor               0.05
blue_floor                0.05
red_phosphor_life         0.4
green_phosphor_life       0.4
blue_phosphor_life        0.4
y_from_y                  1.0
y_from_i                  0.0
y_from_q                  0.0
i_from_y                  0.0
i_from_i                  1.0
i_from_q                  0.0
q_from_y                  0.0
q_from_i                  0.0
q_from_q                  1.0
y_scale                   1.0
i_scale                   1.2
q_scale                   1.0
y_offset                  0.0
i_offset                  0.0
q_offset                  0.0
subsample_length          1.0
dot_crawl_width           0.0
dot_crawl_height          3.0
dot_crawl_rate            3
dot_crawl_skip            2
edge_amount               1.0
edge_ratio                0.0


Top
#69638 - 05/16/11 10:31 PM Re: It's dangerous to go alone - take this! (NEW LIBS) [Re: Just Desserts]
Curt Coder Offline
Senior Member

Registered: 02/18/05
Posts: 401
Loc: Finland
Can we have a shitty PAL TV filter as well smile

Top
#69639 - 05/16/11 10:52 PM Re: It's dangerous to go alone - take this! (NEW LIBS) [Re: Curt Coder]
Just Desserts Offline
Very Senior Member

Registered: 05/23/09
Posts: 1243
Originally Posted By: Curt Coder
Can we have a shitty PAL TV filter as well smile


I don't know how the PAL signal works! smile

Top
#69640 - 05/17/11 12:15 AM Re: It's dangerous to go alone - take this! (NEW LIBS) [Re: Just Desserts]
John IV Offline
Member

Registered: 09/26/08
Posts: 61
Loc: WA, USA
Thought about creating a page on your site for effect pics and the settings to get them? smile

Top
#69641 - 05/17/11 12:44 AM Re: It's dangerous to go alone - take this! (NEW LIBS) [Re: Just Desserts]
Dr. Spankenstein Offline
Senior Member

Registered: 09/07/09
Posts: 226
Posting some pictures in this thread would also be most welcome. laugh

Top
#69642 - 05/17/11 12:54 AM Re: It's dangerous to go alone - take this! (NEW LIBS) [Re: Dr. Spankenstein]
Just Desserts Offline
Very Senior Member

Registered: 05/23/09
Posts: 1243
I have indeed thought about it - I'm going to be writing up a nice, long description of exactly how the shader works and why it works the way it does. In the meantime, yes, I will be making various screenshots to try to mimic what I see in certain videos.

Top
#69643 - 05/17/11 01:20 AM Re: It's dangerous to go alone - take this! (NEW LIBS) [Re: Just Desserts]
Dr.Zer0 Offline
Member

Registered: 10/24/04
Posts: 87
Loc: Italy
Yes PAL shitty filter wink

Top
#69644 - 05/17/11 01:42 AM Re: It's dangerous to go alone - take this! (NEW LIBS) [Re: Dr.Zer0]
Just Desserts Offline
Very Senior Member

Registered: 05/23/09
Posts: 1243
http://icips.us/emulation/crt/fling.png

Code:
hlsl_enable               1
hlslpath                  hlsl
shadow_mask_alpha         0.4
shadow_mask_texture       aperture.png
shadow_mask_pix_width     3.0
shadow_mask_pix_height    3.0
shadow_mask_usize         0.1875
shadow_mask_vsize         0.1875
oversample_x              3.0
oversample_y              3.0
pincushion_x              0.04
pincushion_y              0.04
scanline_alpha            1.0
scanline_size             1.0
scanline_bright_scale     1.3
scanline_bright_offset    0.7
scanline_jitter           0.0
defocus_x                 3.0
defocus_y                 3.0
red_converge_x            0.5
red_converge_y            0.0
green_converge_x          0.0
green_converge_y          0.0
blue_converge_x           0.0
blue_converge_y           0.0
red_radial_converge_x     0.5
red_radial_converge_y     0.5
green_radial_converge_x   0.0
green_radial_converge_y   0.0
blue_radial_converge_x    0.0
blue_radial_converge_y    0.0
red_from_r                1.0
red_from_g                0.2
red_from_b                0.2
green_from_r              0.2
green_from_g              1.0
green_from_b              0.3
blue_from_r               0.3
blue_from_g               0.3
blue_from_b               1.0
saturation                1.6
red_offset                0.0
green_offset              0.0
blue_offset               0.0
red_scale                 1.25
green_scale               1.25
blue_scale                1.25
red_power                 1.0
green_power               1.0
blue_power                1.0
red_floor                 0.05
green_floor               0.05
blue_floor                0.05
red_phosphor_life         0.4
green_phosphor_life       0.4
blue_phosphor_life        0.4
y_from_y                  1.0
y_from_i                  0.0
y_from_q                  0.0
i_from_y                  0.0
i_from_i                  1.0
i_from_q                  0.0
q_from_y                  0.0
q_from_i                  0.0
q_from_q                  1.0
y_scale                   1.0
i_scale                   1.0
q_scale                   1.0
y_offset                  0.0
i_offset                  0.0
q_offset                  0.0
subsample_length          1.0
dot_crawl_width           0.0
dot_crawl_height          2.0
dot_crawl_rate            2
dot_crawl_skip            2
edge_amount               1.0
edge_ratio                0.0


Note: Moiré is *much* less noticeable when oversampling, but it's only for some cards, so YMMV.

Top
#69645 - 05/17/11 02:22 AM Re: It's dangerous to go alone - take this! (NEW LIBS) [Re: Just Desserts]
Just Desserts Offline
Very Senior Member

Registered: 05/23/09
Posts: 1243
And here's a more lightweight shader that rips out all the NTSC-related stuff for people who want a faster MAME experience. This took Tapper at 3x oversampling from 330% to 410% on my Radeon 5970.

Code:
//-----------------------------------------------------------------------------
// Post-Processing Effect
//-----------------------------------------------------------------------------

texture Diffuse;

sampler DiffuseSampler = sampler_state
{
	Texture   = <Diffuse>;
	MipFilter = LINEAR;
	MinFilter = LINEAR;
	MagFilter = LINEAR;
	AddressU = CLAMP;
	AddressV = CLAMP;
	AddressW = CLAMP;
};

texture Shadow;

sampler ShadowSampler = sampler_state
{
	Texture   = <Shadow>;
	MipFilter = LINEAR;
	MinFilter = LINEAR;
	MagFilter = LINEAR;
	AddressU = WRAP;
	AddressV = WRAP;
	AddressW = WRAP;
};

//-----------------------------------------------------------------------------
// Vertex Definitions
//-----------------------------------------------------------------------------

struct VS_OUTPUT
{
	float4 Position : POSITION;
	float4 Color : COLOR0;
	float2 TexCoord : TEXCOORD0;
	float2 ExtraInfo : TEXCOORD1;
	float3 CoordX : TEXCOORD2;
	float3 CoordY : TEXCOORD3;
};

struct VS_INPUT
{
	float4 Position : POSITION;
	float4 Color : COLOR0;
	float2 TexCoord : TEXCOORD0;
	float2 ExtraInfo : TEXCOORD1;
};

struct PS_INPUT
{
	float4 Color : COLOR0;
	float2 TexCoord : TEXCOORD0;
	float2 ExtraInfo : TEXCOORD1;
	float3 CoordX : TEXCOORD2;
	float3 CoordY : TEXCOORD3;
};

//-----------------------------------------------------------------------------
// Post-Processing Vertex Shader
//-----------------------------------------------------------------------------

uniform float RedConvergeX;
uniform float RedConvergeY;
uniform float GrnConvergeX;
uniform float GrnConvergeY;
uniform float BluConvergeX;
uniform float BluConvergeY;

uniform float TargetWidth;
uniform float TargetHeight;

uniform float RawWidth;
uniform float RawHeight;

uniform float WidthRatio;
uniform float HeightRatio;

uniform float RedRadialConvergeX;
uniform float RedRadialConvergeY;
uniform float GrnRadialConvergeX;
uniform float GrnRadialConvergeY;
uniform float BluRadialConvergeX;
uniform float BluRadialConvergeY;

VS_OUTPUT vs_main(VS_INPUT Input)
{
	VS_OUTPUT Output = (VS_OUTPUT)0;
	
	float2 invDims = float2(1.0f / RawWidth, 1.0f / RawHeight);
	float2 Ratios = float2(1.0f / WidthRatio, 1.0f / HeightRatio);
	Output.Position = float4(Input.Position.xyz, 1.0f);
	Output.Position.x /= TargetWidth;
	Output.Position.y /= TargetHeight;
	Output.Position.y = 1.0f - Output.Position.y;
	Output.Position.x -= 0.5f;
	Output.Position.y -= 0.5f;
	Output.Position *= float4(2.0f, 2.0f, 1.0f, 1.0f);
	Output.Color = Input.Color;
	Output.TexCoord = Input.TexCoord;//(Input.TexCoord - float2(0.5f, 0.5f)) / 8.0f + float2(0.25f, 0.125f);
	Output.ExtraInfo = Input.ExtraInfo;
	
	Output.CoordX.x = ((((Output.TexCoord.x / Ratios.x) - 0.5f)) * (1.0f + RedRadialConvergeX / RawWidth) + 0.5f) * Ratios.x + RedConvergeX * invDims.x;
	Output.CoordX.y = ((((Output.TexCoord.x / Ratios.x) - 0.5f)) * (1.0f + GrnRadialConvergeX / RawWidth) + 0.5f) * Ratios.x + GrnConvergeX * invDims.x;
	Output.CoordX.z = ((((Output.TexCoord.x / Ratios.x) - 0.5f)) * (1.0f + BluRadialConvergeX / RawWidth) + 0.5f) * Ratios.x + GrnConvergeX * invDims.x;
	
	Output.CoordY.x = ((((Output.TexCoord.y / Ratios.y) - 0.5f)) * (1.0f + RedRadialConvergeY / RawHeight) + 0.5f) * Ratios.y + RedConvergeY * invDims.y;
	Output.CoordY.y = ((((Output.TexCoord.y / Ratios.y) - 0.5f)) * (1.0f + GrnRadialConvergeY / RawHeight) + 0.5f) * Ratios.y + BluConvergeY * invDims.y;
	Output.CoordY.z = ((((Output.TexCoord.y / Ratios.y) - 0.5f)) * (1.0f + BluRadialConvergeY / RawHeight) + 0.5f) * Ratios.y + BluConvergeY * invDims.y;
	return Output;
}

//-----------------------------------------------------------------------------
// Post-Processing Pixel Shader
//-----------------------------------------------------------------------------

uniform float PI = 3.14159265f;

uniform float PincushionAmountX = 0.1f;
uniform float PincushionAmountY = 0.1f;

uniform float ScanlineAmount = 1.0f;
uniform float ScanlineScale = 1.0f;
uniform float ScanlineBrightScale = 1.0f;
uniform float ScanlineBrightOffset = 1.0f;
uniform float ScanlineOffset = 1.0f;

uniform float RedFromRed = 1.0f;
uniform float RedFromGrn = 0.0f;
uniform float RedFromBlu = 0.0f;
uniform float GrnFromRed = 0.0f;
uniform float GrnFromGrn = 1.0f;
uniform float GrnFromBlu = 0.0f;
uniform float BluFromRed = 0.0f;
uniform float BluFromGrn = 0.0f;
uniform float BluFromBlu = 1.0f;

uniform float YfromY = 1.0f;
uniform float YfromI = 0.0f;
uniform float YfromQ = 0.0f;
uniform float IfromY = 0.0f;
uniform float IfromI = 1.0f;
uniform float IfromQ = 0.0f;
uniform float QfromY = 0.0f;
uniform float QfromI = 0.0f;
uniform float QfromQ = 1.0f;

uniform float RedOffset = 0.0f;
uniform float GrnOffset = 0.0f;
uniform float BluOffset = 0.0f;

uniform float RedScale = 1.0f;
uniform float GrnScale = 1.0f;
uniform float BluScale = 1.0f;

uniform float RedFloor = 0.0f;
uniform float GrnFloor = 0.0f;
uniform float BluFloor = 0.0f;

uniform float Saturation = 1.0f;

uniform float YScale = 1.0f;
uniform float IScale = 1.0f;
uniform float QScale = 1.0f;
uniform float YOffset = 0.0f;
uniform float IOffset = 0.0f;
uniform float QOffset = 0.0f;

uniform float RedPower = 2.2f;
uniform float GrnPower = 2.2f;
uniform float BluPower = 2.2f;

uniform float EdgeDetectScale = 1.0f;
uniform float EdgeToBaseRatio = 0.0f;

uniform float SubsampleLength = 3.0f;

uniform float CurrFrame = 0.0f;
uniform float CrawlWidth = 3.0f;
uniform float CrawlHeight = 3.0f;
uniform float CrawlRate = 3.0f;

uniform float UseShadow = 0.0f;
uniform float ShadowBrightness = 1.0f;
uniform float ShadowPixelSizeX = 3.0f;
uniform float ShadowPixelSizeY = 3.0f;
uniform float ShadowU = 0.375f;
uniform float ShadowV = 0.375f;
uniform float ShadowWidth = 8.0f;
uniform float ShadowHeight = 8.0f;

float4 ps_main(PS_INPUT Input) : COLOR
{
	float2 Ratios = float2(WidthRatio, HeightRatio);

	// -- Screen Pincushion Calculation --
	float2 UnitCoord = Input.TexCoord * Ratios * 2.0f - 1.0f;

	float PincushionR2 = pow(length(UnitCoord),2.0f) / pow(length(Ratios), 2.0f);
	float2 PincushionCurve = UnitCoord * PincushionAmountX * PincushionR2;
	float2 BaseCoord = Input.TexCoord + PincushionCurve;

	// RGB Pincushion Calculation
	float3 PincushionCurveX = UnitCoord.x * PincushionAmountX * PincushionR2;
	float3 PincushionCurveY = UnitCoord.y * PincushionAmountX * PincushionR2;

	float4 BaseTexel = tex2D(DiffuseSampler, BaseCoord);

	// -- Alpha Clipping (1px border in drawd3d does not work for some reason) --
	clip((BaseCoord.x < 2.0f / RawWidth) ? -1 : 1);
	clip((BaseCoord.y < 1.0f / RawHeight) ? -1 : 1);
	clip((BaseCoord.x > (2.0f / WidthRatio - 2.0f / RawWidth)) ? -1 : 1);
	clip((BaseCoord.y > 1.0f / HeightRatio) ? -1 : 1);

	// -- RGB Deconvergence --
	float3 CoordX = Input.CoordX + PincushionCurveX;
	float3 CoordY = Input.CoordY + PincushionCurveY;
	float RedTexel = tex2D(DiffuseSampler, float2(CoordX.x, CoordY.x)).r;
	float GrnTexel = tex2D(DiffuseSampler, float2(CoordX.y, CoordY.y)).g;
	float BluTexel = tex2D(DiffuseSampler, float2(CoordX.z, CoordY.z)).b;

	float3 Texel = float3(RedTexel, GrnTexel, BluTexel);

	// -- RGB Tint & Shift --
	float ShiftedRed = dot(Texel, float3(RedFromRed, RedFromGrn, RedFromBlu));
	float ShiftedGrn = dot(Texel, float3(GrnFromRed, GrnFromGrn, GrnFromBlu));
	float ShiftedBlu = dot(Texel, float3(BluFromRed, BluFromGrn, BluFromBlu));
	
	// -- RGB Offset & Scale --
	float3 OutTexel = float3(ShiftedRed, ShiftedGrn, ShiftedBlu) * float3(RedScale, GrnScale, BluScale) + float3(RedOffset, GrnOffset, BluOffset);
	
	// -- Saturation --
	float OutLuma = dot(OutTexel, float3(0.3f, 0.59f, 0.11f));
	float3 OutChroma = OutTexel - float3(OutLuma, OutLuma, OutLuma);
	float3 Saturated = OutLuma + OutChroma * Saturation;
	
	float3 OutRGB = Saturated;

	float3 Power = float3(RedPower, GrnPower, BluPower);
	OutRGB = pow(OutRGB, Power);

	// -- Color Compression (increasing the floor of the signal without affecting the ceiling) --
	float3 Floor = float3(RedFloor, GrnFloor, BluFloor);
	OutRGB = Floor + (1.0f - Floor) * OutRGB;

	// -- Scanline Simulation --
	float3 ScanBrightness = lerp(1.0f, abs(sin(((CoordY * RawHeight * ScanlineScale) * PI + ScanlineOffset * RawHeight))) * ScanlineBrightScale + ScanlineBrightOffset, ScanlineAmount);
	float3 Scanned = OutRGB * ScanBrightness;

	float2 ShadowCoord = BaseCoord * float2(RawWidth, RawHeight);
	float ShadowCoordX = frac(ShadowCoord.x / ShadowPixelSizeX) * ShadowU + 2.0f / ShadowWidth;
	float ShadowCoordY = frac(ShadowCoord.y / ShadowPixelSizeY) * ShadowV + 2.0f / ShadowHeight;
	float3 ShadowTexel = lerp(1.0f, tex2D(ShadowSampler, float2(ShadowCoordX, ShadowCoordY)), UseShadow);
	
	// -- Final Pixel --
	float4 Output = lerp(Input.Color, float4(Scanned * lerp(1.0f, ShadowTexel * 1.0f, ShadowBrightness), BaseTexel.a) * Input.Color, Input.ExtraInfo.x);
	
	return Output;
}

//-----------------------------------------------------------------------------
// Post-Processing Effect
//-----------------------------------------------------------------------------

technique TestTechnique
{
	pass Pass0
	{
		Lighting = FALSE;

		//Sampler[0] = <DiffuseSampler>;

		VertexShader = compile vs_3_0 vs_main();
		PixelShader  = compile ps_3_0 ps_main();
	}
}


Top
#69647 - 05/17/11 02:54 AM READ THIS THREAD if you can't compile latest SVN [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
no text

Top
#69650 - 05/17/11 02:21 PM Re: READ THIS THREAD if you can't compile latest SVN [Re: Just Desserts]
Robbbert Offline
Very Senior Member

Registered: 08/20/04
Posts: 1021
Loc: Land of Oz
The headers are one thing (your location is the same as mine), but the SDK is another, as you still need d3dx9_43.dll for it to actually run.

>mess <system> -verbose

and make sure there isn't any error messages.


Now, I normally run with all filters disabled. So, I tried this HLSL with the default settings (which I don't pretend to understand), and got a slight blurriness, and the speed was about the same (i used the Jaguar driver which gives about 42%). The only thing I noticed was when frameskip is set to Auto, HLSL will not skip any frames. Manually selecting a frameskip results in skipped frames (as expected), but there was no increase in overall speed. Perhaps it is working as designed, only JD could say.

Next, I purposely set the dx setting to 8, verbose said could not start d3d (as expected), but it appeared HLSL was still running?

It would be good if verbose said if HLSL was able to start successfully. Just a suggestion..

Top
#69651 - 05/17/11 02:53 PM Re: READ THIS THREAD if you can't compile latest SVN [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
You don't need the SDK to get the DLL. Just go to http://microsoft.com/directx, click "Latest directX downloads for gamers", and install "DirectX End User Runtime".

Top
#69653 - 05/17/11 07:56 PM Re: READ THIS THREAD if you can't compile latest SVN [Re: Just Desserts]
John IV Offline
Member

Registered: 09/26/08
Posts: 61
Loc: WA, USA
Out of curiosity, why is it necessary to install the DirectX 9 redist on a Win7 box w/ baked in DirectX11?

Top
#69654 - 05/17/11 08:05 PM Re: READ THIS THREAD if you can't compile latest SVN [Re: Just Desserts]
Haze Offline
Very Senior Member

Registered: 05/27/04
Posts: 1047
I believe W7 only ships with the newer versions of DX, not the older ones. You have to do it even for some games.

DX10/11 are a new technology, not directly compatible.
_________________________
http://mamedev.emulab.it/haze/

Top
#69658 - 05/17/11 09:56 PM Re: READ THIS THREAD if you can't compile latest SVN [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
There were about 40 updates to DX9, each with a different d3d9x_*.dll. It's easier for MS to make that part of the DX redist than to bake it into Win7. (Incidentally, the redist will also update DX10/DX11 if/when updates of those things happen).

And yes, DX10/11 are not back compatible with DX9. The entire API model is quite different.

Top
#69670 - 05/18/11 04:13 PM Re: READ THIS THREAD if you can't compile latest SVN [Re: Just Desserts]
Curt Coder Offline
Senior Member

Registered: 02/18/05
Posts: 401
Loc: Finland
Can we have a new preset with less moire?


Edited by Curt Coder (05/18/11 04:19 PM)

Top
#69673 - 05/18/11 06:49 PM Re: READ THIS THREAD if you can't compile latest SVN [Re: Curt Coder]
Just Desserts Offline
Very Senior Member

Registered: 05/23/09
Posts: 1243
Yes, the old presets are broken with latest SVN. Please hold.

Top
#69674 - 05/19/11 12:51 AM Re: READ THIS THREAD if you can't compile latest SVN [Re: Just Desserts]
Just Desserts Offline
Very Senior Member

Registered: 05/23/09
Posts: 1243
cgwg, if you could pop by IRC the next time you get a chance, I would appreciate it. smile

Top
#69685 - 05/19/11 08:07 PM Re: READ THIS THREAD if you can't compile latest SVN [Re: Just Desserts]
Just Desserts Offline
Very Senior Member

Registered: 05/23/09
Posts: 1243
Too large to inline, so check this out: http://img32.imageshack.us/img32/7343/rfcomparison.png

In others news, I'm about to post some more presets, share and enjoy.

Top
#69691 - 05/20/11 08:55 AM Re: READ THIS THREAD if you can't compile latest SVN [Re: Just Desserts]
Just Desserts Offline
Very Senior Member

Registered: 05/23/09
Posts: 1243
New CVBS implementation side-by-side: http://img542.imageshack.us/img542/7159/cvbs.png

New preset for CVBS:

Code:
hlsl_enable               1
hlslpath                  hlsl
shadow_mask_alpha         0.2
shadow_mask_texture       aperture.png
shadow_mask_pix_width     3.0
shadow_mask_pix_height    3.0
shadow_mask_x_count       640
shadow_mask_y_count       480
shadow_mask_usize         0.09375
shadow_mask_vsize         0.09375
oversample_x              1.0
oversample_y              1.0
curvature                 0.03
pincushion                0.00
scanline_alpha            0.25
scanline_size             1.0
scanline_bright_scale     1.0
scanline_bright_offset    0.6
scanline_jitter           0.0
defocus_x                 0.0
defocus_y                 0.0
red_converge_x            0.0
red_converge_y            0.0
green_converge_x          0.0
green_converge_y          0.0
blue_converge_x           0.0
blue_converge_y           0.0
red_radial_converge_x     0.0
red_radial_converge_y     0.0
green_radial_converge_x   0.0
green_radial_converge_y   0.0
blue_radial_converge_x    0.0
blue_radial_converge_y    0.0
red_from_r                1.0
red_from_g                0.0
red_from_b                0.0
green_from_r              0.0
green_from_g              1.0
green_from_b              0.0
blue_from_r               0.0
blue_from_g               0.0
blue_from_b               1.0
saturation                1.4
red_offset                0.0
green_offset              0.0
blue_offset               0.0
red_scale                 1.25
green_scale               1.25
blue_scale                1.25
red_power                 0.8
green_power               0.8
blue_power                0.8
red_floor                 0.05
green_floor               0.05
blue_floor                0.05
red_phosphor_life         0.4
green_phosphor_life       0.4
blue_phosphor_life        0.4
yiq_enable                1
yiq_w                     4.1887902
yiq_a                     0.5
yiq_b                     0.5
yiq_phase_count           2


For general monitor use, set yiq_enable to 0.

Top
#69699 - 05/21/11 07:53 AM Re: READ THIS THREAD if you can't compile latest SVN [Re: Just Desserts]
Just Desserts Offline
Very Senior Member

Registered: 05/23/09
Posts: 1243
I... wow. Just... wow. The following preset gets the "100% Authentic" stamp of approval from a drunken JD and his 2 equally inebriated roommates:

Code:
hlsl_enable               1
hlslpath                  hlsl
shadow_mask_alpha         0.2
shadow_mask_texture       aperture.png
shadow_mask_pix_width     3.0
shadow_mask_pix_height    3.0
shadow_mask_x_count       640
shadow_mask_y_count       480
shadow_mask_usize         0.09375
shadow_mask_vsize         0.09375
oversample_x              1.0
oversample_y              1.0
curvature                 0.1
screen_scale_top          1.0
screen_scale_bottom       1.0
pincushion                0.1
scanline_alpha            0.6
scanline_size             1.0
scanline_bright_scale     1.0
scanline_bright_offset    0.6
scanline_jitter           0.0
defocus_x                 2.0
defocus_y                 2.0
red_converge_x            0.0
red_converge_y            0.0
green_converge_x          0.0
green_converge_y          0.0
blue_converge_x           0.0
blue_converge_y           0.0
red_radial_converge_x     0.0
red_radial_converge_y     0.0
green_radial_converge_x   0.0
green_radial_converge_y   0.0
blue_radial_converge_x    0.0
blue_radial_converge_y    0.0
red_from_r                1.0
red_from_g                0.0
red_from_b                0.0
green_from_r              0.0
green_from_g              1.0
green_from_b              0.0
blue_from_r               0.0
blue_from_g               0.0
blue_from_b               1.0
saturation                1.0
red_offset                0.0
green_offset              0.0
blue_offset               0.0
red_scale                 1.0
green_scale               1.0
blue_scale                1.0
red_power                 2.2
green_power               2.2
blue_power                2.2
red_floor                 0.05
green_floor               0.05
blue_floor                0.05
red_phosphor_life         0.45
green_phosphor_life       0.45
blue_phosphor_life        0.45
yiq_enable                1
yiq_w                     4.1187867
yiq_a                     0.5
yiq_b                     0.333333
yiq_phase_count           3


Top
#69805 - 05/24/11 07:33 AM Re: READ THIS THREAD if you can't compile latest SVN [Re: Just Desserts]
B2K24 Offline
Senior Member

Registered: 04/02/11
Posts: 173
AMAZING work, absolutely incredible.

I'm running an i7 930 @ 4.0GhZ with Nvidia GTX480 using a 20" samsung WS LCD

those last settings look really good except kinda blurry in a way.
Anyone have suggestions to try or should I just try and tweak it out more?

Top
#69806 - 05/24/11 08:04 AM Re: READ THIS THREAD if you can't compile latest SVN [Re: Just Desserts]
John IV Offline
Member

Registered: 09/26/08
Posts: 61
Loc: WA, USA
You could try setting -prescale to 2 or 3 and leave the shaders alone.

Top
#69848 - 05/25/11 02:52 PM Re: READ THIS THREAD if you can't compile latest SVN [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
BTW, JD, it'd be useful if a specific error was given for "couldn't find a .fx file".

Top
#69860 - 05/25/11 07:01 PM Re: READ THIS THREAD if you can't compile latest SVN [Re: R. Belmont]
Just Desserts Offline
Very Senior Member

Registered: 05/23/09
Posts: 1243
Originally Posted By: R. Belmont
BTW, JD, it'd be useful if a specific error was given for "couldn't find a .fx file".


It wouldn't be hard to add, I'm just wondering how much this error will actually come up once the HLSL files are bundled in with a non-incremental MAME or MESS update. smile

Top
#69862 - 05/25/11 07:24 PM Re: READ THIS THREAD if you can't compile latest SVN [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
I'm sure people will figure out some way to make it happen smile

Top
#69865 - 05/25/11 07:58 PM Re: READ THIS THREAD if you can't compile latest SVN [Re: R. Belmont]
Tafoid Online   content
Senior Member

Registered: 04/15/06
Posts: 568
Loc: USA
Well, it does come up with the missing file error, only in -verbose though.
_________________________



Top
#69902 - 05/26/11 04:01 PM Re: READ THIS THREAD if you can't compile latest SVN [Re: Just Desserts]
Robbbert Offline
Very Senior Member

Registered: 08/20/04
Posts: 1021
Loc: Land of Oz
For those who use MESSUI, i've added a per-game property sheet containing the more important HLSL sliders, plus a on/off switch. The page will be greyed out if you are not running D3D version 9. Also, if you turn on HLSL, you need to hit Apply before the sliders become available. (This is the same way the rest of messui works).

If your system is set up properly, the settings will be saved into the game's ini file. The Reset and Restore Defaults buttons don't do anything at the moment, so if you manage to totally screw up, delete your ini file and start over.

Top
#70688 - 06/13/11 10:45 AM Re: READ THIS THREAD if you can't compile latest SVN [Re: Just Desserts]
Josef 1975 Offline
Member

Registered: 06/13/11
Posts: 2
Loc: VERONA, ITALY
HI, I'm joseph from italy. I was searching for an HLSL preset for mame 142u5 like "arcade ideal" for 142u4 by Just Dessert (u4 preset are not compatible with u5).
I tried all presets posted in this thread but they are too slow on my core2duo E8400 3.0ghz with Radeon 5850 1gb and not so close to a real arcade monitor like the "arcade ideal" on u4....
I also wrote an italian guide to HLSL activation ( http://www.mameitalia.net/index.php?showtopic=14189 ) and I'd like to add new preset for u5 and later versions of mame as soon as possible. can someone help me? thanks!

Top
#73772 - 10/19/11 09:14 AM SPAM [Re: ]
Anna Wu Offline
Very Senior Member

Registered: 07/28/07
Posts: 3939
above me
_________________________
Anna's Playground for QMC2

Top
#75814 - 01/04/12 03:10 AM Re: SPAM [Re: Just Desserts]
MikeAbson Online   content
Senior Member

Registered: 08/15/11
Posts: 414
Loc: Melbourne, Australia
Hopefully this is the best place to get help with this. I'm not at home right now, so I'll try my best to discribe my issue. I've got a desktop PC with Windows 7 64-bit on it. I had installed TortoiseSVN v1.7.3 along with minigw (c:\minigw). I had downloaded the MESS source in to C:\MESSSRC using TortoiseSVN and that was successfull. I was also able to compile the entire source code right after downloading it using the following commands:

set path=mingw\mingw64-w64\bin
make -j6 (I have an AMD 6-core processor, so I think -j6 is correct.

Since then, (which was a few days ago), there are been numerous updates and I had used TortoiseSVN to update the source code by right clicking and then clicking on "update" within the C:\MESSSRC folder, which went fine. I was also able to compile the source code once or twice since, however once Aaron made some changes, (rev 13814), I can't compile the source code anymore, and after minigw tries to link the mess64.exe file, I end up with an error code 1 (after a bunch of code scrolls). I'll try and attach a screenshot when I get home of the DOS prompt window. I can continue to update the source code with TortoiseSVN, and everything appears normal when compiling the source code, but always gives me an error 1 at end when trying to create the mess64.exe file.

I decided I'll start over from scratch on my laptop and I can compile the source code on it, (haven't tried any updates yet though) just not on my desktop anymore. Am I doing something wrong here? It was working, it just won't work anymore for some reason. Also, not sure if this is a coincidence or not, but I've noticed on Bobz Automatic MESS SVN Build page, it says "build error", and the last successful build was the last time I was successfully able to compile the source code from an update, (rev 13813).

Any ideas? Thanks all.

Mike.

Top
#75829 - 01/04/12 12:48 PM Re: SPAM [Re: Just Desserts]
etabeta78 Offline
Very Senior Member

Registered: 01/27/06
Posts: 3300
Loc: Trondheim, Norway
have you tried to do a clean build (or to manually delete the obj/ folder)?

Top
#75834 - 01/04/12 01:26 PM Re: SPAM [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
Mike: in general, a link error you haven't caused yourself means enough things have changed that you must make clean, as eta indicates.

Top
#75840 - 01/04/12 08:48 PM Re: SPAM [Re: Just Desserts]
MikeAbson Online   content
Senior Member

Registered: 08/15/11
Posts: 414
Loc: Melbourne, Australia
Morning all smile Thanks for the idea. What I ended up doing was deleting everything in my MESSSRC folder and then run TortoiseSVN update, after this the entire source code compiled successfully. I appreciate the help!

Mike.

Top
#75842 - 01/04/12 09:00 PM Re: SPAM [Re: MikeAbson]
judge Offline
Very Senior Member

Registered: 04/13/04
Posts: 1438
Well, that marks all files as updated which will trigger a recompile of all objects.

Next time try a 'make clean' to clean out all compiled objects followed by a normal 'make' to re-create all the objects and the executable.

Top
#75844 - 01/04/12 09:53 PM Re: SPAM [Re: Just Desserts]
MikeAbson Online   content
Senior Member

Registered: 08/15/11
Posts: 414
Loc: Melbourne, Australia
Nice, will do. I was wondering if there was a way to do that, good to know, thanks!

Top
#77379 - 02/16/12 07:53 PM Re: SPAM [Re: Just Desserts]
minireaper Offline
Member

Registered: 12/03/11
Posts: 5
while compiling latest svn of mess in linux i get

src/lib/util/chdcodec.c:45:27: schwerwiegender Fehler: lib7z/lzmaenc.h: Datei oder Verzeichnis nicht gefunden

which means file not found. file is named LzmaEnc.h in the source.
a bit later same error occours for lzmadec.h

putting 2 soflinks in lowercase makes mess compile and link fine.

trying to build the mess tools i end with

src/tools/ldresample.c: In Funktion »chd_file* open_chd(const char*, movie_info*)«:
src/tools/ldresample.c:201:30: Fehler: »CHD_OPEN_READ« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:201:55: Fehler: »chd_open« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:204:74: Fehler: »chd_error_string« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:209:97: Fehler: »chd_get_metadata« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:212:78: Fehler: »chd_error_string« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:213:16: Fehler: »chd_close« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:221:16: Fehler: »chd_close« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:228:38: Fehler: »chd_get_header« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c: In Funktion »chd_file* create_chd(const char*, chd_file*, const movie_info*)«:
src/tools/ldresample.c:249:8: Fehler: »chd_header« bezeichnet keinen Typ
src/tools/ldresample.c:254:32: Fehler: »srcheader« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:254:79: Fehler: »CHDCOMPRESSION_AV« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:254:102: Fehler: »chd_create« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:257:79: Fehler: »chd_error_string« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:262:30: Fehler: »CHD_OPEN_READWRITE« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:262:60: Fehler: »chd_open« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:265:78: Fehler: »chd_error_string« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:270:41: Fehler: »chd_clone_metadata« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:273:74: Fehler: »chd_error_string« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:274:16: Fehler: »chd_close« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:279:33: Fehler: »chd_compress_begin« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:282:79: Fehler: »chd_error_string« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c: In Funktion »int read_chd(chd_file*, UINT32, movie_info*, UINT32)«:
src/tools/ldresample.c:296:2: Fehler: »av_codec_decompress_config« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:296:29: Fehler: expected »;« before »avconfig«
src/tools/ldresample.c:300:2: Fehler: »avconfig« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:307:25: Fehler: »AV_CODEC_DECOMPRESS_CONFIG« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:307:62: Fehler: »chd_codec_config« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:310:37: Fehler: »chd_read« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c: In Funktion »int write_chd(chd_file*, UINT32, movie_info*)«:
src/tools/ldresample.c:324:2: Fehler: »av_codec_compress_config« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:324:27: Fehler: expected »;« before »avconfig«
src/tools/ldresample.c:328:2: Fehler: »avconfig« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:335:25: Fehler: »AV_CODEC_COMPRESS_CONFIG« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:335:60: Fehler: »chd_codec_config« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:338:45: Fehler: »chd_compress_hunk« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c: In Funktion »void create_close_chd(chd_file*)«:
src/tools/ldresample.c:354:38: Fehler: »chd_compress_finish« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:356:76: Fehler: »chd_error_string« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c:358:16: Fehler: »chd_close« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldresample.c: In Funktion »void close_chd(chd_file*, movie_info*)«:
src/tools/ldresample.c:370:16: Fehler: »chd_close« wurde in diesem Gültigkeitsbereich nicht definiert
make: *** [obj/sdl64/tools/ldresample.o] Fehler 1
make: *** Warte auf noch nicht beendete Prozesse...
src/tools/ldverify.c: In Funktion »void* open_chd(const char*, movie_info*)«:
src/tools/ldverify.c:212:30: Fehler: »CHD_OPEN_READ« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldverify.c:212:55: Fehler: »chd_open« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldverify.c:215:74: Fehler: »chd_error_string« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldverify.c:220:97: Fehler: »chd_get_metadata« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldverify.c:223:78: Fehler: »chd_error_string« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldverify.c:224:16: Fehler: »chd_close« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldverify.c:232:16: Fehler: »chd_close« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldverify.c:238:38: Fehler: »chd_get_header« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldverify.c: In Funktion »int read_chd(void*, int, bitmap_yuy16&, INT16*, INT16*, int*)«:
src/tools/ldverify.c:263:2: Fehler: »av_codec_decompress_config« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldverify.c:263:29: Fehler: expected »;« before »avconfig«
src/tools/ldverify.c:275:3: Fehler: »avconfig« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldverify.c:284:38: Fehler: »AV_CODEC_DECOMPRESS_CONFIG« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldverify.c:284:75: Fehler: »chd_codec_config« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldverify.c:287:80: Fehler: »chd_read« wurde in diesem Gültigkeitsbereich nicht definiert
src/tools/ldverify.c: In Funktion »void close_chd(void*)«:
src/tools/ldverify.c:304:28: Fehler: »chd_close« wurde in diesem Gültigkeitsbereich nicht definiert

Top
#80581 - 07/22/12 02:16 AM Re: SPAM [Re: Just Desserts]
MikeAbson Online   content
Senior Member

Registered: 08/15/11
Posts: 414
Loc: Melbourne, Australia
I'm trying to compile the latest version of MESS (r15639) and keep getting a MegaCD error. I've deleted the both the OBJ and SRC folders, but I'm still getting the same error message. I'm not sure what to do.


Top
#80582 - 07/22/12 02:31 AM Re: SPAM [Re: Just Desserts]
Tafoid Online   content
Senior Member

Registered: 04/15/06
Posts: 568
Loc: USA
try "make depend" and then attempt another make
_________________________



Top
#80583 - 07/22/12 03:48 AM Re: SPAM [Re: Just Desserts]
Haze Offline
Very Senior Member

Registered: 05/27/04
Posts: 1047
you shouldn't have to tho, sounds like the dependencies weren't added correctly in the makefile
_________________________
http://mamedev.emulab.it/haze/

Top
#80584 - 07/22/12 04:04 AM Re: SPAM [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
The -Wno-narrowing means a non-MAMEdev GCC 4.7.0 or later is in the $(PATH), and at that point all other errors are to be ignored.

Top
#80594 - 07/23/12 12:42 AM Re: SPAM [Re: Just Desserts]
MikeAbson Online   content
Senior Member

Registered: 08/15/11
Posts: 414
Loc: Melbourne, Australia
I appreciate the efforts here. I tried make depend, but it hasn't made a difference unfortunately. I'm using the latest version of TortoiseSVN and mingw-mame-w64-20110519.exe (found here: http://mamedev.org/tools/) on Windows 7 Home Premium 64-Bit.

Do I need to update mingw64? I had attempted to do this from here (http://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/) although I think I downloaded the v1.0.4 instead of v2.0.4, but inside v1.0.4 there was no bin folder with make.exe etc... So I'm not sure what to download other than what is on the mamedev website. I guess I can try and download the revision before the MegaCD changes were made and see if I can compile the source, but I'm not sure what to do if releases after that won't compile.


Edited by MikeAbson (07/23/12 12:44 AM)

Top
#81100 - 08/24/12 07:37 AM Re: SPAM [Re: Just Desserts]
bobz Offline
Senior Member

Registered: 03/24/04
Posts: 108
Loc: France
Hello,

I have updated my daily build site with the new development tools (mingw-mame-w32-20120807.exe) and I have this error when doing "c:\mingw\mingw64-w32\bin\make TARGET=mess" :

Compiling src/osd/windows/vconv.c...
cc1.exe: internal compiler error: Illegal instruction
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
make: *** [obj/windows/osd/windows/vconv.o] Error 1


vconv.c is the very first file trying to be compiled. So in fact cc1.exe does not work at all.

The daily build machine is WinXP 32 bits.

Does it ring a bell for any of you ?

Top
#81101 - 08/24/12 08:34 AM Re: SPAM [Re: Just Desserts]
qmc2 Offline
Very Senior Member

Registered: 05/29/08
Posts: 3028
Loc: Germany
Since you're calling "make" with its full path, are you sure that the cc1.exe being called is the right one? I mean, did you change your %PATH% env. variable to point to the new tools' binaries?

I cannot reproduce this here on Windows 7 (x64) at least, using the 32-bit version of the new tools...
_________________________
We're searching for QMC2 translators & support for existing translations. Interested? See here!

Top
#81102 - 08/24/12 09:23 AM Re: SPAM [Re: Just Desserts]
bobz Offline
Senior Member

Registered: 03/24/04
Posts: 108
Loc: France
Yes I have updated the PATH to point to c:\mingw\mingw64-w32\bin

I used to use full path in my script for some historical reason (I do not recall why exactly). I guess it's not usefull anymore and I could remove this.
I think I have tested without full path yesterday, but I will double check when back home.

Top
#81103 - 08/24/12 09:26 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
qmc2 Offline
Very Senior Member

Registered: 05/29/08
Posts: 3028
Loc: Germany
OK, just for reference... this is how I setup my environment, having installed the 32-bit tools in 'c:\mingw64-w32':

Code:
set PATH=c:\mingw64-w32\bin;c:\mingw64-w32\i686-w64-mingw32\bin;%PATH%

Note that there are two required paths.
_________________________
We're searching for QMC2 translators & support for existing translations. Interested? See here!

Top
#81104 - 08/24/12 09:41 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
bobz Offline
Senior Member

Registered: 03/24/04
Posts: 108
Loc: France
Oh ! I didn't do that.
I only set the first one since this is what is written on mamedev page. I will try this tonight thanks.

Top
#81105 - 08/24/12 09:49 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
qmc2 Offline
Very Senior Member

Registered: 05/29/08
Posts: 3028
Loc: Germany
Well, checking twice, I'm not sure it's even related because cc1.exe is outside of the PATH's anyway. Also, when the dev-tools page says only that one path is required, I doubt it makes a difference... however, that's how it works here smile.
_________________________
We're searching for QMC2 translators & support for existing translations. Interested? See here!

Top
#81106 - 08/24/12 09:38 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
bobz Offline
Senior Member

Registered: 03/24/04
Posts: 108
Loc: France
No way.
I tried what you have suggested and I try re-installing tools but it fails with the same error.
I will stick to the old tool for now until I have more time to investigate.
Thanks for your help

Top
#81128 - 08/26/12 06:53 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
Robert Gault Offline
Senior Member

Registered: 12/16/07
Posts: 254
Loc: Michigan
I am having essentially the same error that bobz is reporting on a WinXP system. Downloaded the mingw-mame-w32-20120807.exe package and installed it.

Now every time anything gets compiled there is a cc1plus.exe error which stops the process. However, an .o file is created and the next attempt at make proceeds to the next .c file.

Top
#81130 - 08/26/12 10:33 AM Re: SPAM [Re: R. Belmont]
Olivier Galibert Offline
Senior Member

Registered: 06/02/01
Posts: 208
Loc: somewhere else entirely
Originally Posted By: R. Belmont
The -Wno-narrowing means a non-MAMEdev GCC 4.7.0 or later is in the $(PATH), and at that point all other errors are to be ignored.


Or it means you're on linux with a gentoo-stable version of the compiler:
gcc version 4.5.3 (Gentoo 4.5.3-r2 p1.1, pie-0.4.7)

OG.

Top
#81135 - 08/26/12 07:23 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Robert Gault]
qmc2 Offline
Very Senior Member

Registered: 05/29/08
Posts: 3028
Loc: Germany
Originally Posted By: Robert Gault
I am having essentially the same error that bobz is reporting on a WinXP system. Downloaded the mingw-mame-w32-20120807.exe package and installed it.

Asked differently: is there anyone having success with the new tools on WinXP x86?

On Windows 7 x64 they work fine.
_________________________
We're searching for QMC2 translators & support for existing translations. Interested? See here!

Top
#81137 - 08/26/12 08:17 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: qmc2]
Anna Wu Offline
Very Senior Member

Registered: 07/28/07
Posts: 3939
Originally Posted By: qmc2
Originally Posted By: Robert Gault
I am having essentially the same error that bobz is reporting on a WinXP system. Downloaded the mingw-mame-w32-20120807.exe package and installed it.

Asked differently: is there anyone having success with the new tools on WinXP x86?

On Windows 7 x64 they work fine.


Not tested yet.

For MESS I still use GCC 4.4.7 on my WinXP SP3 32-bit OS.
_________________________
Anna's Playground for QMC2

Top
#81138 - 08/26/12 08:29 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
qmc2 Offline
Very Senior Member

Registered: 05/29/08
Posts: 3028
Loc: Germany
Weren't you already using the "RC version" of the new tools successfully? When those work, the actual new tools should work as well.
_________________________
We're searching for QMC2 translators & support for existing translations. Interested? See here!

Top
#81139 - 08/26/12 08:34 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: qmc2]
Anna Wu Offline
Very Senior Member

Registered: 07/28/07
Posts: 3939
Originally Posted By: qmc2
Weren't you already using the "RC version" of the new tools successfully? When those work, the actual new tools should work as well.


No, after installing the unofficial GCC 4.6 and Qt 4.8.1 to compile QCHDman I tried to compile MESS too and I got a cc1.exe: internal compiler error.
I think I told you or Micko this already in the past.
_________________________
Anna's Playground for QMC2

Top
#81140 - 08/26/12 08:36 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
qmc2 Offline
Very Senior Member

Registered: 05/29/08
Posts: 3028
Loc: Germany
Oh, then you'll get the same issue with the official new tools, I suppose... no, I wasn't aware.
_________________________
We're searching for QMC2 translators & support for existing translations. Interested? See here!

Top
#81163 - 08/27/12 04:11 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
Robert Gault Offline
Senior Member

Registered: 12/16/07
Posts: 254
Loc: Michigan
As Anna said, the last official tool that works for me with WinXP SP3 32-bit, is mingw-mame-w32-20110519.exe; GCC 4.4.7.

The only problems I have with the current source plus messui 0.146u5 source from http://messui.the-chronicles.org/ is some #pragma GCC diagnostic errors for unknown objects.
Comment out the pragmas and r17490 built to completion.

Top
#81166 - 08/27/12 05:38 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Robert Gault]
Anna Wu Offline
Very Senior Member

Registered: 07/28/07
Posts: 3939
Just for info, Kaylee has the WinXP 32-bit OS and he still use my older MAME/Qt tool package.
He doesn´t tried the new MAME tools.
_________________________
Anna's Playground for QMC2

Top
#81182 - 08/28/12 04:31 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
qmc2 Offline
Very Senior Member

Registered: 05/29/08
Posts: 3028
Loc: Germany
Note: I tried the new tools on a more or less 'fresh' Windows XP SP3 (x86) installation now, and building MAME works fine here... I suppose MESS won't be different.
_________________________
We're searching for QMC2 translators & support for existing translations. Interested? See here!

Top
#81183 - 08/28/12 05:24 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
qmc2 Offline
Very Senior Member

Registered: 05/29/08
Posts: 3028
Loc: Germany
Interesting... MESS compiles flawlessly as well, but I get this linker error at the end:

Code:
Linking mess.exe...
obj/windows/mess/mess/drivlist.o:drivlist.c:(.rdata+0x1928): undefined reference to `driver_victor9k'
collect2: ld returned 1 exit status
make: *** [mess.exe] Error 1

I don't get this on Linux, haven't tried Win 7 x64 yet... but whatever it is, I doubt it's related to the new tools.

This was tested with SVN r17537.
_________________________
We're searching for QMC2 translators & support for existing translations. Interested? See here!

Top
#81184 - 08/28/12 05:33 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
Micko Offline
Senior Member

Registered: 02/29/08
Posts: 307
Loc: Serbia
This kind of error can occure if you have stopped the build (Ctrl-C) and then some .o files are 0 size, just check in obj for specific file related to that driver delete it and try compiling again.

Top
#81185 - 08/28/12 05:37 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
qmc2 Offline
Very Senior Member

Registered: 05/29/08
Posts: 3028
Loc: Germany
Well, AFAICT, I did not stop/restart the compilation (or did I? Hmmm, can't remember exactly... smile )

I'll try what you said and give feedback... my basic statement hasn't changed, however: for me, compilation with the new tools works fine on WinXP SP3 (32-bit).
_________________________
We're searching for QMC2 translators & support for existing translations. Interested? See here!

Top
#81187 - 08/28/12 05:42 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
qmc2 Offline
Very Senior Member

Registered: 05/29/08
Posts: 3028
Loc: Germany
Yep, that did the trick:

Code:
c:\Projekte\mame-svn>del obj\windows\mess\drivers\victor9k.o

c:\Projekte\mame-svn>make TARGET=mess
Compiling src/mess/drivers/victor9k.c...
Archiving obj/windows/mess/act.a...
Linking mess.exe...

c:\Projekte\mame-svn>dir
 Volume in drive C has no label.
 Volume Serial Number is E009-E9AC

 Directory of c:\Projekte\mame-svn

28.08.2012  22:10    <DIR>          .
28.08.2012  22:10    <DIR>          ..
28.08.2012  20:44    <DIR>          artwork
28.08.2012  21:32           604.672 chdman.exe
28.08.2012  20:44    <DIR>          docs
28.08.2012  20:36    <DIR>          hash
28.08.2012  20:34    <DIR>          hlsl
28.08.2012  21:32            20.992 jedutil.exe
28.08.2012  20:44    <DIR>          keymaps
28.08.2012  21:32           506.368 ldresample.exe
28.08.2012  21:32           532.480 ldverify.exe
28.08.2012  21:31            19.968 ledutil.exe
28.08.2012  20:44            19.863 makefile
28.08.2012  21:49        72.766.976 mame.exe
28.08.2012  22:11        33.150.464 mess.exe
28.08.2012  20:44    <DIR>          obj
28.08.2012  21:32           195.072 regrep.exe
28.08.2012  21:32            65.024 romcmp.exe
28.08.2012  21:32           175.104 split.exe
28.08.2012  20:44    <DIR>          src
28.08.2012  21:32           171.008 src2html.exe
28.08.2012  21:32            22.016 srcclean.exe
28.08.2012  21:32         1.584.128 unidasm.exe
              14 File(s)    109.834.135 bytes
               9 Dir(s)  58.309.226.496 bytes free

(the VM is a bit ahead of time wink )
_________________________
We're searching for QMC2 translators & support for existing translations. Interested? See here!

Top
#81263 - 09/04/12 05:20 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
Robert Gault Offline
Senior Member

Registered: 12/16/07
Posts: 254
Loc: Michigan
Is anyone else having this problem on a Win 32-bit system, r17628?

Linking mess.exe...
c:/mingw/mingw64-w32/bin/../lib/gcc/i686-w64-mingw32/4.4.7/../../../../i686-w64-mingw32/bin/ld.exe: obj/winui/mess/mess/
libsound.a(2151intf.o): warning: duplicate section `.rdata$_ZTI13ym2151_device[typeinfo for ym2151_device]' has differen
t size

Top
#81267 - 09/04/12 01:57 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
Robert Gault Offline
Senior Member

Registered: 12/16/07
Posts: 254
Loc: Michigan
False alarm. Required a full clean compile.

Top
#81684 - 09/18/12 04:37 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
goldenegg Offline
Member

Registered: 08/02/10
Posts: 49
Anyone else having problems compiling MESS 0.147? I'm compiling on OS X 10.8.1 and get the following:

make: *** No rule to make target `obj/sdl64/MESS/MESS.o', needed by `MESS64'. Stop.

MAME and UME both compile without any problems.

Top
#81685 - 09/18/12 04:42 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
The TARGET= is case sensitive and must be all lowercase. For instance, "make TARGET=mess -j3".

Top
#81686 - 09/18/12 04:54 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
goldenegg Offline
Member

Registered: 08/02/10
Posts: 49
Wow ... I feel stupid now. I knew it was case sensitive, but not sure why I wasn't typing it that way. Especially since I did compile ume properly. Let's chalk it up to only getting 3 hours sleep last night smile

Top
#83329 - 12/19/12 02:24 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
Robert Gault Offline
Senior Member

Registered: 12/16/07
Posts: 254
Loc: Michigan
Anyone having this problem with msc96?

C:\mingw\mess>make TARGET=mess OSD=winui
Generating i8x9x source file...
process_begin: CreateProcess(NULL, python src/emu/cpu/mcs96/mcs96make.py mcs96 src/emu/cpu/mcs96/mcs96ops.lst obj/winui/
emu/cpu/mcs96/mcs96.inc, ...) failed.
make (e=2): The system cannot find the file specified.
make: *** [obj/winui/emu/cpu/mcs96/mcs96.inc] Error 2

I'm using the mingw64-w32 package with gcc 4.4.7 which is the most recent package that work on my system.

Hmmm, unless I am misreading the source code, there are several files missing from the repository: i8x9x.inc, i8xc196.inc, and mcs96.inc.


Edited by Robert Gault (12/19/12 02:55 AM)
Edit Reason: more info

Top
#83330 - 12/19/12 03:03 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
Vas Crabb Offline
Very Senior Member

Registered: 02/08/04
Posts: 1381
Loc: Sydney, Australia
You're missing a non-venomous snake.

Top
#83331 - 12/19/12 03:38 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Vas Crabb]
Just Desserts Offline
Very Senior Member

Registered: 05/23/09
Posts: 1243
Quick, let's see how long it takes him to read what's been posted on the MAME website for 11 days now.

Top
#83333 - 12/19/12 08:56 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
Anna Wu Offline
Very Senior Member

Registered: 07/28/07
Posts: 3939
Quote:
process_begin: CreateProcess(NULL, python src/emu/cpu/mcs96/mcs96make.py mcs96 src/emu/cpu/mcs96/mcs96ops.lst obj/winui/
emu/cpu/mcs96/mcs96.inc, ...) failed.
make (e=2): The system cannot find the file specified.
make: *** [obj/winui/emu/cpu/mcs96/mcs96.inc] Error 2


It can be, your compiler doesn´t find the python folder to create ".inc" files.
Does it works if you compile the standard MESS (windows) version?
You make a clean compile?
_________________________
Anna's Playground for QMC2

Top
#83334 - 12/19/12 09:01 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
qmc2 Offline
Very Senior Member

Registered: 05/29/08
Posts: 3028
Loc: Germany
The "non-venomous snake" is python, yes, and it comes with the latest tools. They also work fine on XP SP3 (32-bit), I tried that successfully. If they don't, then something's wrong with your computer and/or setup.
_________________________
We're searching for QMC2 translators & support for existing translations. Interested? See here!

Top
#83376 - 12/21/12 02:00 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
Robert Gault Offline
Senior Member

Registered: 12/16/07
Posts: 254
Loc: Michigan
I have the same problem with the new tools that was discussed above and never resolved as far as I can tell. My WinXP SP3 system just does not like gcc 4.6.3. Immediately after creating the obj directories, I get errors with either cc1.exe or cc1plus.exe.

make TARGET=mess
Compiling src/osd/windows/vconv.c...
cc1.exe: internal compiler error: Illegal instruction
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
make: *** [obj/windows/osd/windows/vconv.o] Error 1

OR

make TARGET=mess OSD=winui
Compiling src/build/file2str.c...
cc1plus.exe: internal compiler error: Illegal instruction
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
make: *** [obj/winui/build/file2str.o] Error 1

So now I'm blocked by either Python or gcc 4.6.3 from compiling MESS.

Top
#83377 - 12/21/12 02:04 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
Ooh. Is that a system with an AMD or other unusual processor? (Cyrix? Intel Atom?)

Also, is there some reason you are unable to upgrade to Windows 7?

Top
#83379 - 12/21/12 08:02 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
bobz Offline
Senior Member

Registered: 03/24/04
Posts: 108
Loc: France
I have the very same problem on my automatic build host:

make all TARGET=mess
mkdir.exe -p obj/windows
...
mkdir.exe -p obj/windows/tools
Compiling src/osd/windows/vconv.c...
cc1.exe: internal compiler error: Illegal instruction
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
make: *** [obj/windows/osd/windows/vconv.o] Error 1

It's an old AMD Athlon XP based machine with WinXP SP3

Top
#83381 - 12/21/12 09:27 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
qmc2 Offline
Very Senior Member

Registered: 05/29/08
Posts: 3028
Loc: Germany
Could it be related to something like this perhaps?

Just for curiosity I tried

Code:
objdump -d C:\mingw64-w32\libexec\gcc\i686-w64-mingw32\4.6.3\cc1.exe > \Tmp\cc1-exe-objdump.txt

... and I found a lot of CMOVxx instructions that are likely to be missing in old processors (see here).
_________________________
We're searching for QMC2 translators & support for existing translations. Interested? See here!

Top
#83388 - 12/21/12 02:53 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: qmc2]
Anna Wu Offline
Very Senior Member

Registered: 07/28/07
Posts: 3939
bobz, if you do not

- find a solution with last MAME tools and your computer equipment
- want upgrade your OS
- want buy a new PC

then give the combination a try which I use.
_________________________
Anna's Playground for QMC2

Top
#83389 - 12/21/12 03:08 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
bobz Offline
Senior Member

Registered: 03/24/04
Posts: 108
Loc: France
I am not sure mixing development environments is desirable from the auto-build point of view.
One of the goal of those builds is to track down early bugs. If the devs suspect the build environment for each bugs reported with my site's binaries, it will be counter productive. The binaries must be as trust worthy as possible.

Top
#83390 - 12/21/12 03:31 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: bobz]
Anna Wu Offline
Very Senior Member

Registered: 07/28/07
Posts: 3939
It's your choice.
Micko told me (IRC) my combination should work fine too.
GCC 4.6.x is just a bit more restrictive about warnings.
_________________________
Anna's Playground for QMC2

Top
#83411 - 12/21/12 08:41 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
bobz Offline
Senior Member

Registered: 03/24/04
Posts: 108
Loc: France
It's sliding a bit off topic, but can we have some developers point of view on this ?

Top
#83414 - 12/21/12 10:11 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
Robert Gault Offline
Senior Member

Registered: 12/16/07
Posts: 254
Loc: Michigan
Oh boy! Yes my CPU is an Athlon XP 2500+ so that may be why gcc 4.6.3 won't work. My reason for not buying a new computer with Windows 7 or 8 is that there is not yet sufficient reason to do so.

Anna, what is the combination you referred to? Do you list that info on your site? I see instructions for compiling QMC2 but not MESS. At least what I see does not seem to be what I need to build MESS.


Edited by Robert Gault (12/21/12 10:18 PM)
Edit Reason: more text

Top
#83415 - 12/22/12 02:53 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Robert Gault]
Anna Wu Offline
Very Senior Member

Registered: 07/28/07
Posts: 3939
Quote:
Anna, what is the combination you referred to?


MAME/MESS/UME: GCC 4.4.7/Python 2.7.3/Qt 4.8.4
QMC2/Qt CHDman:GCC 4.6/Qt 4.8.4

These combinations work for me.
Just for info, I have an Intel Mobile Pentium 4-M processor.
OS is WinXP Pro SP3 32-bit
_________________________
Anna's Playground for QMC2

Top
#83423 - 12/22/12 09:51 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Anna Wu]
Robert Gault Offline
Senior Member

Registered: 12/16/07
Posts: 254
Loc: Michigan
Originally Posted By: Anna Wu
Quote:
Anna, what is the combination you referred to?


MAME/MESS/UME: GCC 4.4.7/Python 2.7.3/Qt 4.8.4
QMC2/Qt CHDman:GCC 4.6/Qt 4.8.4

These combinations work for me.
Just for info, I have an Intel Mobile Pentium 4-M processor.
OS is WinXP Pro SP3 32-bit


Anna,
To clarify the above, how do you mix and match this? Do you take part of the old mame gcc 4.4.7 and drop it into the current mame package? Do you install the above as separate entities?
Just assume I'm clueless and provide a step by step process.

Top
#83426 - 12/23/12 03:42 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Robert Gault]
Anna Wu Offline
Very Senior Member

Registered: 07/28/07
Posts: 3939
Robert, I`ll send you a PM to avoid any confusion here.
_________________________
Anna's Playground for QMC2

Top
#83444 - 12/24/12 09:55 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Anna Wu]
Anna Wu Offline
Very Senior Member

Registered: 07/28/07
Posts: 3939
It's just nice to hear it is working for you, Robert. smile
_________________________
Anna's Playground for QMC2

Top
#83464 - 12/25/12 02:15 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
Micko Offline
Senior Member

Registered: 02/29/08
Posts: 307
Loc: Serbia
bobz: Thing is that we already need to support various GCC versions due to Linux and OSX support, so in general there should not be errors that are passing 4.6 or 4.7 and not working on 4.4 (we had some issue with Apple compiler beeing more restrictive but not mingw), so if you add Python support over 4.4.7 build process will run and things noticed not working there will not work on 4.6 or 4.7 too.
Thing is we can't help much if Mingw have issues that compiler is not working on some environments, since they introduce their own bugs (like latest 4.7.x 32bit is having issues)

Top
#83465 - 12/25/12 02:20 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
Performance on modern CPUs will be better with the code generated by newer GCCs though, so it's not optimal to have a public builder using the old compiler.

Top
#83466 - 12/25/12 02:27 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: R. Belmont]
Anna Wu Offline
Very Senior Member

Registered: 07/28/07
Posts: 3939
I agree but it should exist alternatives by using older CPUs.
_________________________
Anna's Playground for QMC2

Top
#84228 - 01/15/13 05:07 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
zillion Offline
Member

Registered: 04/13/08
Posts: 38
Loc: USA
I'm having a problem compiling.

I've updated to the latest svn, and ran make TARGET=mess -j4 PTR64=1, like I normally do and I get:

Quote:
src/osd/sdl/sdl.mak:449: *** commands commence before first target. Stop.



src/osd/sdl/sdl.mak line 449 has
Quote:
$(error Ubuntu 12.10 detected. Please install the gcc-4.6 and g++-4.6 packages)


I am running Ubuntu 12.10. After installing gcc-4.6 and g++-4.6, it compiles file, so I guess it's just a problem with the Ubuntu 12.10 detection.

Top
#84229 - 01/15/13 05:09 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
I'll check, it's possible the whitespace cleaner thingy did something bad to the makefile that prevents that from printing.

Top
#84319 - 01/17/13 06:37 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
zillion Offline
Member

Registered: 04/13/08
Posts: 38
Loc: USA
Looks like the new psx analog stuff isn't compiling right:

Quote:
src/mess/machine/psxanalog.c: In member function ‘UINT8 psx_analog_controller_device::pad_data(int, bool)’:
src/mess/machine/psxanalog.c:46:9: error: ‘data’ may be used uninitialized in this function [-Werror=uninitialized]
At global scope:
cc1plus: error: unrecognized command line option "-Wno-narrowing" [-Werror]
cc1plus: all warnings being treated as errors
make: *** [obj/sdl64/mess/machine/psxanalog.o] Error 1
make: *** Waiting for unfinished jobs....


(edit: trying to compile with make TARGET=mess -j4 PTR64=1 after a make clean on Ubuntu 12.10)

(edit again: nevermind! Carl's svn commit r20305 fixes it! Thanks Carl!)


Edited by zillion (01/17/13 07:46 PM)

Top
#85174 - 02/04/13 08:30 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: zillion]
Anna Wu Offline
Very Senior Member

Registered: 07/28/07
Posts: 3939
r20719
Compile fix (no whatsnew)
[src/emu/cpu/es5510]

I have still a problem ...

Quote:
Compiling src/emu/cpu/es5510/es5510.c...
cc1plus.exe: warnings being treated as errors
src/emu/cpu/es5510/es5510.c:140: error: integer constant is too large for 'long' type
src/emu/cpu/es5510/es5510.c:140: error: integer constant is too large for 'long' type
src/emu/cpu/es5510/es5510.c:140: error: integer constant is too large for 'long' type
src/emu/cpu/es5510/es5510.c:141: error: integer constant is too large for 'long' type
src/emu/cpu/es5510/es5510.c:372: error: integer constant is too large for 'long' type
src/emu/cpu/es5510/es5510.c:373: error: integer constant is too large for 'long' type
src/emu/cpu/es5510/es5510.c:374: error: integer constant is too large for 'long' type
src/emu/cpu/es5510/es5510.c:375: error: integer constant is too large for 'long' type
src/emu/cpu/es5510/es5510.c:376: error: integer constant is too large for 'long' type
src/emu/cpu/es5510/es5510.c:377: error: integer constant is too large for 'long' type
src/emu/cpu/es5510/es5510.c:427: error: integer constant is too large for 'long' type
src/emu/cpu/es5510/es5510.c:447: error: integer constant is too large for 'long' type
src/emu/cpu/es5510/es5510.c:449: error: integer constant is too large for 'long' type
src/emu/cpu/es5510/es5510.c:590: error: integer constant is too large for 'long' type
make: *** [obj/windows/emu/cpu/es5510/es5510.o] Error 1


However, I´ll make a clean compile again.
_________________________
Anna's Playground for QMC2

Top
#85176 - 02/04/13 10:27 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
qmc2 Offline
Very Senior Member

Registered: 05/29/08
Posts: 3028
Loc: Germany
This should fix it:

Code:
rene@thunder:~/src/mame-svn> svn diff 
Index: src/emu/cpu/es5510/es5510.c
===================================================================
--- src/emu/cpu/es5510/es5510.c (revision 20723)
+++ src/emu/cpu/es5510/es5510.c (working copy)
@@ -137,8 +137,8 @@
 
 static inline INT32 SX(INT32 x) { return (x & 0x00800000) ? x | 0xff000000 : x & 0x00ffffff; }
 static inline INT32 SC(INT32 x) { return x & 0x00ffffff; }
-static inline INT64 SX64(INT64 x) { return (x & (0x0000800000000000)) ? x | 0xffff000000000000L : x & 0x0000ffffffffffffL; }
-static inline INT64 SC64(INT64 x) { return x & 0x0000ffffffffffff; }
+static inline INT64 SX64(INT64 x) { return (x & (0x0000800000000000LL)) ? x | 0xffff000000000000LL : x & 0x0000ffffffffffffLL; }
+static inline INT64 SC64(INT64 x) { return x & 0x0000ffffffffffffLL; }
 
 static inline const char * const REGNAME(UINT8 r) {
   static char rn[8];
@@ -369,12 +369,12 @@
     break;
 
     /* 0x03 to 0x08 INSTR Register */
-  case 0x03: instr_latch = ((instr_latch&0x00ffffffffff) | ((INT64)data&0xff)<<40); logerror("ES5510: Write INSTR latch[5] = %02x -> %012" I64FMT "x\n", data, instr_latch); break;
-  case 0x04: instr_latch = ((instr_latch&0xff00ffffffff) | ((INT64)data&0xff)<<32); logerror("ES5510: Write INSTR latch[4] = %02x -> %012" I64FMT "x\n", data, instr_latch); break;
-  case 0x05: instr_latch = ((instr_latch&0xffff00ffffff) | ((INT64)data&0xff)<<24); logerror("ES5510: Write INSTR latch[3] = %02x -> %012" I64FMT "x\n", data, instr_latch); break;
-  case 0x06: instr_latch = ((instr_latch&0xffffff00ffff) | ((INT64)data&0xff)<<16); logerror("ES5510: Write INSTR latch[2] = %02x -> %012" I64FMT "x\n", data, instr_latch); break;
-  case 0x07: instr_latch = ((instr_latch&0xffffffff00ff) | ((INT64)data&0xff)<< 8); logerror("ES5510: Write INSTR latch[1] = %02x -> %012" I64FMT "x\n", data, instr_latch); break;
-  case 0x08: instr_latch = ((instr_latch&0xffffffffff00) | ((INT64)data&0xff)<< 0); logerror("ES5510: Write INSTR latch[0] = %02x -> %012" I64FMT "x\n", data, instr_latch); break;
+  case 0x03: instr_latch = ((instr_latch&0x00ffffffffffLL) | ((INT64)data&0xff)<<40); logerror("ES5510: Write INSTR latch[5] = %02x -> %012" I64FMT "x\n", data, instr_latch); break;
+  case 0x04: instr_latch = ((instr_latch&0xff00ffffffffLL) | ((INT64)data&0xff)<<32); logerror("ES5510: Write INSTR latch[4] = %02x -> %012" I64FMT "x\n", data, instr_latch); break;
+  case 0x05: instr_latch = ((instr_latch&0xffff00ffffffLL) | ((INT64)data&0xff)<<24); logerror("ES5510: Write INSTR latch[3] = %02x -> %012" I64FMT "x\n", data, instr_latch); break;
+  case 0x06: instr_latch = ((instr_latch&0xffffff00ffffLL) | ((INT64)data&0xff)<<16); logerror("ES5510: Write INSTR latch[2] = %02x -> %012" I64FMT "x\n", data, instr_latch); break;
+  case 0x07: instr_latch = ((instr_latch&0xffffffff00ffLL) | ((INT64)data&0xff)<< 8); logerror("ES5510: Write INSTR latch[1] = %02x -> %012" I64FMT "x\n", data, instr_latch); break;
+  case 0x08: instr_latch = ((instr_latch&0xffffffffff00LL) | ((INT64)data&0xff)<< 0); logerror("ES5510: Write INSTR latch[0] = %02x -> %012" I64FMT "x\n", data, instr_latch); break;
 
     /* 0x09 to 0x0b DIL Register (r/o) */
 
@@ -424,7 +424,7 @@
     break;
 
   case 0x80: /* Read select - GPR + INSTR */
-    logerror("ES5510: Read INSTR+GPR %02x (%s): %012" I64FMT "x %06x (%d)\n", data, REGNAME(data & 0xff), instr[data] & 0xffffffffffffL, gpr[data] & 0xffffff, gpr[data]);
+    logerror("ES5510: Read INSTR+GPR %02x (%s): %012" I64FMT "x %06x (%d)\n", data, REGNAME(data & 0xff), instr[data] & 0xffffffffffffLL, gpr[data] & 0xffffff, gpr[data]);
 
     /* Check if an INSTR address is selected */
     if (data < 0xa0) {
@@ -444,9 +444,9 @@
 
   case 0xc0: /* Write select - INSTR */
     DESCRIBE_INSTR(buf, instr_latch, gpr[data]);
-    logerror("ES5510: Write INSTR %02x %012" I64FMT "x: %s\n",data, instr_latch&0xffffffffffffL, buf);
+    logerror("ES5510: Write INSTR %02x %012" I64FMT "x: %s\n",data, instr_latch&0xffffffffffffLL, buf);
     if (data < 0xa0) {
-      instr[data] = instr_latch&0xffffffffffffL;
+      instr[data] = instr_latch&0xffffffffffffLL;
     }
     break;
 
@@ -587,7 +587,7 @@
       if (mulacc.write_result) {
        mulacc.product = (mulacc.cValue * mulacc.dValue) << mulshift;
        mulacc.result = (mulacc.accumulate ? machl : 0) + mulacc.product;
-       INT32 tmp = (mulacc.result & 0x0000ffffff000000) >> 24;
+       INT32 tmp = (mulacc.result & 0x0000ffffff000000LL) >> 24;
        if (mulacc.dst & SRC_DST_REG) {
          machl = mulacc.result;
          write_reg(mulacc.cReg, tmp);
_________________________
We're searching for QMC2 translators & support for existing translations. Interested? See here!

Top
#85177 - 02/04/13 10:57 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: qmc2]
Anna Wu Offline
Very Senior Member

Registered: 07/28/07
Posts: 3939
Nice, thank you. smile
_________________________
Anna's Playground for QMC2

Top
#85187 - 02/04/13 01:06 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
That change will break MSVC; MAME provides the U64() wrapper macro for 64-bit constants. ETA: I've now committed a corrected version.


Edited by R. Belmont (02/04/13 02:34 PM)

Top
#85200 - 02/04/13 03:49 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
qmc2 Offline
Very Senior Member

Registered: 05/29/08
Posts: 3028
Loc: Germany
Thanks, RB!

That's a bit OT, but I'm actually surprised that MSVC has trouble with that?! I'm using some decimal "*ULL" constants successfully in QMC2, it also works fine with MSVC as far as I can tell. May be I'm missing something, though.
_________________________
We're searching for QMC2 translators & support for existing translations. Interested? See here!

Top
#85201 - 02/04/13 03:50 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
LL/ULL are *not* supported in MSVC, they're a GCC extension (which Clang also supports).

Top
#85202 - 02/04/13 04:31 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: R. Belmont]
Anna Wu Offline
Very Senior Member

Registered: 07/28/07
Posts: 3939
r20728

Just for info ...

Quote:
Compiling src/emu/cpu/es5510/es5510.c...
src/emu/cpu/es5510/es5510.c:140: error: expected unqualified-id before '<<' token
src/emu/cpu/es5510/es5510.c:143: error: expected unqualified-id before '==' token

src/emu/cpu/es5510/es5510.c: In function 'INT64 SC64(INT64)':
src/emu/cpu/es5510/es5510.c:145: error: redefinition of 'INT64 SC64(INT64)'
src/emu/cpu/es5510/es5510.c:142: error: 'INT64 SC64(INT64)' previously defined here
src/emu/cpu/es5510/es5510.c: At global scope:
src/emu/cpu/es5510/es5510.c:146: error: expected unqualified-id before '>>' token
make: *** [obj/windows/emu/cpu/es5510/es5510.o] Error 1


René´s fix was working for me before.
_________________________
Anna's Playground for QMC2

Top
#85203 - 02/04/13 04:34 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
You hit a merge violation. Delete the files and re-get from SVN.

Top
#85204 - 02/04/13 04:49 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: R. Belmont]
Anna Wu Offline
Very Senior Member

Registered: 07/28/07
Posts: 3939
Originally Posted By: R. Belmont
You hit a merge violation. Delete the files and re-get from SVN.


src\emu\cpu\ folder deleted and re-downloaded from SVN. It seems to work now.
Thanks to take care about my problem. smile
_________________________
Anna's Playground for QMC2

Top
#85218 - 02/05/13 01:06 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
Vas Crabb Offline
Very Senior Member

Registered: 02/08/04
Posts: 1381
Loc: Sydney, Australia
Huh? I definitely use ULL/LL suffixes with MSVC at work and had no problems.

Top
#87313 - 03/29/13 12:45 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
MikeAbson Online   content
Senior Member

Registered: 08/15/11
Posts: 414
Loc: Melbourne, Australia
I'm getting a compile error on the latest svn: r22134 using Windows 7. I'm also doing a clean compile here.

Compiling src/mess/machine/md_slot.c...
Compiling src/mess/machine/md_rom.c...
Compiling src/mess/machine/md_sk.c...
src/mess/machine/md_slot.c: In member function 'void base_md_cart_slot_device::f
ile_logging(UINT8*, UINT32, UINT32)':
src/mess/machine/md_slot.c:999:107: error: unknown conversion type character 'l'
in format [-Werror=format]
src/mess/machine/md_slot.c:999:107: error: too many arguments for format [-Werro
r=format-extra-args]
src/mess/machine/md_slot.c:1013:33: error: suggest parentheses around arithmetic
in operand of '^' [-Werror=parentheses]
src/mess/machine/md_slot.c:1017:35: error: suggest parentheses around arithmetic
in operand of '^' [-Werror=parentheses]
src/mess/machine/md_slot.c:1019:39: error: suggest parentheses around arithmetic
in operand of '^' [-Werror=parentheses]
src/mess/machine/md_slot.c:1021:39: error: suggest parentheses around arithmetic
in operand of '^' [-Werror=parentheses]
src/mess/machine/md_slot.c:1023:32: error: suggest parentheses around arithmetic
in operand of '^' [-Werror=parentheses]
src/mess/machine/md_slot.c:1029:28: error: suggest parentheses around arithmetic
in operand of '^' [-Werror=parentheses]
src/mess/machine/md_slot.c:1048:31: error: suggest parentheses around arithmetic
in operand of '^' [-Werror=parentheses]
src/mess/machine/md_slot.c:1050:30: error: suggest parentheses around arithmetic
in operand of '^' [-Werror=parentheses]
src/mess/machine/md_slot.c:1053:33: error: suggest parentheses around arithmetic
in operand of '^' [-Werror=parentheses]
Compiling src/mess/machine/md_eeprom.c...
cc1plus.exe: all warnings being treated as errors
make: *** [obj/windows64/mess/machine/md_slot.o] Error 1
make: *** Waiting for unfinished jobs....

Top
#87317 - 03/29/13 05:49 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
etabeta78 Offline
Very Senior Member

Registered: 01/27/06
Posts: 3300
Loc: Trondheim, Norway
sorry, Apple GCC included with OSX 10.6 did not complain about those frown

Top
#87318 - 03/29/13 06:35 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
MikeAbson Online   content
Senior Member

Registered: 08/15/11
Posts: 414
Loc: Melbourne, Australia
No worries, it's all fixed now smile

Top
#87329 - 03/29/13 11:55 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
In fairness to GCC < 4.7, the "suggest parens" warning was completely spurious in that case because it would give the right results going in either order.

The %llx not being portable thing is important to know, however smile

Top
#87330 - 03/29/13 11:57 AM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
etabeta78 Offline
Very Senior Member

Registered: 01/27/06
Posts: 3300
Loc: Trondheim, Norway
I was pretty sure there was a more correct way to print UINT64, but I forgot
Now I took a note for next time I need it

Top
#88471 - 05/15/13 09:13 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
zillion Offline
Member

Registered: 04/13/08
Posts: 38
Loc: USA
With most recent svn on Ubuntu 12.10 64-bit, the build is failing when trying to link.

It normally builds fine. I also ran make clean before compiling.

Here's the output:

Quote:

Linking mess64...
obj/sdl64/mess/mame.a(megadriv.o): In function `delegate_generic_class* delegate
_base<void, address_space&, unsigned int, unsigned char, unsigned char, _noparam
>::late_bind_helper<mtech_state>(delegate_late_bind&)':
megadriv.c:(.text._ZN13delegate_baseIvR13address_spacejhh8_noparamE16late_bind_h
elperI11mtech_stateEEP22delegate_generic_classR18delegate_late_bind[delegate_generic_class* delegate_base<void, address_space&, unsigned int, unsigned char, unsigned char, _noparam>::late_bind_helper<mtech_state>(delegate_late_bind&)]+0xc): undefined reference to `typeinfo for mtech_state'
megadriv.c:(.text._ZN13delegate_baseIvR13address_spacejhh8_noparamE16late_bind_helperI11mtech_stateEEP22delegate_generic_classR18delegate_late_bind[delegate_generic_class* delegate_base<void, address_space&, unsigned int, unsigned char, unsigned char, _noparam>::late_bind_helper<mtech_state>(delegate_late_bind&)]+0x45): undefined reference to `typeinfo for mtech_state'
obj/sdl64/mess/mame.a(megadriv.o): In function `delegate_generic_class* delegate_base<unsigned char, address_space&, unsigned int, unsigned char, _noparam, _noparam>::late_bind_helper<mtech_state>(delegate_late_bind&)':
megadriv.c:(.text._ZN13delegate_baseIhR13address_spacejh8_noparamS2_E16late_bind_helperI11mtech_stateEEP22delegate_generic_classR18delegate_late_bind[delegate_generic_class* delegate_base<unsigned char, address_space&, unsigned int, unsigned char, _noparam, _noparam>::late_bind_helper<mtech_state>(delegate_late_bind&)]+0xc): undefined reference to `typeinfo for mtech_state'
megadriv.c:(.text._ZN13delegate_baseIhR13address_spacejh8_noparamS2_E16late_bind_helperI11mtech_stateEEP22delegate_generic_classR18delegate_late_bind[delegate_generic_class* delegate_base<unsigned char, address_space&, unsigned int, unsigned char, _noparam, _noparam>::late_bind_helper<mtech_state>(delegate_late_bind&)]+0x45): undefined reference to `typeinfo for mtech_state'
collect2: ld returned 1 exit status
make: *** [mess64] Error 1



If there's anything else that would be of use, please let me know.

Top
#88472 - 05/15/13 09:17 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
Either Canonical threw the "we're going proprietary, fuck all the other distros" switch sooner than I was anticipating or your source tree is corrupted.

Top
#88473 - 05/15/13 09:18 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
(Fair warning: MAME/MESS will not be formally supported on Ubuntu operating systems once they switch to their in-house graphics stack).

Top
#88474 - 05/15/13 10:33 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
judge Offline
Very Senior Member

Registered: 04/13/04
Posts: 1438
Hmm, I am actually hit by the same link error when compiling with clang on osx

Top
#88475 - 05/15/13 10:46 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
judge Offline
Very Senior Member

Registered: 04/13/04
Posts: 1438
Fixed

Top
#88496 - 05/16/13 04:29 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: R. Belmont]
zillion Offline
Member

Registered: 04/13/08
Posts: 38
Loc: USA
RB: Yeah, I plan on switching back to Debian before that happens, but thanks for the warning! Canonical definitely made me feel uneasy with their Mir announcement.

Judge: Thanks for the fix! It's linking just fine now!

Top
#88497 - 05/16/13 04:58 PM Re: Can't compile latest MESS? READ THIS THREAD [Re: Just Desserts]
R. Belmont Online   content
Very Senior Member

Registered: 03/17/01
Posts: 13175
Loc: USA
zillion: Good call. Debian's always nice and safe smile

Top
Page 1 of 12 1 2 3 ... 11 12 >


Who's Online
5 registered (Waremonger, MikeAbson, mahlemiut, LoganB, Tafoid), 11 Guests and 1 Spider online.
Key: Admin, Global Mod, Mod
Shout Box

Forum Stats
4345 Members
9 Forums
7229 Topics
87138 Posts

Max Online: 183 @ 03/06/12 06:21 PM