On Jul 2, 2016, at 1:37 PM, Fred Cisin <ci...@xenosoft.com> wrote: > On Sat, 2 Jul 2016, Eric Christopherson wrote: >> Genius. > Clever? yes. Genius? no, or you would have to count too many of us. > >> But I would have thought CP/M would at least require a .com file to >> have a header. >> http://peetm.com/blog/?p=55 > > NO. > A .COM file is a pure image of memory, starting at location 100h. > The "header" or "zero page" or "program segment prefix" is generated on the > fly during the loading of the program. > (There is a lot more to know about it)
Fred, I tried for years to understand the difference between .COM and .EXE. One post of yours, and it’s clear. Thank you! > The first thing that I did in CP/M was to create a zero length program. it > seemed intuitively obvious as a needed capability. > Didn't everybody realize that and do it? > It never occurred to me to try to SELL it! In those days, there was almost > an assumption that price would be proportional to program length. I would urge caution in this regard. Depending on the distribution of the dots on the price/length plot, it’s not inconceivable that a least-squares fit would result in you having to PAY people to accept your program, depending on where the line crosses the “price” axis …. > For those who wanted "source code" for it: > SAVE 0 A:JMP100.COM > (SAVE was one of the five CP/M internal commands, ERA,REN,DIR,TYPE) …. uh oh. Too late. :-) - Mark