Fix loading palettes to all new & 256 colour old sprites
A check (marked DF-300) rejected any attempt to load a palette into a new (ie. RISC OS 3.50+) style sprite. This is bogus because bbc_modevar() is perfectly happy to process a sprite mode word and return Log2bpp, which is all that was required. Confirmed on RISC OS 3.50 with SYS"OS_ReadModeVariable",&202D0169,9 TO,,log2bpp which give 3 for a 256 colour 180dpi sprite. Ref: https://www.riscosopen.org//forum/forums/4/topics/14966
Second, a logic error introduced in Paint-2_26 meant that loading from a file any 256 entry palette (old or new sprite) would result in the palette being reset to the kernel default. This is because there are 2 callers of menus_set_palette() with non-NULL palette pointers, but only 1 wants a default palette. Signal this case by passing -256 entries.