public ArrayList<byte[][]> dS(int sX, int sY, int width, double startAmp, double ratio, boolean recording, boolean positiveOnly)
	{
		ArrayList<byte[][]> temp = new ArrayList<byte[][]>();
		int origWidth = width;
		this.positiveOnly = positiveOnly;
		while (true)
		{
			for (int r = sX; r <= t.length - 2; r += width)
			{
				for (int c = sY; c <= t[0].length - 2; c += width)
				{
					diamond(r, c, width, startAmp);
					if (recording)
					{
						byte[][] record = new byte[origWidth][origWidth];
						for (int nr = 0; nr < origWidth; nr++)
							for (int nc = 0; nc < origWidth; nc++)
								record[nr][nc] = (byte)t[nr][nc];
						temp.add(record);
					}
				}
			}
			if (width > 1)
			{
				width /= 2;
				startAmp *= ratio;
			}
			else
				break;
		}
		return temp;
	}