So you are using onchip memory and you are storing the NIOS code in the onchip memory without using any external memory.
Unless something has changed in Quartus in recent versions; if you've specified the SoPC builder folder as a user library and you've compiled your software project, Quartus should automatically pick up the .hex file used to initialize the onchip RAM.
Here is what I would check:
1 - Open up the generated source code file for the onchip memory. See what it calls out as the memory initialization file.
2 - Verify that a ".hex" file exists in the same folder as the generated SoPC builder files with the same name as your onchip memory. This file would have been generated by your software build.
3 - In the Quartus compilation report under the "Analysis and Synthesis" section; look at the RAM summary and verify that your onchip memory is getting the appropriate MIF/HEX file.
Jake