I want to run an Attiny at 1Mhz and it seems that the current version of SoftwareSerial only supports 8Mhz
With som math you might be able to derive the table of speeds for 1Mhz.
static const DELAY_TABLE table[] PROGMEM =
{
// baud rxcenter rxintra rxstop tx
{ 115200, 1, 5, 5, 3, },
{ 57600, 1, 15, 15, 13, },
{ 38400, 2, 25, 26, 23, },
{ 31250, 7, 32, 33, 29, },
{ 28800, 11, 35, 35, 32, },
{ 19200, 20, 55, 55, 52, },
{ 14400, 30, 75, 75, 72, },
{ 9600, 50, 114, 114, 112, },
{ 4800, 110, 233, 233, 230, },
{ 2400, 229, 472, 472, 469, },
{ 1200, 467, 948, 948, 945, },
{ 300, 1895, 3805, 3805, 3802, },
};
for a 1Mhz clock I would start with a table like this, I expect speeds above 19200 to be very errorprone
static const DELAY_TABLE table[] PROGMEM =
{
// baud rxcenter rxintra rxstop tx
{ 115200, 0, 0, 0, 0, },
{ 57600, 0, 2, 2, 2, },
{ 38400, 0, 3, 3, 3, },
{ 31250, 1, 4, 4, 4, },
{ 28800, 1, 4, 4, 4, },
{ 19200, 2, 7, 7, 6, },
{ 14400, 4, 10, 9, 9, },
{ 9600, 6, 14, 14, 14, },
{ 4800, 14, 28, 27, 27, },
{ 2400, 28, 56, 56, 56, },
{ 1200, 56, 118, 118, 118, },
{ 300, 224, 475, 475, 475, },
};
You can derive a formula as in - SoftwareSerial magic numbers - Libraries - Arduino Forum -
this might take some time, but a formula uses less RAM and allows you to tune the baud rate e.g. 9650 baud to match the 9600 baud of a PC/sensor.