Hi, this is a collection of .s variations in various shapes and
bases.
Have a fun! Pito.


\ Some new .s
\ by Pito 2010-09-06

marker -newdots

: u.r       ( s n -- )   0 swap ud.r ;  \ comment if installed


\ ONE LINE HEXA STACK
: .slh
sp@ 
." [TOS> " 
depth 1- 0 ?do
dup i
2* +
base @ swap hex @ 6 u.r base !
loop
drop ." ]"
;


\ ONE LINE UNSIGNED STACK
: .slu
sp@ 
." [TOS> " 
depth 1- 0 ?do
dup i
2* +
@ 6 u.r
loop
drop ." ]"
\ cr .slh
;


\ ONE LINE SIGNED STACK
: .sls
sp@ 
." [TOS> " 
depth 1- 0 ?do
dup i
2* +
@ 6 .r 
loop
drop ." ]"
\ cr .slh
;

\ ONE LINE SIGNED AND HEXA STACK
: .sld
sp@ 
." [TOS> " 
depth 1- 0 ?do
dup i
2* +
@ 6 .r 
loop
drop ." ]"
cr .slh
;

\ ONE LINE SIGNED AND UNSIGNED AND HEXA STACK
: .sla
sp@ 
." [TOS> " 
depth 1- 0 ?do
dup i
2* +
@ 6 .r 
loop
drop ." ]"
cr .slu
cr .slh
;

\ IN COLUMNS NO ADDRR UNSIGNED SIGNED HEXA 
: .sc
sp@ 
depth 1- 0 ?do
dup 
i dup dup 0 = if ." TOS>" drop else negate 4 .r then    
2* +      \ dup 7 u.r           ( prints the address )
dup dup @ 7 u.r @ 7 .r base @ swap hex @ 6 u.r base !
cr
loop
drop
;

\ IN COLUMNS WITH ADDRR UNSIGNED SIGNED HEXA 
: .sch
sp@ 
depth 1- 0 ?do
dup i
dup negate 4 .r
2* + dup 7 u.r          ( prints the address )
dup dup @ 7 u.r @ 7 .r base @ swap hex @ 6 u.r base !
cr
loop
drop
;


\ AN EXPERIMENT WITH 2DECIMAL
: .scd
sp@ depth 1- 0 ?do
dup i
dup u.      ( gives the "index" )
2* + dup u. ( prints the address )
i $0001 and 0 = if dup @ u. 2@ d.  else @ u. then ( content )
cr
loop
drop
;

\ AN EXPERIMENT WITH 2DECIMAL and FLOAT
: .scf
sp@ depth 1- 0 ?do
dup i
dup 4 u.r      ( gives the "index" )
2* + dup 8 u.r ( prints the address )
i $0001 and 0 = if dup dup @ 8 u.r 2@ 12 d.r ."  " f@ fs. else @ 8
u.r then 
cr
loop
drop
;

\ AN EXPERIMENT WITH 2DECIMAL and FLOAT
: .scf1
sp@ depth 1- 0 ?do
dup i
dup negate 4 .r      ( gives the "index" )
2* + dup 7 u.r ( prints the address )
i $0001 and 0 = if dup dup @ 7 u.r 2@ 13 d.r ."   " f@ fs. else @ 7
u.r then 
cr
loop
drop
;
\ -------------------------------------------------
Ex:

> _pi _ln2 -1234567890.
ok
> .slh
[TOS>   B669  FD2E  3F31  7217  4049   FDB  FD2E  3F31  7217  4049  
FDB] ok
> .slu
[TOS>  46697 64814 16177 29207 16457  4059 64814 16177 29207 16457 
4059] ok
> .sls
[TOS> -18839  -722 16177 29207 16457  4059  -722 16177 29207 16457 
4059] ok
> .sld
[TOS> -18839  -722 16177 29207 16457  4059  -722 16177 29207 16457 
4059]
[TOS>   B669  FD2E  3F31  7217  4049   FDB  FD2E  3F31  7217  4049  
FDB] ok
> .sla
[TOS> -18839  -722 16177 29207 16457  4059  -722 16177 29207 16457 
4059]
[TOS>  46697 64814 16177 29207 16457  4059 64814 16177 29207 16457 
4059]
[TOS>   B669  FD2E  3F31  7217  4049   FDB  FD2E  3F31  7217  4049  
FDB] ok
> .sc
TOS>  46697 -18839  B669
-1  64814   -722  FD2E
-2  16177  16177  3F31
-3  29207  29207  7217
-4  16457  16457  4049
-5   4059   4059   FDB
-6  64814   -722  FD2E
-7  16177  16177  3F31
-8  29207  29207  7217
-9  16457  16457  4049
-10   4059   4059   FDB
ok
> .sch
0  16361  46697 -18839  B669
-1  16363  64814   -722  FD2E
-2  16365  16177  16177  3F31
-3  16367  29207  29207  7217
-4  16369  16457  16457  4049
-5  16371   4059   4059   FDB
-6  16373  64814   -722  FD2E
-7  16375  16177  16177  3F31
-8  16377  29207  29207  7217
-9  16379  16457  16457  4049
-10  16381   4059   4059   FDB
ok
> .scd
0 16361 46697 -1234567890 
1 16363 64814 
2 16365 16177 1060205079 
3 16367 29207 
4 16369 16457 1078530011 
5 16371 4059 
6 16373 64814 -47300815 
7 16375 16177 
8 16377 29207 1914126409 
9 16379 16457 
10 16381 4059 266027005 
ok
> .scf
0   16361   46697 -1234567890 -3.4867067E-6 
1   16363   64814
2   16365   16177  1060205079 6.9314709E-1 
3   16367   29207
4   16369   16457  1078530011 3.1415927 
5   16371    4059
6   16373   64814   -47300815 -1.4475877E37 
7   16375   16177
8   16377   29207  1914126409 2.9958398E30 
9   16379   16457
10   16381    4059   266027005 2.1619697E-29 
ok
> .scf1
0  16361  46697  -1234567890  -3.4867067E-6 
-1  16363  64814
-2  16365  16177   1060205079  6.9314709E-1 
-3  16367  29207
-4  16369  16457   1078530011  3.1415927 
-5  16371   4059
-6  16373  64814    -47300815  -1.4475877E37 
-7  16375  16177
-8  16377  29207   1914126409  2.9958398E30 
-9  16379  16457
-10  16381   4059    266027005  2.1619697E-29 
ok
>


------------------------------------------------------------------------------
This SF.net Dev2Dev email is sponsored by:

Show off your parallel programming skills.
Enter the Intel(R) Threading Challenge 2010.
http://p.sf.net/sfu/intel-thread-sfd
_______________________________________________
Amforth-devel mailing list
Amforth-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/amforth-devel

Reply via email to