Philips NMS 8280 software

By dely

Supporter (2)

dely's picture

10-06-2018, 18:16

Hi,

Recently I've acquired a Philips NMS 8280 machine and I'm looking for software that could use additional video input capabilities of this computer. Any existing?

Thanks!

Login or register to post comments

By RetroTechie

Paragon (1460)

RetroTechie's picture

10-06-2018, 21:47

Welcome here, dely! Smile2

You can easily do this using the built-in BASIC! Basically Wink you set some VDP registers (or other bits the hardware uses to select between inputs etc), flip a bit in the VDP that tells it to grab a frame, and -optionally- save that to disk. BASIC commands for this purpose are MSX-BASIC standard (any MSX with superimpose / digitize capability should use the same commands to do that job), see a good book on that.

It's most easy to do this with a video source connected that produces video continuously. Say a VCR, DVD / media player or similar. As for how to connect those, what input on the machine to use etc: probably the NMS 8280 user manual has more on that.

An afternoon loooonnng ago I whipped up a couple of BASIC programmes for exactly this purpose. I've translated the comments in them. Forgot what each does exactly, but they should be mostly self-explanatory:

10 ' digitize on Philips NMS 8280
20 ' settings:
30 ' monitor connected to SCART
40 ' VCR (running!) on video-in (RCA)
50 ' source select set to AV in (button off)
60 ' video mix to taste, adjust using digitize level
70 DEFINT A-Z:F=1
80 SCREEN 8: COLOR ,0,0: CLS
90 LINE (50,50)-(200,150),255,B,XOR
100 SET VIDEO 1 '0/1:computer, 2:superimp., 3=video (1-3 extern.sync)
110 SET VIDEO ,0 'intensity: 0=full, 1=half
120 SET VIDEO ,,1 'color bus: 0=output, 1=input
130 SET VIDEO ,,,1 'sync: 0 internal, 1 external
140 SET VIDEO ,,,,2 'audio mix: 0 computer, 1 comp+R, 2 comp+L, 3 comp+L+R
150 SET VIDEO ,,,,,1 'external video from: 0: RGB, 1: TV
160 SET VIDEO ,,,,,,1 'video out (RGB): 0:off, 1:on
170 VDP(7)=&B11111111 'color code-mask (binary gggrrrbb)
180 'VDP(0)=VDP(0) OR 64 ' set DG-bit (start to digitize)
190 X$=INPUT$(1)
195 COPY SCREEN
196 TIME=0
197 IF TIME<1 THEN GOTO 197
200 'VDP(0)=VDP(0) AND 191 ' digitize off
210 SET VIDEO 0,0,0,0,0,0,0
230 IF X$="s" OR X$="S" THEN BSAVE "test"+HEX$(F)+".pic",0,54271!,S:F=F+1
235 IF X$<>CHR$(27) THEN GOTO 100
240 SCREEN 0: COLOR 15,4

Similar:

10 ' digitize on Philips NMS 8280
20 ' settings:
30 ' monitor connected to SCART
40 ' VCR (running!) to video-in (RCA)
50 ' source select set to AV in (button off)
60 ' video mix to taste, adjust using digitize level
70 DEFINT A-Z
80 SCREEN 8: COLOR ,0,0: CLS
90 LINE (50,50)-(200,150),255,B,XOR
100 SET VIDEO 1 '0/1:computer, 2:superimp., 3=video (1-3 extern.sync)
110 SET VIDEO ,0 'intensity: 0=full, 1=half
120 SET VIDEO ,,1 'color bus: 0=output, 1=input
130 SET VIDEO ,,,1 'sync: 0 internal, 1 external
140 SET VIDEO ,,,,2 'audio mix: 0 computer, 1 comp+R, 2 comp+L, 3 comp+L+R
150 SET VIDEO ,,,,,1 'external video from: 0: RGB, 1: TV
160 SET VIDEO ,,,,,,1 'video out (RGB): 0:off, 1:on
170 VDP(7)=&B11111111 'color code-mask (binary gggrrrbb)
180 VDP(0)=VDP(0) OR 64 ' set DG-bit (start to digitize)
190 X$=INPUT$(1)
200 FORT=1 TO 19: NEXT:VDP(0)=VDP(0) AND 191 ' digitize off
210 SET VIDEO 0,0,0,0,0,0,0
220 X$=INPUT$(1)
230 IF X$="s" OR X$="S" THEN BSAVE "test.pic",0,54271!,S
240 SCREEN 0: COLOR 15,4

Probably the most fun / interesting / useful:

10 '
20 ' Digitize a series of images on the Philips NMS 8280
30 ' by Alwin Henseler
40 '
50 ' Controls:
60 '   random key / fire button: 'freeze' frame
70 '   then: key / fire button: next try
80 '         RETURN: save image to disk (filename in line 570)
90 '   continuous: ESC = stop
100 '
110 NR=1 'start-number of images to save
120 SCREEN 8: COLOR ,,0
130 SET VIDEO 1,0,1,1,3,0,0
140 '         | | | | | | + 0: no A/V output via RGB-connector
150 '         | | | | | |   1: A/V output via RGB-connector
160 '         | | | | | +-- 0: video input via RGB-connector
170 '         | | | | |     1: video input via TV-connector
180 '         | | | | +---- 0: computer sound
190 '         | | | |       1: mix computer sound with right channel
200 '         | | | |       2: mix computer sound with left channel
210 '         | | | |       3: mix computer sound with L+R channels
220 '         | | | +------ 0: internal synchronisation
230 '         | | |         1: external synchronisation
240 '         | | +-------- 0: colour bus output
250 '         | |           1: colour bus input
260 '         | +---------- 0: full brightness
270 '         |             1: half brightness
280 '         +------------ 0: computer image (internal sync.)
290 '                       1: computer image (external sync.)
300 '                       2: computer image over video image (superimpose)
310 '                       3: video image
320 GOSUB 390 'grab image
330 IF I$=CHR$(27) THEN GOTO 620 'stop
340 IF I$=CHR$(13) THEN GOSUB 560 'save image
350 GOTO 320
360 '
370 ' Grab image:
380 '
390 VDP(0)=VDP(0) OR 64 'set DG-bit VDP to on
400 TIME=0
410 IF TIME<1 THEN GOTO 410 'wait for VDP-interrupt
420 GOSUB 520 'wait for key press
430 VDP(0)=VDP(0) AND 191 'set DG-bitje back to off
440 TIME=0
450 IF TIME<1 THEN GOTO 450
460 IF I$=CHR$(27) THEN RETURN
470 GOSUB 520 'wait for key press
480 RETURN
490 '
500 ' wait for a key to be pressed:
510 '
520 I$=INKEY$: IF I$<>"" OR STRIG(1) OR STRIG(2) THEN RETURN ELSE GOTO 520
530 '
540 ' Save image:
550 '
560 NR$=RIGHT$(STR$(NR),LEN(STR$(NR))-1)
570 BSAVE "DIGI"+NR$+".SC8",0,54271!,S
580 NR=NR+1: RETURN
590 '
600 ' Stop:
610 '
620 SET VIDEO 0,0,0,0,0,0,0
630 END

This should get you started.. good luck!

By RetroTechie

Paragon (1460)

RetroTechie's picture

10-06-2018, 21:53

Oh and before you start typing: just copy & paste a program above into a plain text editor, make sure you set it to use DOS/Windows style line endings, save, and your MSX will be able to load that right in. Unless typing is easier than copy & paste + transfer files... LOL!

By Manuel

Ascended (14671)

Manuel's picture

10-06-2018, 22:16

The official software that came with the machine was Videographics. You can probably find it somewhere.

By HansO

Paladin (670)

HansO's picture

11-06-2018, 08:15

The reason I started the MSX Info pages was my interest in the NMS8280 video capabilities.

And it is still there, now celebrating its 20th birthday, all technical info and programs:

http://msx.hansotten.com/special-msx-hardware/msx-video-comp...

By dely

Supporter (2)

dely's picture

11-06-2018, 17:53

Whoa. Lots of information, thank you very much guys!

My MSX profile