tergav17 / IshkurCPM

An open source, modular CP/M distribution for the NABU computer
GNU General Public License v3.0
23 stars 3 forks source link

Correctly modified prompt #3

Closed DJSures closed 1 year ago

DJSures commented 1 year ago

Hey great to see this. Here's a correctly modified prompt from the newer cloud cpm bios.

` // // Entry point to get a command line from the console. // CMMND1: LD SP,CCPSTACK // set stack straight. CALL CRLF // start a new line on the screen. CALL GETDSK // get current drive. ADD A,'A' CALL PRINT // print current drive. LD A,':' CALL PRINT // spacer

LD  A, 0x09
ld  hl, USERNO
sub a, (hl)
jr NC, CMMND1ISSINGLEDIGIT

LD  A, '1'
CALL    PRINT       // print user number

LD  A,(USERNO)
sub a, 10
ADD A,'0'
jr CMMND1PRINTDONE

CMMND1ISSINGLEDIGIT: LD A,(USERNO) ADD A,'0'

CMMND1PRINTDONE: CALL PRINT // print user number LD A,'>' CALL PRINT // and add prompt. CALL GETINP // get line from user. `

GryBsh commented 1 year ago

But this code here is well written, uses better protocols, and checks for errors: wouldn't taking in code from Cloud CP/M be a regression?

tergav17 commented 1 year ago

Hey DJ, thanks for dropping by! I must admit, I am a little confused by your comment. If you are indicting that I somehow "stole" your idea for printing the user number at the command prompt, you should know that the modification has been around for decades and is fairly well known. Many other CP/M implementations have included it long before yours did.

If you would like, I can change the ":" character so it no longer bears the visual similarities to your project.

DJSures commented 1 year ago

But this code here is well written, uses better protocols, and checks for errors: wouldn't taking in code from Cloud CP/M be a regression?

Ideally, you would like to display both numbers in the user area, not letters and symbols past user area 9. For example, if someone is in user area 10, you'd want to display 10 and not a : symbol. My example I provided will do just that, by displaying a 1 in front of a 0 to make 10, etc...

DJSures commented 1 year ago

Hey DJ, thanks for dropping by! I must admit, I am a little confused by your comment. If you are indicting that I somehow "stole" your idea for printing the user number at the command prompt, you should know that the modification has been around for decades and is fairly well known. Many other CP/M implementations have included it long before yours did.

If you would like, I can change the ":" character so it no longer bears the visual similarities to your project.

oh god no - I think it's great to see another cpm for the nabu. And of course, by the recent events, being original work! Continue with what you're doing because it's great. With the number of features you're adding and modularity, it's a great candidate to replace cloud cpm. I'd much rather work on the cloud GUI CCP replacement because I find that to be really interesting. Would your cpm allow replacement ccp's?

tergav17 commented 1 year ago

Great to hear, and thanks for pointing out the bug! Things have been moving fast, so there has been less bug testing than I would optimally like.

As for custom CCP replacements, they should be fully compatible as long as they fit withing the 2K address space and the config.asm inbuff length vector is changed accordingly.

DJSures commented 1 year ago

I hear you - build fast and break things, but fix them even faster. There have been almost 70 releases of cloud cpm bios in the last two months, so I get it. Plus, with this old tech, you'll find strange incompatibilities with stuff. If you saw my video, I had a heck of a time with the adm3a emulation.

What I'm doing with the ccp is a bit different - because it'll use as much ram as the machine has. The TPA is allowed to use ram from 0xff to bdos. So the ccp will reload once the TPA exits.

tergav17 commented 1 year ago

Prompt has been reworked to display decimal 0..15, which should resolve the issue. Thanks!