Starter material

Shader

Shader "Shaders/Material/BasicFlat" {
    SubShader {
      Tags { "RenderType" = "Opaque" }
      CGPROGRAM
        #pragma surface surf Standard
        struct Input {
            float4 color : COLOR;
        };
        void surf (Input IN, inout SurfaceOutput o) {
            o.Albedo = float4(1.0, 1.0, 0.0, 1.0);
        }
      ENDCG
    }
    Fallback "Diffuse"
  }

Shader Notes

The above shader generates a lit surface with a single diffuse color applied to it.

As per http://docs.unity3d.com/Manual/SL-SurfaceShaders.html, the #pragma directive is used to control the behaviour of the shader.

In this case the default Lambert lighting model is used, and the function surf is used to calculate the surface value.