hoo doggies...

I added a makefile option and ifdefs to remove all the code that deals with decoding the error codes from the drive and for setting different codes for different client-side errors.
It still detects errors, it just says "ERR" for any error.

It's all the way down to 653 bytes including the CO header!

Thats exactly 100 bytes off the legacy 753.

I can enable the DSR code and it's still only 667.

I might make this the default actually since it's not like those cryptic error codes ever actually helped to me anyway. I'm playing around with it and to me it's just as good this way. And since the whole point is to be tiny, I think going from 747 bytes to 647 is huge.

I also switched to generating loaders that create BA files with clear & call statements instead of doing savem, so the install is as small as possible. The user has no need to save the CO generated by the loader since they already have it in the build dir.

--
bkw

On 10/9/26 17:47, Gary Weber wrote:
A disk format routine is likely not possible, though.  I'm literally am down to a couple of free bytes in the NEC ROM at this point without getting very creative with display string shortening!

On Fri, Oct 9, 2026 at 12:27 PM Brian K. White <[email protected] <mailto:[email protected]>> wrote:

    Awesome!

    On 10/9/26 14:16, Gary Weber wrote:
> Seems like we've been potentially duplicating some effort here. Check
     > out the home page of web8201.net <http://web8201.net> <http://
    web8201.net <http://web8201.net>> and you'll see my
     > blog post regarding the latest experiment, LibRom ==> WebRom.
     > Imagine if you will, "Teeny+" becoming "Teeny++", accessible via
    the F5
     > function key instead of a menu entry, and with the addition of,
    wait for
     > it, directory navigation, and file listing, from within the
    Teeny++ shell.
     >
     > cd folder
     > cd ..
     > ls
     > l file.ba <http://file.ba> <http://file.ba <http://file.ba>>
     > s file.do
     > (etc.)
     >
     >
     >
     > On Fri, Oct 9, 2026 at 10:43 AM Brian White <[email protected]
    <mailto:[email protected]>
     > <mailto:[email protected] <mailto:[email protected]>>> wrote:
     >
     >     This is great.
     >
     >     Maybe I'll make a seperate repo for teeny instead of being
    part of
     >     dl2, and then add makefile targets to generate system roms.
     >
     >     The last few days I've been working on teeny a little more.
     >
     >     I was working on getting the 200 and nec targets to work from the
     >     same common source, but got derailed into refactoring the error
     >     messages because the 200 code is slightly different from the 100
     >     code, and that caused me to notice that the code wasn't always
     >     correct either.
     >
     >     And now this version is only 720 bytes not counting the co
    header,
     >     726 bytes total. Down from 747/753.
     >
     >     Just the version in the teeny/src dir, not anywhere else yet.
     >
     >     But for a built-in version that's using unused wasted space
    anyway,
     >     might as well have as much user friedliness as you can fit.
    It could
     >     be bigger instead of smaller.
     >
     >     LibROM has a few enhancements I think, I don't remember what
    but she
     >     named it TEENY+
     >     I think one thing was accepting normal human input instead of
     >     needing the strict padded filename?
     >
     >     One thing that would be nice and is easy to do (for me now,
    because
     >     I've been all over that the last fee days) is better error
    messages.
     >     They could be far less cryptic and directly useful without a
    printed
     >     legend handy, by just being 3 or 4 chars instead of only 2. And
     >     there could be a few more of them to be more granular.
     >
     >     Or conversely the normal ram teeny could actually be another
    20 or
     >     so bytes smaller by having just one message for any error.
    Teeny is
     >     there to move a file and be as teeny as possible after all. The
     >     existing errors are barely useful anyway.
     >
     >     And of course it would be a huge improvement to have a directory
     >     lister no matter how crude, and a format-disk command.
     >
     >     The format command should be easy because the command is
    simple, the
     >     drive does all the work, you just have to poll & wait for it
    to finish.
     >
     >     A dir list, idk, might not be too bad but there will be no genius
     >     hack that gets the whole job done in a dozen bytes I think.
     >
     >     Another possible option is to crib the main interface from
    RAMDSK.
     >     Fkeys and label line instead of cmd prompt.
     >
     >
     >     bkw
     >
     >     On Fri, Oct 9, 2026, 10:07 AM Georg Käter <georg.kaeter@gk-
     > engineering-services.de <http://engineering-services.de>
    <mailto:georg.kaeter@gk-engineering- <mailto:georg.kaeter@gk-
    engineering->
     > services.de <http://services.de>>> wrote:
     >
     >         Hi,
     >
     >         I would like to share a M10EU/INT ROM "TEENY inside" with
    you.
     >         Thanks to Brian K. White for his
     >
     >         work on a TEENY version for M10EU.
     >
     >         Look what I did on the original ROM
     >
     >             addrss  old     new     code
     >
     >
     >             6933H   8B58    D67F                            ; address
     >             routine to choose ADDRSS or SCHEDL
     >
     >             6935H   "ADDRSS" "PIMngr"                       ;
    entry in MENU
     >
     >             693EH   9258    FB7C                            ; address
     >             TEENY code
     >
     >             6940H   "SCHEDL" "TEENY"                        ;
    entry in MENU
     >
     >             ..
     >
     >             7CFBH to 00..           TEENY code (M10-EU) thanks to
    Brian
     >             K. White
     >
     >             7FD5H    ..00           relocated
     >
     >             7FD6H   000000  21EE7F  LXI,7FEEH               ; set
     >             pointer to text string
     >
     >             7FD9H   000000  CDA911  CALL 11A9H              ; print
     >             null-terminated string
     >
     >             7FDCH   000000  CDD412  CALL 12D4H              ;
    wait for
     >             key pressed
     >
     >             7FDFH   0000    F620    ORI 20H                 ; convert
     >             pressed key to lowercase
     >
     >             7FE1H   0000    FE73    CPI 73H                 ; key
     >             pressed is "s"?
     >
     >             7FE3H   000000  CA9258  JZ 5892H                ;
    jump to SCHEDL
     >
     >             7FE6H   0000    FE61    CPI 61H                 ; key
     >             pressed is "a"?
     >
     >             7FE8H   000000  CA8B58  JZ 588BH                ;
    jump to ADDRSS
     >
     >             7FEBH   000000  C3DC7F  JMP 7FDCH               ; no
    valid
     >             key, back to "wait for key pressed"
     >
     >             7FEEH to 00..   "(A)DDRSS/(S)CHEDL"             ;
    text string
     >
     >             7FFE    ..00
     >
     >         I´ve attached ROM file ready to use
     >
     >
     >         Regards
     >         Georg
     >


-- bkw



--
bkw

Reply via email to