Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dowty SBD skeleton #6

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from
Draft

Dowty SBD skeleton #6

wants to merge 4 commits into from

Conversation

AaronJackson
Copy link
Owner

The Dowty SBD card is a video output controller for the PDP-11 and VAX. Commands can be sent in ASCII or binary over serial, or through DMA transfer. The DMA interface is very simple, using three 8 bit registers to set the location of a command block in RAM. When the Ready bit is set to 1, the SBD begins execution. I'm not currently sure how it knows when it has reached the last command.

@AaronJackson
Copy link
Owner Author

Nice, it compiles... I will test tomorrow.

This comes after quite a few hours spent in ODT trying to get the machine to draw a string...

1000/26    ; 22 bytes total
1002/14    ; 0 FCPIX
1004/6     ; 0 FCRUB
1006/2035  ; 2  FCALP
1010/300   ; x coord
1012/300   ; y coord
1014/6     ; 6 characters
1016/62510 ; eh
1020/66154 ; ll
1022/20557 ; !o
1024/177777 ; -1

C strings are packed in byte-addressing order, so the least significant bits will become the first character - meaning we don't need to worry about swapping characters around. An odd number of characters can be terminated with a 0 - this should not be included in the character count.

Instructing the SBD to execute the command block at 1000(8) via DMA:

17760046/0
17760044/2
17760042/0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant