g – a multitasking OS for Ultimem/VICMIDI (WIP)

Basic and Machine Language

Moderator: Moderators

User avatar
Mike
Herr VC
Posts: 2993
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: g – a multitasking OS for Ultimem/VICMIDI (WIP)

Postby Mike » Fri Apr 08, 2016 1:16 pm

pixel wrote:O.K. But please take a look at this new set: [...]

Indeed. Shortly after I made my last post, I nocited in the Guru-Meditation you updated the 't' anyhow (and it's also now there in the *.asm file).

One suggestion regarding the frame characters: they allow for all 4 combination of single or double width frames with that single/double characteristic independently for the vertical and horizontal lines. It should be possible to have the double lines separated as in the original - no need to insist that they 'concentrate' in the middle third of each char:

Code: Select all

.... .... .*.. *.*.
.... .... .*.. *.*.
.... **** .*.. *.*.
**** .... .*.. *.*.
.... **** .*.. *.*.
.... .... .*.. *.*.
.... .... .*.. *.*.
.... .... .*.. *.*.

....|....|.... ....|....|.... ....|....|.... ....|....|....
....|....|.... ....|....|.... ....|....|.... ....|....|....
....|....|.... .***|****|**.. ....|....|.... ****|****|***.
.***|****|**.. .*..|....|.*.. ****|****|***. *...|....|..*.
.*..|.*..|.*.. .***|****|**.. *.*.|*.*.|*.*. *.**|*.**|*.*.
.*..|.*..|.*.. .*..|.*..|.*.. *.*.|*.*.|*.*. *.*.|*.*.|*.*.
.*..|.*..|.*.. .*..|.*..|.*.. *.*.|*.*.|*.*. *.*.|*.*.|*.*.
.*..|.*..|.*.. .*..|.*..|.*.. *.*.|*.*.|*.*. *.*.|*.*.|*.*.
----+----+---- ----+----+---- ----+----+---- ----+----+----
.*..|.*..|.*.. .*..|.*..|.*.. *.*.|*.*.|*.*. *.*.|*.*.|*.*.
.*..|.*..|.*.. .*..|.*..|.*.. *.*.|*.*.|*.*. *.*.|*.*.|*.*.
.*..|.*..|.*.. .***|****|**.. *.*.|*.*.|*.*. *.**|*.**|*.*.
.***|****|**.. .*..|.*..|.*.. *.**|****|*.*. *...|....|..*.
.*..|.*..|.*.. .***|****|**.. *.*.|*.*.|*.*. *.**|*.**|*.*.
.*..|.*..|.*.. .*..|.*..|.*.. *.*.|*.*.|*.*. *.*.|*.*.|*.*.
.*..|.*..|.*.. .*..|.*..|.*.. *.*.|*.*.|*.*. *.*.|*.*.|*.*.
.*..|.*..|.*.. .*..|.*..|.*.. *.*.|*.*.|*.*. *.*.|*.*.|*.*.
----+----+---- ----+----+---- ----+----+---- ----+----+----
.*..|.*..|.*.. .*..|.*..|.*.. *.*.|*.*.|*.*. *.*.|*.*.|*.*.
.*..|.*..|.*.. .*..|.*..|.*.. *.*.|*.*.|*.*. *.*.|*.*.|*.*.
.*..|.*..|.*.. .***|****|**.. *.*.|*.*.|*.*. *.**|*.**|*.*.
.***|****|**.. .*..|....|.*.. ****|****|***. *...|....|..*.
....|....|.... .***|****|**.. ....|....|.... ****|****|***.
....|....|.... ....|....|.... ....|....|.... ....|....|....
....|....|.... ....|....|.... ....|....|.... ....|....|....
....|....|.... ....|....|.... ....|....|.... ....|....|....

What do you think?

(IMO, it's once again a matter of aesthetics, whether the single line shall cross the double line in the middle characters, like I also did, or be overlaid by the double line. For some reason I just found examples on the 'net, where the outer frame chars end the single line at the 'inner' side, whereas the middle chars let the single lines cross. ...)

brain
Vic 20 Afficionado
Posts: 425
Joined: Sun Jul 04, 2004 10:12 pm

Re: g – a multitasking OS for Ultimem/VICMIDI (WIP)

Postby brain » Fri Apr 08, 2016 8:31 pm

So, how do I load and run this on a real unit?

Jim

User avatar
Mike
Herr VC
Posts: 2993
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: g – a multitasking OS for Ultimem/VICMIDI (WIP)

Postby Mike » Sun Apr 10, 2016 4:48 am

g now urgently needs a boot loader I guess.

brain
Vic 20 Afficionado
Posts: 425
Joined: Sun Jul 04, 2004 10:12 pm

Re: g – a multitasking OS for Ultimem/VICMIDI (WIP)

Postby brain » Sun Apr 10, 2016 9:49 am

Well when it is the right time, I would like to test on a real unit. Vice is a nice Dev tool but we have seen difference during patching it to support the unit

User avatar
pixel
Vic 20 Nerd
Posts: 868
Joined: Fri Feb 28, 2014 3:56 am
Website: http://hugbox.org/pixel/
Location: various
Occupation: Pan–galactic shaman

Re: g – a multitasking OS for Ultimem/VICMIDI (WIP)

Postby pixel » Sun Apr 10, 2016 2:36 pm

Mike wrote:What do you think?

Pretty neat idea! Will do.
A man without talent or ambition is most easily pleased. Others set his path and he is content.
https://github.com/SvenMichaelKlose

User avatar
pixel
Vic 20 Nerd
Posts: 868
Joined: Fri Feb 28, 2014 3:56 am
Website: http://hugbox.org/pixel/
Location: various
Occupation: Pan–galactic shaman

Re: g – a multitasking OS for Ultimem/VICMIDI (WIP)

Postby pixel » Sun Apr 10, 2016 2:43 pm

Mike wrote:g now urgently needs a boot loader I guess.

At the moment I'm just generating an 8MB image for quick hacks in VICE.I suggest I'll come up with a regular app to boot it from disk instead of flash as soon as the file systen and CBM driver is up. Unless you want to hack some low–level stuff g ain't much fun yet.

If you want to pick a programmer to hire, let them do a keyboard scanner… :lol:
A man without talent or ambition is most easily pleased. Others set his path and he is content.
https://github.com/SvenMichaelKlose

User avatar
pixel
Vic 20 Nerd
Posts: 868
Joined: Fri Feb 28, 2014 3:56 am
Website: http://hugbox.org/pixel/
Location: various
Occupation: Pan–galactic shaman

Re: g – a multitasking OS for Ultimem/VICMIDI (WIP)

Postby pixel » Mon Apr 11, 2016 10:51 am

brain wrote:So, how do I load and run this on a real unit?

I've switched to a BASIC loader, so no image is required anymore. http://hugbox.org/pixel/external/denial/g.zip.
Just start "g"; it will boot the kernal "core" and that in turn will start "sh".
A man without talent or ambition is most easily pleased. Others set his path and he is content.
https://github.com/SvenMichaelKlose

User avatar
pixel
Vic 20 Nerd
Posts: 868
Joined: Fri Feb 28, 2014 3:56 am
Website: http://hugbox.org/pixel/
Location: various
Occupation: Pan–galactic shaman

Re: g – a multitasking OS for Ultimem/VICMIDI (WIP)

Postby pixel » Mon Apr 11, 2016 9:08 pm

Image
Writing a keyboard scanner really wasn't for me. Lots of time "wasted". So, after only just a couple of hours, I threw it away and didn't expect this to work:

Code: Select all

wait_key:
    lda $c6         ; Key in buffer?
    beq wait_key
    lda #0          ; Reset buffer.
    sta $c6
    ldx $c5         ; Get scan code.
    cpx #$40        ; No key pressed?
    beq wait_key
    lda $28d        ; Get CTRL/SHIFT/C= status.
    and #1          ; Shift?
    beq +n
    lda devkbd_map_shifted,x
    rts
n:  lda devkbd_map_normal,x
    rts

Oh, no! Evil day star and screaming dinosaurs! …
A man without talent or ambition is most easily pleased. Others set his path and he is content.
https://github.com/SvenMichaelKlose

brain
Vic 20 Afficionado
Posts: 425
Joined: Sun Jul 04, 2004 10:12 pm

Re: g – a multitasking OS for Ultimem/VICMIDI (WIP)

Postby brain » Mon Apr 11, 2016 11:02 pm

Hmmm, both VIC-MIDI and ULTIMEM show:

booting g...
checking memory...ultimem 1024k ram (or 128k RAM)
<top right circle><pi><top left corner>
<bottom left circle><top left corner><top left corner triangle><underscore>

and nothing.

Jim

User avatar
pixel
Vic 20 Nerd
Posts: 868
Joined: Fri Feb 28, 2014 3:56 am
Website: http://hugbox.org/pixel/
Location: various
Occupation: Pan–galactic shaman

Re: g – a multitasking OS for Ultimem/VICMIDI (WIP)

Postby pixel » Tue Apr 12, 2016 8:34 am

brain wrote:and nothing.

Owdge. The screen should go black and a simple green dollar shell prompt should show up.

Did you have the files CORE and SH in the same directory as G?
A man without talent or ambition is most easily pleased. Others set his path and he is content.
https://github.com/SvenMichaelKlose

brain
Vic 20 Afficionado
Posts: 425
Joined: Sun Jul 04, 2004 10:12 pm

Re: g – a multitasking OS for Ultimem/VICMIDI (WIP)

Postby brain » Tue Apr 12, 2016 10:19 am

pixel wrote:
brain wrote:and nothing.

Owdge. The screen should go black and a simple green dollar shell prompt should show up.

Did you have the files CORE and SH in the same directory as G?


Yes, I created a g dir on uIEC/SD and put all the files from the ZIP into the dir.

My device is #10, does that cause an issue?

Jim

User avatar
pixel
Vic 20 Nerd
Posts: 868
Joined: Fri Feb 28, 2014 3:56 am
Website: http://hugbox.org/pixel/
Location: various
Occupation: Pan–galactic shaman

Re: g – a multitasking OS for Ultimem/VICMIDI (WIP)

Postby pixel » Tue Apr 12, 2016 11:29 am

brain wrote:My device is #10, does that cause an issue?

Oh, yes, that should be it. Am just getting used to the KERNAL and set it to 8 by default – thanks for the hint.
A man without talent or ambition is most easily pleased. Others set his path and he is content.
https://github.com/SvenMichaelKlose

User avatar
pixel
Vic 20 Nerd
Posts: 868
Joined: Fri Feb 28, 2014 3:56 am
Website: http://hugbox.org/pixel/
Location: various
Occupation: Pan–galactic shaman

Re: g – a multitasking OS for Ultimem/VICMIDI (WIP)

Postby pixel » Thu Apr 14, 2016 11:29 pm

For those who just want to see what happens, here is a video:

Now the KERNAL's device number at $BA is used. I hope that helps.

If you want to play around with your own charset just replace file CHARSET. It starts with two bytes containing its size, tho.

The VicMIDI expansion is pretty much out of the game with 56K left when running the "shell" (which only understand "echo" and "exit" at this time). Each process occupies at least 16K, applications compiled with cc65 always use up 32K – well, that could be fixed by tweaking vic20g.cfg, of course.

I guess it's a good idea to port g to as65, so that'll happen as well if something reasonable came out of this project.

Thought I'd have absolutely no time to work on this really but my new job is to hack on Windoze. :lol:
A man without talent or ambition is most easily pleased. Others set his path and he is content.
https://github.com/SvenMichaelKlose

User avatar
pixel
Vic 20 Nerd
Posts: 868
Joined: Fri Feb 28, 2014 3:56 am
Website: http://hugbox.org/pixel/
Location: various
Occupation: Pan–galactic shaman

Re: g – a multitasking OS for Ultimem/VICMIDI (WIP)

Postby pixel » Mon Apr 18, 2016 11:26 pm

Image
New shell command 'ls' and the rise of a CBM file system driver. 6.2K kernel. :)
A man without talent or ambition is most easily pleased. Others set his path and he is content.
https://github.com/SvenMichaelKlose

brain
Vic 20 Afficionado
Posts: 425
Joined: Sun Jul 04, 2004 10:12 pm

Re: g – a multitasking OS for Ultimem/VICMIDI (WIP)

Postby brain » Mon Apr 18, 2016 11:46 pm

Well, it loads now, but the 40 col text mode shows black text on a black background , with a green cursor.

?

Jim


Return to “Programming”

Who is online

Users browsing this forum: No registered users and 2 guests