There is a way to do this with no investment required, and nothing but an unexpanded vic with tape. There are also multiple ways to do it...most people here have EVERYTHING for the vic, and forget that some people just plain don't, nor are they willing to spend hundreds of dollars on modern interfacing add-ons, or build cables etc..
TINYMON, for example, was I believe the earliest monitor for the vic, and runs in native ram. It is aptly named...In fact it came out before ram expansions were widely adopted, and cost around 80$ extra on top of your 300$ for the computer, and 129$ for the datasette, or, originally required the typer to know someone with a PET, which would have enough memory to insert all the data statements and then poke them all into memory and save it...but someone thought of a way!
Given that today most people have at least SOME manner of ram expander...this latter step isn't normally talked about or even viable in an era where even fewer people have a PET. Even if you don't have a ram expander, you can still type it in the native vic. TINYMON gives you a full monitor, but not assembler..IE you are typing in machine language, and converting mnemonics probably using notepad's find and replace... , and fits onto the VIC screen, while only using around 750 bytes. In fact, that revision to the text came out in the compilation of compute's gazette. Here is the book, which contains the program on page 195( or page 203 of the actual PDF). Immediately following are instructions for typing it into a vic with no ram expander:
http://commodore.bombjack.org/books/com ... of_VIC.zip
The way I got it onto mine was by using a regular tape recorder, and a program called 'tap dancer' for droid phones. You put your phone in airplane mode, and then you can write files from the web in .tap/ .t64 file extensions directly to tape. Some volume control fiddling is usually required, although for me, writing TINYMON worked the first try.
This is a good starter book:
http://commodore.bombjack.org/books/com ... puters.zip
Of course once you have any monitor, you can enter core dumps of anything you like directly. In fact, you can do that with the hex to dec converter/poker in the first book of vic.
Like this one for instance, which is full of memory core dumps you can key back in very quickly...no fluff, just hex, although it provides a twin listing disassembled for easier reading:
http://commodore.bombjack.org/books/com ... nd_128.zip
and these ones which all combined, will give you a decent machine code library to cobble things together (you can just enter the hex codes in the core dump listings/in the display of the disassembly:
for example: 4096 A9 07 LDA #$07
you could just put: '4096 A9 07' xx xx xx ...and so on until you run out of line space. Several of these actually have straight up core dumps that you can enter directly into tinymons style of interface.
http://commodore.bombjack.org/books/com ... he_C64.zip
http://commodore.bombjack.org/books/com ... or_C64.zip