David Lawrence, who wrote The Working 64, gets a credit, as co-author of Commodore 64 Machine Code Master. The purpose of this book is not to teach machine code as such, but to let the reader study machine code in a practical manner.
Like The Working 64, it's split into a large number of small modules; that makes entering the programs much easier. The section on creating new commands is well detailed - I ony wish this book had been around two years ago when I was learning the hard way!
Few books are perfect, but about the only criticism I could find with this was the slightly awkward assembler syntax for indexed instructions. Instead of taking the instruction LDA $FFFF,X which is what the disassembler gives, the slightly different LDA $FFFF.X must be used. This is because reading the program from tape or disk would give an error if a comma was in the middle of the line.
If you have learnt or are learning machine code and want to become proficient, this book is a very good way to do so. And Sunshine is now selling the tools from this book on a cassette at £14.95 to save you the effort of typing the programs in (though I feel you would probably learn more if you entered them). Conclusion? One of my favourites and, overall, excellent.