Load_CM5() : clean up palette setup
This commit is contained in:
		
							parent
							
								
									9e89fb665b
								
							
						
					
					
						commit
						f53925f4f5
					
				@ -3223,6 +3223,42 @@ void Load_CM5(T_IO_Context* context)
 | 
			
		||||
  int mod=0;
 | 
			
		||||
  short line = 0;
 | 
			
		||||
  int tx, ty;
 | 
			
		||||
  static const T_Components CPC_Hw_Palette[] = {
 | 
			
		||||
    {0x6E, 0x7D, 0x6B}, // 0x40
 | 
			
		||||
    {0x6E, 0x7B, 0x6B}, // 0x41
 | 
			
		||||
    {0, 0xF3, 0x6B},
 | 
			
		||||
    {0xF3, 0xF3, 0x6D},
 | 
			
		||||
    {0, 2, 0x6B},
 | 
			
		||||
    {0xF0, 2, 0x68},
 | 
			
		||||
    {0, 0x78, 0x68},
 | 
			
		||||
    {0xF3, 0x7D, 0x6B},
 | 
			
		||||
 | 
			
		||||
    {0xF3, 0x02, 0x68}, // 0x48
 | 
			
		||||
    {0xF3, 0xF3, 0x6B},
 | 
			
		||||
    {0xF3, 0xF3, 0xD},
 | 
			
		||||
    {255, 0xF3, 0xF9},
 | 
			
		||||
    {0xF3, 5, 6},
 | 
			
		||||
    {0xF3, 2, 0xF4},
 | 
			
		||||
    {0xF3, 0x7D, 0xD},
 | 
			
		||||
    {0xFA, 0x80, 0xF9},
 | 
			
		||||
 | 
			
		||||
    {0x00, 0x02, 0x68}, // 0x50
 | 
			
		||||
    {0x02, 0xF3, 0x6B},
 | 
			
		||||
    {2, 0xF0, 1},
 | 
			
		||||
    {0xF, 0xF3, 0xF2},
 | 
			
		||||
    {0, 2, 1},
 | 
			
		||||
    {0x0C, 2, 0xF4},
 | 
			
		||||
    {2, 0x78, 1},
 | 
			
		||||
    {0xC, 0x7B, 0xF4},
 | 
			
		||||
    {0x69, 2, 0x68},  // 0x58
 | 
			
		||||
    {0x71, 0xF3, 0x6B},
 | 
			
		||||
    {0x71, 0xF5, 4},
 | 
			
		||||
    {0x71, 0xF3, 0xF4},
 | 
			
		||||
    {0x6C, 2, 1},
 | 
			
		||||
    {0x6C, 2, 0xF2},
 | 
			
		||||
    {0x6E, 0x7B, 1},
 | 
			
		||||
    {0x6E, 0x7B, 0xF6}
 | 
			
		||||
  };
 | 
			
		||||
  // for preview :
 | 
			
		||||
  byte ink0;
 | 
			
		||||
  byte ink1[256];
 | 
			
		||||
@ -3241,45 +3277,7 @@ void Load_CM5(T_IO_Context* context)
 | 
			
		||||
    memset(context->Palette,0,sizeof(T_Palette));
 | 
			
		||||
 | 
			
		||||
  // Setup the palette (amstrad hardware palette)
 | 
			
		||||
  context->Palette[0x40].R = 0x6E; context->Palette[0x40].G = 0x7D; context->Palette[0x40].B = 0x6B;
 | 
			
		||||
 | 
			
		||||
  context->Palette[0x41].R = 0x6E; context->Palette[0x41].G = 0x7B; context->Palette[0x41].B = 0x6B;
 | 
			
		||||
 | 
			
		||||
  context->Palette[0x42].R = 0; context->Palette[0x42].G = 0xF3; context->Palette[0x42].B = 0x6B;
 | 
			
		||||
  context->Palette[0x43].R = 0xF3; context->Palette[0x43].G = 0xF3; context->Palette[0x43].B = 0x6D;
 | 
			
		||||
  context->Palette[0x44].R = 0; context->Palette[0x44].G = 2; context->Palette[0x44].B = 0x6B;
 | 
			
		||||
  context->Palette[0x45].R = 0xF0; context->Palette[0x45].G = 2; context->Palette[0x45].B = 0x68;
 | 
			
		||||
  context->Palette[0x46].R = 0; context->Palette[0x46].G = 0x78; context->Palette[0x46].B = 0x68;
 | 
			
		||||
  context->Palette[0x47].R = 0xF3; context->Palette[0x47].G = 0x7D; context->Palette[0x47].B = 0x6B;
 | 
			
		||||
 | 
			
		||||
  context->Palette[0x48].R = 0xF3; context->Palette[0x48].G = 0x02; context->Palette[0x48].B = 0x68;
 | 
			
		||||
  context->Palette[0x49].R = 0xF3; context->Palette[0x49].G = 0xF3; context->Palette[0x49].B = 0x6B;
 | 
			
		||||
 | 
			
		||||
  context->Palette[0x4A].R = 0xF3; context->Palette[0x4A].G = 0xF3; context->Palette[0x4A].B = 0xD;
 | 
			
		||||
  context->Palette[0x4B].R = 255; context->Palette[0x4B].G = 0xF3; context->Palette[0x4B].B = 0xF9;
 | 
			
		||||
  context->Palette[0x4C].R = 0xF3; context->Palette[0x4C].G = 5; context->Palette[0x4C].B = 6;
 | 
			
		||||
  context->Palette[0x4D].R = 0xF3; context->Palette[0x4D].G = 2; context->Palette[0x4D].B = 0xF4;
 | 
			
		||||
  context->Palette[0x4E].R = 0xF3; context->Palette[0x4E].G = 0x7D; context->Palette[0x4E].B = 0xD;
 | 
			
		||||
  context->Palette[0x4F].R = 0xFA; context->Palette[0x4F].G = 0x80; context->Palette[0x4F].B = 0xF9;
 | 
			
		||||
 | 
			
		||||
  context->Palette[0x50].R = 0x00; context->Palette[0x50].G = 0x02; context->Palette[0x50].B = 0x68;
 | 
			
		||||
  context->Palette[0x51].R = 0x02; context->Palette[0x51].G = 0xF3; context->Palette[0x51].B = 0x6B;
 | 
			
		||||
 | 
			
		||||
  context->Palette[0x52].R = 2; context->Palette[0x52].G = 0xF0; context->Palette[0x52].B = 1;
 | 
			
		||||
  context->Palette[0x53].R = 0xF; context->Palette[0x53].G = 0xF3; context->Palette[0x53].B = 0xF2;
 | 
			
		||||
  context->Palette[0x54].R = 0; context->Palette[0x54].G = 2; context->Palette[0x54].B = 1;
 | 
			
		||||
  context->Palette[0x55].R = 0x0C; context->Palette[0x55].G = 2; context->Palette[0x55].B = 0xF4;
 | 
			
		||||
  context->Palette[0x56].R = 2; context->Palette[0x56].G = 0x78; context->Palette[0x56].B = 1;
 | 
			
		||||
  context->Palette[0x57].R = 0xC; context->Palette[0x57].G = 0x7B; context->Palette[0x57].B = 0xF4;
 | 
			
		||||
  context->Palette[0x58].R = 0x69; context->Palette[0x58].G = 2; context->Palette[0x58].B = 0x68;
 | 
			
		||||
  context->Palette[0x59].R = 0x71; context->Palette[0x59].G = 0xF3; context->Palette[0x59].B = 0x6B;
 | 
			
		||||
  context->Palette[0x5A].R = 0x71; context->Palette[0x5A].G = 0xF5; context->Palette[0x5A].B = 4;
 | 
			
		||||
  context->Palette[0x5B].R = 0x71; context->Palette[0x5B].G = 0xF3; context->Palette[0x5B].B = 0xF4;
 | 
			
		||||
  context->Palette[0x5C].R = 0x6C; context->Palette[0x5C].G = 2; context->Palette[0x5C].B = 1;
 | 
			
		||||
  context->Palette[0x5D].R = 0x6C; context->Palette[0x5D].G = 2; context->Palette[0x5D].B = 0xF2;
 | 
			
		||||
  context->Palette[0x5E].R = 0x6E; context->Palette[0x5E].G = 0x7B; context->Palette[0x5E].B = 1;
 | 
			
		||||
  context->Palette[0x5F].R = 0x6E; context->Palette[0x5F].G = 0x7B; context->Palette[0x5F].B = 0xF6;
 | 
			
		||||
 | 
			
		||||
  memcpy(context->Palette + 0x40, CPC_Hw_Palette, sizeof(CPC_Hw_Palette));
 | 
			
		||||
 | 
			
		||||
  if (!Read_byte(file, &ink0))
 | 
			
		||||
    File_error = 2;
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user