Amiga.org

Amiga computer related discussion => Amiga Hardware Issues and discussion => Topic started by: SamOS39 on January 08, 2011, 11:05:22 PM

Title: using those tiny little LCD screens as monitors...
Post by: SamOS39 on January 08, 2011, 11:05:22 PM
Hey people!
Firstly my appologies for being away from this site for so long. I feel like ive missed a lot! :(

Anyways i make music on my A1200 and i do live shows too!

When i gig i like to do everything live off the amiga and the only problems ive really ever had is finding something to use as a monitor..

ive been looking at these mini LCD screens on ebay and was wondering if anybody tried them out ..
it would be awsome to make some sort of modification to mount in onto the case.

i was looking at this one in particular:

http://cgi.ebay.co.uk/ws/eBayISAPI.dll?ViewItem&item=190487816629&ssPageName=STRK:MEWAX:IT

would this work?

cheers
Sam.
Title: Re: using those tiny little LCD screens as monitors...
Post by: tone007 on January 08, 2011, 11:25:46 PM
The one you linked should work via the 1200s composite connection.  There are slightly larger screens available with VGA connections that would give better quality picture in either Multisync/DBL modes or through a scandoubler.
Title: Re: using those tiny little LCD screens as monitors...
Post by: SamOS39 on January 08, 2011, 11:36:12 PM
yeah, my 1200 has a built in scan doubler so if theres any VGA monitors of a similar size you'd recomend then that would be good.

im going to be running OctaMED v4 and the res is fairly low on that software so as long as i can make out text on the screen etc thats fine :)
Title: Re: using those tiny little LCD screens as monitors...
Post by: freqmax on January 09, 2011, 01:10:44 AM
Cashier terminals commonly use smallsize VGA-input screens. Just a tip ;)
Title: Re: using those tiny little LCD screens as monitors...
Post by: Selles on January 09, 2011, 10:07:10 AM
Just set your Amiga 1200 at its default screen resolution of 640 X 200. Octomed will run at this resolution and look great on the color composite output. Better yet, shitcan Octomed and run Soundtracker, Noisetracker, or Protracker. They look much nicer then Octomed and are perfect for 640 X 200 res.
 
BTW, I use monitors like these on my Video Toaster 2000 setup.  They work very well as the preview and program monitors.  They are light weight and do not take up much space on my desk.
Title: Re: using those tiny little LCD screens as monitors...
Post by: motorollin on January 09, 2011, 10:33:55 AM
I've used a Sony PSOne screen with the Amiga's composite output, and also with a C64.

--
moto
Title: Re: using those tiny little LCD screens as monitors...
Post by: jj on January 09, 2011, 11:53:46 AM
love sig moto :)
Title: Re: using those tiny little LCD screens as monitors...
Post by: motorollin on January 09, 2011, 12:35:20 PM
Quote from: JJ;605022
love sig moto :)


Ta :) Hope you managed to break out of the infinite loop.

--
moto
Title: Re: using those tiny little LCD screens as monitors...
Post by: SamOS39 on January 09, 2011, 12:56:07 PM
yeah cheers!

@Selles
Soundtracker, Noisetracker and Protracker all suck though ;)

but yeah the fact that they are so small and light weight is why im interested..

@freqmax
i bought an IBM 10" cashier monitor a couple years ago but it was a nightmare to use!
even though it was connected via scandoubler it required a really wierd screen mode to work ... cant remember what screen mode it was but the amiga didnt like it!
after about an hour you start getting glitches of the screen and the screen turns black every 2-3 seconds and then comes back again.. not very fun when youve got the sampler on a loop and your trying to load the next track at a show :(

the monitor works fine on my XP desktop machine..
Title: Re: using those tiny little LCD screens as monitors...
Post by: motorollin on January 09, 2011, 01:03:09 PM
@Sam
If you're just using it for trackers, do you really need to use VGA through a scandoubler? Just seems to me like you're making life harder for yourself :) Any composite monitor should work I would have thought.

--
moto
Title: Re: using those tiny little LCD screens as monitors...
Post by: jj on January 09, 2011, 01:06:40 PM
there is a coding error in your sig though :)

you have got fro c = and then you next ct ?

I prefer just to use next without the varaible anyway as long as code nested properly not an issue and you can make mistakes like yours then :)
Title: Re: using those tiny little LCD screens as monitors...
Post by: motorollin on January 09, 2011, 01:10:44 PM
Quote from: JJ;605028
there is a coding error in your sig though :)

you have got fro c = and then you next ct ?

Oh yeah! Fixed :)

Quote from: JJ;605028
I prefer just to use next without the varaible anyway as long as code nested properly not an issue and you can make mistakes like yours then :)


Wouldn't lines 30 and 40 repeat infinitely then? I used the count variable so they would only repeat twice.

--
moto
Title: Re: using those tiny little LCD screens as monitors...
Post by: SamOS39 on January 09, 2011, 01:17:20 PM
@motorollin

its a long story. the board inside my A1200 used to be inside a EZ tower which i had to sell at the time..

i never fitted the scan doubler and i didnt want to attept to remove it .. i dont even know if it can be removed ..

besides i got it plugged into a VGA tube at the moment and the picture is crystal clear!
Title: Re: using those tiny little LCD screens as monitors...
Post by: jj on January 09, 2011, 01:17:58 PM
no what i meant is

FOR C = 1 TO 2
  code
NEXT

usually in basic you dont have to say next c
Title: Re: using those tiny little LCD screens as monitors...
Post by: motorollin on January 09, 2011, 01:22:16 PM
Quote from: SamOS39;605031
@motorollin

its a long story. the board inside my A1200 used to be inside a EZ tower which i had to sell at the time..

i never fitted the scan doubler and i didnt want to attept to remove it .. i dont even know if it can be removed ..

besides i got it plugged into a VGA tube at the moment and the picture is crystal clear!


Fair enough. It certainly would look better on VGA than composite.

--
moto
Title: Re: using those tiny little LCD screens as monitors...
Post by: motorollin on January 09, 2011, 01:24:04 PM
Quote from: JJ;605032
no what i meant is

FOR C = 1 TO 2
  code
NEXT

usually in basic you dont have to say next c


Oh right. Presumably if you had a for..next loop embedded within another for..next loop you would have to specify which variable you were incrementing. Or would the BASIC interpreter just assume the NEXT corresponded to the preceding IF?

--
moto
Title: Re: using those tiny little LCD screens as monitors...
Post by: nicholas on January 09, 2011, 01:27:59 PM
My eyes!!!! It burns it burns!!!!

BASIC is t3h evil!!!!!
Title: Re: using those tiny little LCD screens as monitors...
Post by: motorollin on January 09, 2011, 01:32:59 PM
Quote from: nicholas;605035
My eyes!!!! It burns it burns!!!!

BASIC is t3h evil!!!!!


I love the fact that it's the language, not the song, which irritates you so much :lol:

Would The Final Countdown be more tolerable in C?

Code: [Select]

while(true)
{
   itsthefinalcountdown();
   for( int i=0; i<2; i++ )
   {
      da-na-naaaa-naaa();
      da-na-na-na-naaa();
      da-na-naaaa-naaa();
      da-na-na-na-na-na-naaaaa();
   }
   na-na-naaa();
   na-na_na-na-na-na_naaaaa();
   naaa-naaaaaaaa();
}


--
moto
Title: Re: using those tiny little LCD screens as monitors...
Post by: Karlos on January 09, 2011, 01:41:35 PM
Is it even the same loop?

"FOR C = 1 TO 2" looks like it would iterate once, whereas "for (int i=0; i<2; i++)" would iterate twice.

Of course, if you were sticking to C89, you'd not be allowed to use the declaration as statement syntax for the counter in the loop, you'd have to put an "int i;" at the top of the containing block. So, I'm going to assume your loop is C99 or C++ :D
Title: Re: using those tiny little LCD screens as monitors...
Post by: motorollin on January 09, 2011, 01:48:49 PM
Quote from: Karlos;605037
Is it even the same loop?

"FOR C = 1 TO 2" looks like it would iterate once, whereas "for (int i=0; i<2; i++)" would iterate twice.


"FOR C = 1 TO 2" iterates twice - once when the value of C is 1, and again when the value is 2.

Edit - evidence attached ;)

--
moto
Title: Re: using those tiny little LCD screens as monitors...
Post by: tone007 on January 09, 2011, 02:26:15 PM
All this BASIC talk reminded me of the lame ASCII Pacman I wrote back in the 90s in QBasic.

Code: [Select]
DIM board(23, 40)
DECLARE SUB InitBoard (board())
DECLARE SUB InitDots (board())
DECLARE SUB PrintBoard (board())
DECLARE SUB MovePacman (board(), x, y, Man)
DECLARE SUB MoveGhost (board(), x, y, g, f)
DECLARE SUB SetSpeed (Clock)
DECLARE SUB FreezeGhosts (Pcount, Go, Clock)
SCREEN 13
CALL InitBoard(board())
CALL InitDots(board())
CALL PrintBoard(board())
CALL SetSpeed(Clock)
Clock = INT(Clock / 50)
Go = 1
Man = 1
x = 16: y = 20
a1 = 12: b1 = 18
a2 = 12: b2 = 19
a3 = 12: b3 = 20
a4 = 12: b4 = 21
DO
   CALL MovePacman(board(), x, y, Man)
   Count = Count + 1
   IF Go = 1 THEN
      IF Count > Clock THEN
         l = l + 1
         IF l > 5 THEN
            IF x > a1 THEN f = 2
            IF x < a1 THEN f = 1
         ELSE
            f = 1
         END IF
         CALL MoveGhost(board(), a1, b1, 1, f)
         CALL MoveGhost(board(), a2, b2, 2, f)
         CALL MoveGhost(board(), a3, b3, 3, f)
         CALL MoveGhost(board(), a4, b4, 4, f)
         Count = 0
      END IF
      IF a1 = x AND b1 = y OR a2 = x AND b2 = y OR a3 = x AND b3 = y OR a4 = x AND 4 = y THEN
         LOCATE 14, 15: PRINT &quot; GAME OVER! &quot;
         PLAY &quot;GFED&quot;
         END
      END IF
   END IF
   IF board(x, y) = 249 THEN
      score = score + 10
      board(x, y) = 0
   END IF
   IF board(x, y) = 15 THEN
      score = score + 100
      board(x, y) = 0
      Go = 0
   END IF
   IF Go = 0 THEN CALL FreezeGhosts(Pcount, Go, Clock * 25)
   LOCATE 14, 15: PRINT &quot;Score:&quot;; score
   IF score = 3230 THEN
      LOCATE 14, 15
      PLAY &quot;BCD&quot;
      PRINT &quot;Y O U  W I N&quot;
      END
   END IF
LOOP

SUB FreezeGhosts (Pcount, Go, Clock)
   Pcount = Pcount + 1
   IF Pcount = Clock THEN
      Go = 1
      Pcount = 0
   END IF
END SUB

SUB InitBoard (board())
FOR x = 1 TO 40
   board(1, x) = 219
   board(23, x) = 219
   IF x <= 23 THEN board(x, 1) = 219
   IF x <= 23 THEN board(x, 40) = 219
   IF x <= 23 THEN board(x, 2) = 219
   IF x <= 23 THEN board(x, 39) = 219
NEXT x
FOR x = 14 TO 27
   board(9, x) = 219
   board(15, x) = 219
NEXT x
FOR x = 9 TO 15
   board(x, 14) = 219
   board(x, 27) = 219
NEXT x
FOR x = 4 TO 8
   board(3, x) = 177
   board(4, x) = 177
   board(3, x + 29) = 177
   board(4, x + 29) = 177
   board(20, x) = 177
   board(21, x) = 177
   board(20, x + 29) = 177
   board(21, x + 29) = 177
NEXT x
FOR x = 13 TO 28
   board(3, x) = 177
   board(4, x) = 177
NEXT x
FOR x = 6 TO 11
   FOR y = 5 TO 8
      board(x, y) = 177
      board(x, y + 28) = 177
      board(x + 7, y) = 177
      board(x + 7, y + 28) = 177
   NEXT y
NEXT x
FOR x = 2 TO 4
   board(x, 10) = 177
   board(x, 11) = 177
   board(x, 30) = 177
   board(x, 31) = 177
NEXT x
FOR x = 10 TO 12
   board(6, x) = 177
   board(7, x) = 177
   board(6, x + 19) = 177
   board(7, x + 19) = 177
NEXT x
FOR x = 14 TO 27
   board(6, x) = 177
   board(7, x) = 177
NEXT x
FOR x = 9 TO 11
   FOR y = 9 TO 12
      board(x, y) = 177
      board(x, y + 20) = 177
      board(x + 4, y) = 177
      board(x + 4, y + 20) = 177
   NEXT y
NEXT x
FOR x = 10 TO 14
   board(17, x) = 177
   board(18, x) = 177
   board(20, x) = 177
   board(21, x) = 177
   board(17, x + 17) = 177
   board(18, x + 17) = 177
   board(20, x + 17) = 177
   board(21, x + 17) = 177
NEXT x
FOR x = 16 TO 25
   board(17, x) = 177
   board(18, x) = 177
   board(20, x) = 177
   board(21, x) = 177
NEXT x
FOR x = 6 TO 9
   board(x, 3) = 219
   board(x, 38) = 219
   board(x + 9, 3) = 219
   board(x + 9, 38) = 219
NEXT x
FOR x = 1 TO 3
   board(11, x) = 219
   board(13, x) = 219
   board(11, x + 37) = 219
   board(13, x + 37) = 219
NEXT x
FOR x = 10 TO 14 STEP 2
   FOR y = 1 TO 2
      board(x, y) = 32
      board(x, y + 38) = 32
   NEXT y
NEXT x
FOR x = 18 TO 23
   board(9, x) = 223
NEXT x
board(12, 3) = 219
board(12, 38) = 219
board(3, 3) = 15
board(3, 38) = 15
board(21, 3) = 15
board(21, 38) = 15
END SUB

SUB InitDots (board())
   FOR x = 1 TO 23
      FOR y = 1 TO 40
         IF board(x, y) = 0 THEN board(x, y) = 249
      NEXT y
   NEXT x
   FOR x = 10 TO 14
      FOR y = 15 TO 26
         board(x, y) = 0
      NEXT y
   NEXT x
board(16, 20) = 0
END SUB

SUB MoveGhost (board(), x, y, g, f)
   RANDOMIZE TIMER
   z = INT(RND * 4) + 1
   IF board(x, y) = 15 THEN COLOR 11 ELSE COLOR 15
   SELECT CASE f
      CASE 1
         IF board(x - 1, y) <> 219 AND board(x - 1, y) <> 177 THEN
            LOCATE x, y: PRINT CHR$(board(x, y))
            x = x - 1
         END IF
      CASE 2
         IF board(x + 1, y) <> 219 AND board(x + 1, y) <> 177 AND board(x + 1, y) <> 23 THEN
            LOCATE x, y: PRINT CHR$(board(x, y))
            x = x + 1
         END IF
   END SELECT
   SELECT CASE z
      CASE 1 TO 2
         IF board(x, y - 1) <> 219 AND board(x, y - 1) <> 177 THEN
            LOCATE x, y: PRINT CHR$(board(x, y))
            IF board(x, y) = 32 AND y = 1 THEN y = 40 ELSE y = y - 1
         END IF
      CASE 3 TO 4
         IF y = 40 THEN
            LOCATE x, y: PRINT CHR$(board(x, y))
            y = 1
         ELSEIF board(x, y + 1) <> 219 AND board(x, y + 1) <> 177 THEN
            LOCATE x, y: PRINT CHR$(board(x, y))
            y = y + 1
         END IF
   END SELECT
   LOCATE x, y
   COLOR g
   PRINT CHR$(146)
END SUB

SUB MovePacman (board(), x, y, Man)
   x$ = INKEY$
   SELECT CASE x$
      CASE &quot;8&quot;
         IF board(x - 1, y) <> 219 AND board(x - 1, y) <> 177 THEN
            LOCATE x, y: PRINT &quot; &quot;
            x = x - 1
         END IF
         IF Man = 1 THEN
            Man$ = &quot;C&quot;
            Man = 0
         ELSE
            Man$ = &quot;O&quot;
            Man = 1
         END IF
      CASE &quot;2&quot;
         IF board(x + 1, y) <> 219 AND board(x + 1, y) <> 177 AND board(x + 1, y) <> 23 THEN
            LOCATE x, y: PRINT &quot; &quot;
            x = x + 1
         END IF
         IF Man = 1 THEN
            Man$ = &quot;C&quot;
            Man = 0
         ELSE
            Man$ = &quot;O&quot;
            Man = 1
         END IF
      CASE &quot;4&quot;
         IF board(x, y - 1) <> 219 AND board(x, y - 1) <> 177 THEN
            LOCATE x, y: PRINT &quot; &quot;
            IF board(x, y) = 32 AND y = 1 THEN y = 40 ELSE y = y - 1
         END IF
         IF Man = 1 THEN
            Man$ = &quot;C&quot;
            Man = 0
         ELSE
            Man$ = &quot;O&quot;
            Man = 1
         END IF
      CASE &quot;6&quot;
         IF y = 40 THEN
            LOCATE x, y: PRINT &quot; &quot;
            y = 1
         ELSEIF board(x, y + 1) <> 219 AND board(x, y + 1) <> 177 THEN
            LOCATE x, y: PRINT &quot; &quot;
            y = y + 1
         END IF
         IF Man = 1 THEN
            Man$ = &quot;C&quot;
            Man = 0
         ELSE
            Man$ = &quot;O&quot;
            Man = 1
         END IF
   END SELECT
   LOCATE x, y
   COLOR 14
   PRINT Man$
END SUB

SUB PrintBoard (board())
   FOR x = 1 TO 23
      FOR y = 1 TO 40
         IF board(x, y) = 219 THEN COLOR 1
         IF board(x, y) = 177 THEN COLOR 4
         IF board(x, y) = 249 THEN COLOR 15
         IF board(x, y) = 223 THEN COLOR 15
         IF board(x, y) = 15 THEN COLOR 11
         LOCATE x, y
         PRINT CHR$(board(x, y))
      NEXT y
   NEXT x
END SUB

SUB SetSpeed (Clock)
a$ = TIME$
DO WHILE a$ = TIME$: LOOP
a$ = TIME$
DO WHILE a$ = TIME$
   Clock = Clock + 1
LOOP
END SUB

Worked great on anything up to an early Pentium, but my CPU slowdown trick didn't work too well on newer machines.

There's a reason I'm not a programmer today!
Title: Re: using those tiny little LCD screens as monitors...
Post by: Karlos on January 09, 2011, 02:26:28 PM
Quote from: motorollin;605040
"FOR C = 1 TO 2" iterates twice - once when the value of C is 1, and again when the value is 2


Inclusive counting?!

(http://blog.internetnews.com/apatrizio/do-not-want-dog.jpg)

Everything you need to know about what's wrong with BASIC is right there!
Title: Re: using those tiny little LCD screens as monitors...
Post by: motorollin on January 09, 2011, 02:32:22 PM
Quote from: tone007;605047
All this BASIC talk reminded me of the lame ASCII Pacman I wrote back in the 90s in QBasic.


/looks for qbasic interpreter

--
moto
Title: Re: using those tiny little LCD screens as monitors...
Post by: motorollin on January 09, 2011, 02:34:13 PM
Quote from: Karlos;605048
Inclusive counting?!



Everything you need to know about what's wrong with BASIC is right there!


Surely it doesn't matter as long as you know? :)

--
moto
Title: Re: using those tiny little LCD screens as monitors...
Post by: Karlos on January 09, 2011, 02:37:18 PM
I guess I am just too used to the 0...N-1 method of counting ;)
Title: Re: using those tiny little LCD screens as monitors...
Post by: motorollin on January 09, 2011, 02:38:27 PM
Quote from: Karlos;605057
I guess I am just too used to the 0...N-1 method of counting ;)


It never made much sense to me TBH. The inclusive method feels more logical to me. I sometimes still wonder why my loops don't iterate as many times as I expect them to :lol:

--
moto
Title: Re: using those tiny little LCD screens as monitors...
Post by: Karlos on January 09, 2011, 02:42:01 PM
Well, if you want to use the "inclusive" BASIC style looping, it's easy. Just change the < test for <= ;)
Title: Re: using those tiny little LCD screens as monitors...
Post by: AlfaRomeo on January 09, 2011, 02:50:11 PM
Hi people,
I have a broken iPaq h5550 and love to make a monitor for my A600 from it´s LCD, I think it may have input lines for rgb.
Wonder to know if it´s possible to connect it..
Title: using those tiny little LCD screens as monitors...
Post by: tone007 on January 09, 2011, 02:52:36 PM
My bet is no.
Title: Re: using those tiny little LCD screens as monitors...
Post by: motorollin on January 09, 2011, 02:53:39 PM
Quote from: Karlos;605060
Well, if you want to use the "inclusive" BASIC style looping, it's easy. Just change the < test for <= ;)


Is x<=1 less efficient than x<2, both in interpreted and compiled code?

--
moto
Title: Re: using those tiny little LCD screens as monitors...
Post by: motorollin on January 09, 2011, 02:55:38 PM
Quote from: AlfaRomeo;605065
Hi people,
I have a broken iPaq h5550 and love to make a monitor for my A600 from it´s LCD, I think it may have input lines for rgb.
Wonder to know if it´s possible to connect it..


If you can find the lines for video input and the refresh rate is compatible then I don't see why not.

--
moto