ℋℯℓℓℴ,
Have you always thought that developing for SymbOS is hard and you can't get any hang of it? Well, then you are now at the right place!
I'm proud to present to you SymbOS ASM-Developer kit 1.0!
This package includes all you need to know about SymbOS development in a much more user friendly package than before. It includes a 5-page long introduction that teaches you in a concrete way, how you can navigate through the official documentation, where you should look and how you can avoid the most obvious pitfalls while doing so. It also includes many SIMPLE example programs you can study and compile at home and the examples also guide you towards correct places in documentation. If you read my instructions carefully, I don't think you can get lost anymore. The official documentation is actually VERY good when you learn to navigate in it.
Naturally the very latest version of documentation is also included. Many people think that SymbOS development is only for Windows users, but even that is not true... With this developer package you can very well get going with Linux or Mac just as well and still get easy access to all parts of the OS. I've completely rewritten the application template, so you don't need to guess anymore what label means what. The templates also follow very simple up to down order with tips and all the different parts of programs are clearly separated, so their relationships should be easy to follow. The development libraries have been adapted to include standard routines automatically as you use them, so starting application development on assembler can not get much easier than this.
Still not convinced that YOU can do it? "Uh, oh, it is all so new and weird!"
Well, take a quick look at these few routines that I extracted from the examples:
Main_Routine: ld de,.TxtName ld c,9 call BDOS ; Print question ld de,.TxtBuffer ld c,10 call BDOS ; Ask for name ld de,.TxtHello ld c,9 call BDOS ; Print "Hello, " ld a,(.TxtBuffer+1) ld de,.TxtBuffer+2 ld l,a ld h,0 add hl,de ld (hl),"$" ; Mark end of string ld c,9 call BDOS ; Print name ld de,.TxtRet ld c,9 jp BDOS ; Print CR,LF ;-------------------------------- .TxtName: db "What is your name? $" .TxtHello: db 10,13,"Hello, $" .TxtRet: db 10,13,"$" .TxtBuffer: db 255,0 ; Must have length of 258 bytes ds 256
Main_Routine: ld hl,.TxtName ; Print "What is your name" call .Print call QINLIN ; Ask string input with "? " inc hl push hl ld hl,.TxtHello call .Print ; Print "Hello, " pop hl call .Print ; Print name ld hl,.TxtRet ; Print CR,LF .Print ld a,(hl) and a ret z inc hl push hl call CHPUT pop hl jr .Print ;-------------------------------- .TxtName: db "What is your name",0 .TxtHello: db 10,13,"Hello, ",0 .TxtRet: db 10,13,0
Does even one of them look familiar? If yes, then you KNOW that you can at least compile SOMETHING for SymbOS as well... Ok, they do need the rest of the template around them to work and I do not recommend either of these programming styles to be used to make applications for SymbOS, but I know it sure is nice to have something familiar to start digging into.
Please have a look inside and tell what you think.