Posts: 2,771
Threads: 96
Joined: Oct 2003
Quote:Hand over my @£$£ cookie!!! :D
hehe, ok so It wasnt too hard to work out with good code reading ^.^
Here you go!
Posts: 46
Threads: 2
Joined: May 2004
Mmm. That was tasty. Thanks.
hat were we arguing about again?
Posts: 484
Threads: 14
Joined: Apr 2005
Code: Dim As Integer dd(704) = { _
41, 74, 41, 76, 41, 82, 41, 85, 41, 90, 41, 95, 41, 100, 41, 102, _
41, 107, 41, 111, 41, 114, 41, 117, 41, 120, 41, 125, 41, 127, 41, 132, _
41, 136, 41, 140, 41, 143, 41, 147, 41, 151, 41, 152, 41, 153, 41, 154, _
42, 114, 44, 114, 48, 114, 50, 114, 54, 114, 60, 114, 65, 114, 68, 114, _
70, 114, 71, 114, 75, 79, 75, 80, 75, 85, 75, 93, 75, 102, 76, 111, _
76, 118, 76, 125, 76, 127, 76, 134, 76, 138, 76, 140, 76, 141, 96, 130, _
98, 129, 100, 128, 100, 127, 103, 125, 105, 124, 106, 122, 108, 121, 108, 120, _
108, 119, 108, 118, 108, 117, 108, 116, 108, 115, 108, 114, 108, 113, 107, 112, _
107, 111, 106, 111, 105, 110, 103, 110, 102, 110, 100, 110, 97, 110, 92, 113, _
88, 117, 83, 119, 81, 121, 81, 122, 80, 123, 80, 124, 80, 127, 80, 129, _
82, 131, 82, 132, 84, 135, 86, 137, 88, 140, 91, 141, 95, 144, 99, 145, _
101, 145, 103, 145, 106, 145, 108, 145, 112, 144, 114, 143, 116, 142, 116, 141, _
132, 82, 132, 86, 132, 93, 132, 96, 132, 103, 132, 108, 132, 114, 132, 120, _
132, 126, 132, 132, 132, 134, 132, 140, 132, 143, 132, 144, 151, 89, 151, 93, _
151, 95, 151, 100, 151, 105, 151, 111, 151, 117, 151, 123, 151, 128, 151, 131, _
151, 136, 151, 142, 151, 146, 151, 148, 183, 118, 181, 118, 179, 119, 178, 120, _
174, 126, 172, 128, 171, 132, 170, 134, 170, 138, 170, 140, 171, 142, 174, 144, _
177, 146, 179, 146, 182, 146, 184, 146, 187, 145, 189, 144, 192, 141, 194, 139, _
195, 134, 195, 130, 195, 126, 195, 123, 193, 119, 190, 115, 188, 114, 185, 112, _
244, 84, 244, 85, 244, 87, 244, 91, 244, 97, 244, 102, 245, 107, 245, 113, _
246, 115, 248, 120, 250, 127, 252, 131, 254, 137, 254, 139, 254, 141, 254, 142, _
254, 143, 254, 144, 254, 145, 254, 146, 255, 144, 255, 143, 256, 141, 257, 139, _
258, 137, 260, 133, 262, 130, 262, 127, 262, 125, 263, 123, 263, 122, 263, 121, _
263, 120, 263, 119, 263, 120, 263, 122, 264, 124, 266, 129, 270, 136, 274, 142, _
276, 145, 278, 147, 279, 147, 280, 145, 281, 141, 281, 136, 281, 131, 281, 124, _
281, 122, 281, 115, 281, 108, 281, 102, 282, 98, 283, 94, 283, 92, 283, 91, _
283, 90, 283, 88, 283, 87, 283, 86, 311, 123, 309, 123, 307, 123, 305, 125, _
304, 125, 303, 128, 302, 131, 301, 133, 301, 136, 301, 140, 302, 142, 303, 144, _
305, 145, 307, 147, 309, 148, 311, 148, 313, 148, 316, 148, 317, 147, 320, 146, _
321, 145, 321, 143, 322, 142, 322, 139, 322, 137, 322, 134, 322, 131, 321, 128, _
319, 127, 318, 125, 316, 125, 339, 125, 339, 128, 339, 130, 339, 134, 339, 140, _
339, 142, 339, 144, 339, 141, 339, 135, 339, 131, 339, 126, 339, 122, 339, 119, _
339, 118, 339, 117, 340, 117, 341, 116, 345, 116, 349, 116, 352, 116, 355, 116, _
380, 100, 380, 104, 380, 110, 380, 116, 380, 122, 380, 126, 380, 133, 380, 137, _
380, 141, 380, 144, 380, 145, 380, 146, 404, 130, 403, 129, 401, 129, 400, 128, _
399, 128, 397, 128, 395, 130, 392, 133, 391, 137, 390, 141, 390, 143, 390, 145, _
390, 146, 391, 146, 392, 146, 394, 146, 397, 146, 400, 145, 402, 142, 404, 141, _
406, 138, 407, 138, 407, 135, 408, 131, 408, 127, 408, 121, 408, 117, 408, 113, _
408, 110, 408, 107, 408, 104, 408, 102, 408, 100, 408, 99, 408, 97, 408, 96, _
408, 95, 408, 94, 408, 93, 408, 92, 408, 91, 408, 90, 408, 93, 409, 101, _
412, 115, 417, 129, 421, 142, 426, 153, 427, 158, 427, 162, 428, 162, 452, 93, _
452, 96, 452, 98, 452, 101, 452, 106, 452, 113, 452, 118, 452, 124, 452, 130, _
452, 131, 452, 133, 451, 150, 450, 150, 449, 150, 448, 151, 446, 154, 446, 155, _
445, 157, 445, 159, 445, 160, 446, 161, 447, 161, 448, 159, 450, 156, 452, 151 }
ScreenRes 640, 480, 32
For i = 1 To 704 Step 2
mx = dd(i-1)
my = dd(i)
pset (mx, my), &HFFFFFF
pset (mx + 1, my + 1), &HFFFFFF
pset (mx - 1, my - 1), &HFFFFFF
pset (mx + 1, my - 1), &HFFFFFF
pset (mx - 1, my + 1), &HFFFFFF
Sleep 20
Next i
Sleep
EVEN MEN OF STEEL RUST.
Posts: 691
Threads: 5
Joined: Apr 2002
Compiles for FB, QB and ANSI C:
Code: REM; /*
print "Hello World"
'*/ int main(void) {printf("Hello World\n"); return 0;}
Edit: Slightly more clever version:
Code: REM = '\t'; char *PRINT = "\n"; /*
DIM s AS STRING * 13
'*/ int main() { char *s[3] = {
PRINT , "Hello world",
REM}; printf("%c%s%s", s[2], s[1], s[0]);}
esus saves.... Passes to Moses, shoots, he scores!
Posts: 6,419
Threads: 74
Joined: Mar 2002
Cute cross-language stuff, I like it, very classy
Posts: 245
Threads: 48
Joined: Dec 2004
Here's mine!
Code: 'Hello World example and Bitmap font loader
'A RADIUM-V Interactive Program By John Kreitlow
'Copyright (C) 2006 John Kreitlow and RADIUM-V Interactive
'Use With permission - Email jkreitlow@gmail.com
DECLARE FUNCTION Font (spritex,spritey,text AS STRING)
DIM SHARED Font_letter (12264) AS INTEGER
SCREEN 18,16,2
SCREENSET 1,0
BLOAD "Font.bmp",0
l_num = -1
FOR I = 0 TO 111 STEP 18
FOR J = 0 TO 107 STEP 16
l_num = l_num + 1
GET(J,I)-(J + 15, I + 17),Font_letter(292 * l_num)
NEXT J
NEXT I
CLS
Font (220,220,"Hello World!")
SCREENCOPY
SLEEP
FUNCTION Font (spritex,spritey,text AS STRING)
l_next = 0
text = UCASE$(text)
FOR a = 1 TO LEN(text)
IF MID$(text,a,1) = " " THEN l_num = -1
IF MID$(text,a,1) = "A" THEN l_num = 0
IF MID$(text,a,1) = "B" THEN l_num = 1
IF MID$(text,a,1) = "C" THEN l_num = 2
IF MID$(text,a,1) = "D" THEN l_num = 3
IF MID$(text,a,1) = "E" THEN l_num = 4
IF MID$(text,a,1) = "F" THEN l_num = 5
IF MID$(text,a,1) = "G" THEN l_num = 6
IF MID$(text,a,1) = "H" THEN l_num = 7
IF MID$(text,a,1) = "I" THEN l_num = 8
IF MID$(text,a,1) = "J" THEN l_num = 9
IF MID$(text,a,1) = "K" THEN l_num = 10
IF MID$(text,a,1) = "L" THEN l_num = 11
IF MID$(text,a,1) = "M" THEN l_num = 12
IF MID$(text,a,1) = "N" THEN l_num = 13
IF MID$(text,a,1) = "O" THEN l_num = 14
IF MID$(text,a,1) = "P" THEN l_num = 15
IF MID$(text,a,1) = "Q" THEN l_num = 16
IF MID$(text,a,1) = "R" THEN l_num = 17
IF MID$(text,a,1) = "S" THEN l_num = 18
IF MID$(text,a,1) = "T" THEN l_num = 19
IF MID$(text,a,1) = "U" THEN l_num = 20
IF MID$(text,a,1) = "V" THEN l_num = 21
IF MID$(text,a,1) = "W" THEN l_num = 22
IF MID$(text,a,1) = "X" THEN l_num = 23
IF MID$(text,a,1) = "Y" THEN l_num = 24
IF MID$(text,a,1) = "Z" THEN l_num = 25
IF MID$(text,a,1) = "0" THEN l_num = 26
IF MID$(text,a,1) = "1" THEN l_num = 27
IF MID$(text,a,1) = "2" THEN l_num = 28
IF MID$(text,a,1) = "3" THEN l_num = 29
IF MID$(text,a,1) = "4" THEN l_num = 30
IF MID$(text,a,1) = "5" THEN l_num = 31
IF MID$(text,a,1) = "6" THEN l_num = 32
IF MID$(text,a,1) = "7" THEN l_num = 33
IF MID$(text,a,1) = "8" THEN l_num = 34
IF MID$(text,a,1) = "9" THEN l_num = 35
IF MID$(text,a,1) = "!" THEN l_num = 36
IF MID$(text,a,1) = "?" THEN l_num = 37
IF MID$(text,a,1) = "." THEN l_num = 38
IF MID$(text,a,1) = "@" THEN l_num = 39
IF MID$(text,a,1) = "," THEN l_num = 40
IF MID$(text,a,1) = "_" THEN l_num = 41
IF l_num >= 0 THEN
PUT(spritex + l_next,spritey),Font_letter(292 * l_num),TRANS
ELSE
l_next = l_next + 1
END IF
IF MID$(text,a,1) = "I" OR MID$(text,a,1)="J" THEN l_next=l_next - 5
l_next = l_next + 16
NEXT
END FUNCTION
and here's the pic. Just copy and put the file in the same location as the code. Lazy
It's just a bitmap font loader, but hey, I made it and it works.
Posts: 484
Threads: 14
Joined: Apr 2005
[quote="stylin"]Simple. Post a neat "Hello, world!" program. It does not necessarily have to be obfuscated, but should be clever, inefficient, unsafe or otherwise something you shouldn't be doing.
This one i guess is unsafe but it works for me.
Code: Dim msg(8) As uByte ptr
Dim msg_p As ZString ptr
msg_p = cptr(ZString ptr, @msg(0))
*msg_p = "Hello World!"
Print *msg_p
Sleep
EVEN MEN OF STEEL RUST.
Posts: 1,407
Threads: 117
Joined: Dec 2002
Code: screen 12
draw "c11;s4 bm200,200"
draw "BD3UNR5ER5EG4D9GRENU9FRNU11EU11E2NRG2D4RE3D2END9RD7G2LEBU13BR5"
draw "BR4G3ND8RG2D4RED4RNU2FNU2NR4ER5NE2NUL3U12G3D6EU6ENR7ER2D2R3G4R4UNL3BU5BR3"
draw "BD2E2R4EG2NL4D11L2G2ERENU9RNE3R2F2RNE3HRNE2UE2LHBL3NU7FU7EBU3BR7"
draw "BD2E2R4EG2NL4D11L2G2ERENU9RNE3R2F2RNE3HRNE2UE2LHBL3NU7FU7EBU3BR7"
draw "BR9L4G5ND6RD8R8LGL4U2LUE2NU8LU7ER6FL3HGD10UE3R3DG3REU5FUL3NG2RE2DHULBU3BR6"
draw "BRBD13D3GE2UL2RBU14BR5"
draw "BR8"
draw "BD3E3D14H2RU9LE2RFD12GU3FRE2U10GE2D14HUF2DU3RD2NE4U13BR2UED11EU9HBR4"
draw "BR9L4G5ND6RD8R8LGL4U2LUE2NU8LU7ER6FL3HGD10UE3R3DG3REU5FUL3NG2RE2DHULBU3BR6"
draw "BD14E5U8EG2L2GE2RD10G2E3FG2R5G2HRU2LUENU8ENE4F4DNE3H2R3H3LNF3UE2U4L4E2D3FR2UL2U2BUBR8"
draw "BD2E2R4EG2NL4D11L2G2ERENU9RNE3R2F2RNE3HRNE2UE2LHBL3NU7FU7EBU3BR7"
draw "BDBR2NR7FR8GR2GRD2NL2D3NL2D3GNL6GL6GE3U10G3D7G2E3U2L3GE2R2U4E2R2D5RGD2RGDBU11BR7"
draw "BR2G2RED8BD2D2HR2HBU2U3LU3R2D3U5FBU2BR2"
sleep
Antoni
Posts: 484
Threads: 14
Joined: Apr 2005
nice font Antoni. Have you made the program i was saying would be a good challenge in the George C Scott thread? I'd love to see it if you have.
EVEN MEN OF STEEL RUST.
Posts: 1,407
Threads: 117
Joined: Dec 2002
You have the complete font here:
http://www.qbasicnews.com/abc/showsnippe...snippet=27
And no, I don't want to mangle with the DRAW statement, people like the one who did the font is better than me.
At the moment i'm coding a PLAY library using the PC beeper for FB. Not very useful but fun. It forces me to stop coding early...
Antoni
|