Current algorithm is:
1) Calculate B = SHA256(A)
2) Calculate C = scrypt(B)
3) Calculate D = SHA256(B, C)
4) Return D
Not really. SHA256 is part of scrypt. The sequence looks more like this:
1) PBKDF2 using HMAC-SHA-256
2) Memory-hard mixing loop using salsa20/8
3) PBKDF2 using HMAC-SHA-256
Yes, salsa20/8 generates "password salt" for second PBKDF2 call. I mean, that new algorithm can use bcrypt() before second PBKDF2 call.

This will be VERY slow and L1 cache-dependent.
