Why limit yourself and have the best of all worlds when you have all the power of bitcoin-explorer command line interface at your fingertips? The following examples should clearly answer your question with really short and sweet working examples.
Nothing says a 256-bit brain wallet private key has to be the result of a single hash. Besides picking a high entropy brain wallet phrase not published anywhere, cascading different hashing functions makes it harder to crack and discover a brain wallet's private seed.
% echo -n "This is a crappy brain wallet example that supports both BIP 38 and BIP 39" | bx base16-encode | bx sha512 | bx sha256 | bx sha256
6227e1e5a65d5791af2e433f42825b00ef30311439798f9f558c6066dfbb8362
% echo -n "This is a crappy brain wallet example that supports both BIP 38 and BIP 39" | bx base16-encode | bx sha512 | bx sha256 | bx sha256 | bx ec-to-ek --version 0 "My BIP 38 Passphrase"
6PYT2EZPT1AWDiPtRU19q9GJPABowwkM7s5WReTUhpgZW5KVyXG2G5FuhK
% echo -n "This is a crappy brain wallet example that supports both BIP 38 and BIP 39" | bx base16-encode | bx sha512 | bx sha256 | bx sha256 | bx ec-to-ek --version 0 "My BIP 38 Passphrase" | bx ek-to-ec "My BIP 38 Passphrase"
6227e1e5a65d5791af2e433f42825b00ef30311439798f9f558c6066dfbb8362
% echo -n "This is a crappy brain wallet example that supports both BIP 38 and BIP 39" | bx base16-encode | bx sha512 | bx sha256 | bx sha256 | bx ec-to-ek --version 0 "My BIP 38 Passphrase" | bx ek-to-ec "My BIP 38 Passphrase" | bx mnemonic-new
giraffe disease just erosion step silver royal silent dismiss beef nothing achieve vessel blush extend connect moon wide glide school hospital tape assault eagle
Additionally, be sure your BIP 39 wallet takes advantage an additional seed phrase of your choosing, also colloquially referred to as the 25th BIP 39 seed word. This ensures if an untrusted person gets access to your seed words, you have one more layer of defense.
Finally, to round out the examples, here is how to convert a 256-bit hex encoded key into an uncompressed Wallet Input Format (WIF) encoded key.
% echo 6227e1e5a65d5791af2e433f42825b00ef30311439798f9f558c6066dfbb8362 | bx base58check-encode --version 128
5JZWqe925xSFP9qC1XLVNm35JFKBts4bnQhjEg45b7czsJTpB2v
% echo 5JZWqe925xSFP9qC1XLVNm35JFKBts4bnQhjEg45b7czsJTpB2v | bx base58check-decode
wrapper
{
checksum 1863987882
payload 6227e1e5a65d5791af2e433f42825b00ef30311439798f9f558c6066dfbb8362
version 128
}