Modifying boot loader

If you've ever used machine code you'd know what I'm talking about.
The memory addresses are automatic or predetermined by the compiler/ boot loader.

Ex. The boot loader is from 0x0000 to whatever 2-4k in hex I'll use a easy number like 0x00AA. The sketch would likely start at 0x00AB , main loop at 0x00BB, subroutines 0x00CC all these numbers random and some would change based on length of code used.

Concept is to reserve part of the memory for a my code. If I determine that I only need 1k of memory, I'd like to shift the sketch memory down 1k. This in turn would reduce my available sketch size by 1K.

Exactly the same concept as when people don't use a boot loader, with 4K boot loader you have28K for sketch. Without you could use 32K for sketch. What I want to do is 4k boot loader 1K ISR, 27K sketch space.

If you don't know what I'm talking about then you don't know much about programming. I'm no expert but I know the basics.

that said I do realize the easiest methods is probably in using a library and will do that as starting point.