SBC6502 - 58 - basic programs - Fourier analyze.

By Administrator at septembra 26, 2022 12:15
Filed Under: SBC6502

 

Zmysluplné programy pre Basic hlavne na UK101 a Ohio Scientific (vedecký ...) sa dosť ťažko zháňajú a hľadajú. Napokon, už odvtedy skutočne uplynulo pekných pár rokov.

Keď sa pozriem na to koľko knižných titulov aj s ukážkami v jazyku Basic vyšlo napríklad pre Atari - nuž tam sú to oproti OSI a UK101 vskutku lukulské hody, tu je to ako hľadať zrnko piesku v púšti.


Pozrime si tento výpočet na SBC6502 (UK101):

Doplnená poznámka:

Včera som bol priamo pod článkom upozornený v komentári na chybu v programe a tak nasledovala oprava (vďaka dex !). Čo je zaujímavé, mám tento program z dvoch nezávislých  zdrojov, jeden v časopise a druhý na webe (a tvrdí sa tam že je to otestované) - ale v obidvoch sa nachádza uvedená chyba, jednoducho niet nad kvalitné podklady.Tongue out

 

Poďme si pozrieť vypichnutú "problémovú"  časť programu, je označená podčiarknutím textu:

...

150 INPUT "IS FUNCTION ODD, EVEN OR NEITHER";Q$
200 PRINT "HARMONIC","NO. OF LOOPS","RESULT"
212 IF Q$="ODD" THEN 340
213 IF Q$="EVEN" THEN 450
216 IF Q$="ODD" THEN 340
220 N=0:A1=-L:B1=L:G=1

...

 
Opravená časť programu je zvýraznené, riadok č.220 v programe nebol vôbec použitý. Zmena je v obsahu riadku 216 a jeden riadok (217) pribudol, rieši chybu zlého zadania voľby. Ak ešte niekto nájde nejakú chybu - dajte vedieť.
...
150 INPUT "IS FUNCTION ODD, EVEN OR NEITHER";Q$
200 PRINT "HARMONIC","NO. OF LOOPS","RESULT"
212 IF Q$="ODD" THEN 340
213 IF Q$="EVEN" THEN 450
216 IF Q$="NEITHER" THEN 220
217 GOTO 150

220 N=0:A1=-L:B1=L:G=1
...

Kompletný listing programu s už uvedenou opravou:


1 REM 48char. x 16 lines
5 POKE (11),237:POKE (12),254:PI=3.1415927
10 PRINT:PRINT:PRINT "FOURIER SERIES!!!"
20 PRINT "-----------------":PRINT
30 DIM A(99),B(99)
40 LL=54220
50 GOTO 9000
60 REM SAMPLE EQUATION OF A SQUARE WAVE WHEN
61 REM DEFINED AS EVEN
70 INPUT "NO. OF HARMONICS";M:M=INT(ABS(M))
80 N=0:G=0
100 DEF FNA(X)=X*X+1
110 REM PUT YOUR FUNCTION ON LINE 100 AS A
120 REM FUNCTION OF X, AS ABOVE
130 INPUT "PERIOD";L:L=ABS(L/2)
150 INPUT "IS FUNCTION ODD, EVEN OR NEITHER";Q$
200 PRINT "HARMONIC","NO. OF LOOPS","RESULT"
212 IF Q$="ODD" THEN 340
213 IF Q$="EVEN" THEN 450
216 IF Q$="NEITHER" THEN 220
217 GOTO 150
220 N=0:A1=-L:B1=L:G=1
260 GOSUB 2000:A(N)=I9/L:N=N+1:IF N<=M THEN 260
280 N=0:G=0
290 GOSUB 2000:B(N)=I9/L:N=N+1:IF N<=M THEN 290
330 GOTO 540
340 N=1:A1=0:B1=L:G=0
380 GOSUB 2000:B(N)=I9*2/L:N=N+1:IF N<=M THEN 380
440 GOTO 540
450 N=0:A1=0:B1=L:G=1
490 GOSUB 2000:A(N)=I9*2/L:N=N+1:IF N<=M THEN 490
540 PRINT:INPUT "TABLE PRINTOUT";Q$
545 IF LEFT$(Q$,1)="Y" THEN 1000
550 PRINT"F(X)=";A(0)/2;"+[";
560 FOR N=1 TO M:IF A(N)=0 THEN 610
580 IF B(N)=0 THEN 630
590 PRINT A(N);"COS(";N/L;"*PI*X)+";B(N);"SIN(";N/L;"*PI*X)+";
600 GOTO 640
610 PRINT B(N);"SIN(";N/L;"*PI*X)+";
620 GOTO 640
630 PRINT A(N);"COS(";N/L;"*PI*X)+";
640 NEXT N:PRINT "]":END
670 INPUT "GRAPH";Q$:IF Q$="NO" THEN END
690 INPUT "LINES PER CYCLE";L1
700 C=100
710 INPUT "AMPLITUDE";A1:A1=24/A1
720 FOR X=0 TO 2*L*C STEP 2*L/L1
730 P=0:FOR N=1 TO M
740 P=P+A(N)*COS(N*PI*X/L)+B(N)*SIN(N*PI*X/L)
750 NEXT N
760 P=P+A(0)/2
770 PRINT:POKE (LL+24),73
780 R=(P*A1)+24:IF R<0 OR R>48 THEN 880
785 LN=INT(((R-INT(R))*8)+4.5)
787 IF LN>7 THEN LN=LN-8:R=R+1
790 POKE (LL+R),LN+136
880 NEXT X
890 END
1000 PRINT:PRINT "F(X)="F$"=";A(0)/2;"+"
1020 PRINT "HARMONIC","COS/SIN COEFF."
1030 FOR N=1 TO M
1035 IF A(N)=0 THEN 1044
1040 PRINT N,A(N),"*COS(";N/L;"*PI*X)"
1044 IF B(N)=0 THEN 1046
1045 PRINT N,B(N),"*SIN(";N/L;"*PI*X)"
1046 IF N/6=INT(N/6)THEN X=USR(X)
1050 NEXT N
1060 GOTO 670
2000 REM NUMERICAL INTEGRATION OF FNX
2010 REM SEVEN POINT SIMPSONS RULE
2050 DEF FNX(X)=FNA(X)*(COS(N*PI*X/L)*G+SIN(N*PI*X/L)*(1-G))
2060 X1=(B1-A1)/6:I1=FNX(A1)+FNX(B1)
2070 I2=FNX(A1+X1):I3=FNX(A1+2*X1)
2080 I4=FNX(A1+3*X1):I5=FNX(A1+4*X1)
2090 I6=FNX(A1+5*X1):I7=0
2095 I=X1*(41*I1+216*I2+27*I3+272*I4+27*I5+216*I6)/140
2100 H9=I2+I5:I5=I3+I6:I3=H9:I7=I7+I4
2110 I2=0:I4=0:I6=0:X1=X1/2
2140 X=A1+X1
2150 I2=I2+FNX(X):I4=I4+FNX(X+2*X1)
2155 I6=I6+FNX(X+4*X1):X=X+6*X1:IF X<B1 THEN 2150
2180 I9=X1*(41*I1+216*I2+27*I3+272*I4+27*I5+216*I6+82*I7)/140
2181 IF (B1-A1)/X1<=96 THEN 2200
2182 IF (B1-A1)/X1>760 THEN 2220
2184 IF ABS(I9)<.00001 THEN 2220
2185 IF I=I9 THEN 2220
2190 IF ABS((I-I9)/I)<=.000001 THEN 2220
2200 I=I9:GOTO 2100
2220 REM RESULT IN I9
2225 PRINT N,(B1-A1)/X1,I9*2/L
2230 RETURN
9000 PRINT "THIS PROGRAM DOES A FOURIER ANALYSIS OF"
9010 PRINT "ANY FUNCTION."
9020 PRINT "TO GIVE THE EQUIVALENT FUNCTION AS A SUM"
9030 PRINT "OF A FUNDIMENTAL SINE WAVE AND ITS HARMONICS"
9040 PRINT "DEFINE THE FUNCTION ON LINE 100"
9045 PRINT "AS FNA. THEN INPUT THE NO. OF HARMONICS"
9050 PRINT "AND THE PERIOD, AND THE DEFINITION OF"
9060 PRINT "THE FUNCTION AS ODD, EVEN OR NEITHER"
9070 PRINT "THE RESULTS CAN BE PRINTED IN TABLE OR"
9080 PRINT "EQUATION FORM AND A GRAPH OF THE HAMONICS"
9090 PRINT "CAN BE PLOTTED IF NEEDED":GOTO 60

 

Download modifikovaného programu:

Fourier analyze_modify.txt (3,53 kb)

(Pri x-tale= 4.9152MHz výpočty prebiehajú celkom rýchlo ...)

 

Download pôvodného programu zo spomenutou chybou (rovnaké riadky 212 a 216):

Fourier analyze.txt (3,51 kb)

______________________________________________________

Vaše hodnotenie, Rate post:

SBC6502 - 57 - basic programs - Astable 555 timer calculator.

By Administrator at septembra 14, 2022 10:50
Filed Under: SBC6502

 

Astable 555 timer calculator.


Ďalší z pomocných programčekov pre astabilný generátor s čipom 555. Použiť obvod 555 ako generátor pulzov je dodnes vec veľmi obľúbená a často používaná. Program som upravil pre SBC6502 (program samozrejme bez najmenších problémov funguje aj na UK101) a pridal som aj grafické znázornenie vlastného obvodového zapojenia 555. Boli prevedené niektoré zmeny v programe /napríklad v SBC6502 nemám k dispozícii prikaz IF THEN ELSE/, ale to sa dalo vyriešiť. Takže som to celé upravil a prekopal k obrazu svojmu. V zapojení (oproti pôvodnému) pribudli ďalšie dva kondenzátory C2 a C3, ich pripojenie síce nie je nevyhnutné, ale výrazne zlepšujú činnosť vlastného zapojenia, je to potom na výstupe stabilnejšie.

 

Program poskytuje dve možnosti výpočtu, samostatné zobrazenie zapojenia a ukončenie programu:

1.- zadáme hodnoty súčiastok R1, R2, C1 a program vypočíta frekvenciu a plnenie duty cycle

     /dokáže zobraziť zapojenie s už vyrátanými hodnotami súčiastok/

2.- zadáme frekvenciu, duty cycle a hodnotu R2 a program spočíta potrebné hodnoty súčiastok

     /dokáže zobraziť zapojenie s už vyrátanými hodnotami súčiastok/

3.- zobrazenie vlastnej schémy /tu nie sú k dispozícii hodnoty súčiastok/

4.- ukončenie programu


Listing programu:


100 REM --- 80column´s Hyperterminal ---
110 GOSUB 690:POKE 15,80:CLEAR:GOSUB 650
120 PRINT " *          Astable 555 TIMER CALCULATION PROGRAM        *"
130 PRINT " *     original idea by James E. Tarchinski PE/1989/03        *"
140 PRINT " * modify program (+ circuit) by SBC6502 - Igi 14/09/2022 *"
150 GOSUB 650:PRINT
160 REM --- MENU ---
170 PRINT:PRINT " Would you like to:":G=0:C2=0:C3=0
180 PRINT " (1) - Calculate circuit data from component values"
190 PRINT " (2) - Calculate component values from circuit data"
200 PRINT " (3) - View to circuit
210 PRINT " (4) - Exit the program":PRINT
220 INPUT " Your choice:";Q
230 IF Q=1 THEN PRINT:GOTO 280
240 IF Q=2 THEN 440
250 IF Q=3 THEN GOSUB 690:GOSUB 700:GOTO 160
260 IF Q=4 THEN END
270 GOTO 160
280 PRINT SPC(8)"*************** CALCULATE CIRCUIT DATA ***************"
290 GOSUB 670:G=1:C2=10:C3=100
300 PRINT " (NOTE: R1 should be greater than 1000 ohms)"
310 P$=" R1 (ohms): ":GOSUB 610:R1=V
320 IF R1<1000 THEN GOTO 300
330 P$=" R2 (ohms): ":GOSUB 610: R2=V
340 P$=" C1 (uF)  : ":GOSUB 610: C1=V/1000000:PRINT
350 IF R1*R2*C1=0 THEN PRINT "ERROR: Illegal value(s).":GOTO 160
360 TH=.693*C1*(R1+R2): PRINT"High time  = ";TH;"seconds"
370 TL=.693*C1*R2: PRINT "Low time   = ";TL;"seconds"
380 DC=100*(TH/(TH+TL)):PRINT "Duty cycle = ";DC;"%"
390 PERIOD=TH+TL:PRINT"Period     = ";PERIOD;"seconds"
400 F=1/PERIOD: PRINT "Frequency  = ";F;"Hz"
410 GOSUB 910
420 IF Q$="N" THEN 160
430 IF Q$="Y" THEN GOSUB 700:GOTO 160
440 REM --- CALCULATE COMPONENT VALUES ---
450 GOSUB 670:G=2:C2=10:C3=100
460 P$=" Frequency (Hz): ":GOSUB 610:F=V
470 IF F<>0 THEN 510
480 P$=" Period (seconds): ":GOSUB 610:T=V
490 IF F=0 AND T=0 THEN PRINT " ? ? ?":GOTO 160
500 IF F=0 THEN F=1/T
510 P$=" Duty cycle (in %, must be >50% and not be =>100%): "
520 GOSUB 610: DC=V/100
530 IF DC<=.5 OR DC=>1 THEN PRINT " Error duty cycle range !":GOTO 510
540 P$=" Value of R2 (ohms): ":GOSUB 610: R2=V
550 IF R2<1000 THEN PRINT "Note: R2 should be greater than 1000 ohms)"
560 R1=R2*(2*DC-1)/1-DC: PRINT " R1 = ";R1;"ohms"
570 C1=1440000/(F*(R1+2*R2)):PRINT " C1 = ";C1;"uF"
580 GOSUB 910:REM --- QUESTION ---
590 IF Q$="N" THEN 160
600 IF Q$="Y" THEN GOSUB 700:GOTO 160
610 REM --- INPUT SUBROUTINE ---
620 PRINT P$;:INPUT IN$
630 V=ABS(VAL(IN$))
640 RETURN
650 PRINT " **********************************************************"
660 RETURN
670 PRINT:PRINT " Enter the following components:":RETURN
680 REM --- CLS ---
690 PRINT CHR$(12):RETURN
700 REM --- CIRCUIT ---
710 GOSUB 690:IF G=2 THEN 730
720 C1=C1*1000000
730 W$=" NE555/5-15V   ^ +Vcc":PRINT W$;SPC(14)"ASTABLE 555 TIMER"
740 W$=" 7555 /3-18V   |":PRINT W$;SPC(23)"R1=";R1;"ohms"
750 W$="   +--------+--+-------+":PRINT W$;SPC(15)"R2=";R2;"ohms"
760 W$="   |        |  |       |":PRINT W$;SPC(15)"F =";F;"Hertz"
770 W$="  R1      -------      |":PRINT W$;SPC(15)"C1=";C1;"uF"
780 W$="   +-----|7 8  4 |     |":PRINT W$;SPC(15)"C2=";C2;"nF"
790 W$="   |  +--|6      |     | Output":PRINT W$;SPC(8)"C3=";C3;"nF"
800 W$="  R2  |  |  555 3|-------------> ":PRINT W$
810 W$="   +--+--|       |     |":PRINT W$
820 W$="  +|     |2  1  5|--+  |":PRINT W$
830 W$="  C1      -------   |  |":PRINT W$
840 W$="  -|         |     C2 C3":PRINT W$
850 W$="   +---------+------+--+":PRINT W$;
860 IF G=0 THEN ?SPC(9)" No active input data ..."
870 IF G=1 OR G=2 THEN ?""
880 W$="             |":PRINT W$
890 W$="        Gnd ===":PRINT W$:RETURN
900 ---QUESTION ---
910 PRINT:PRINT " Circuit - (Y)es or (N)o:";:INPUT Q$:RETURN

 

Download programu:

Timer555_astable_n.txt (3,50 kb)

 

Nasledujú praktické ukážky z programu:

 

Úvodné menu - 4 možnosti.


Voľba č.3 - vlastné zapojenie obvodu 555, bez vstupných dát.


Voľba č.1, R1=10000Ω, R2=10000Ω, C1=10uF,

potom nasleduje voľba zobrazenia zapojenia (Y).


Zapojenie, voľba č.1 s už zobrazenými parametrami súčiastok.


Voľba č.2, F=50Hz, Duty cycle=55%, R2=12000Ω, ostatné hodnoty /R1, C1/vyráta program,

potom nasleduje voľba zobrazenia zapojenia (Y).

 

Zapojenie, voľba č.2 s už zobrazenými parametrami súčiastok.


Pre voľbu č.2 je tu ešte jedna vychytávka, pri zadaní Frequency=0 treba zadať číselne požadovanú periódu, potom výpočet zbieha pomocou tohoto údaja. Treba zadať aj Duty cycle a hodnotu odporu R2. Pretože pri nízkych frekvenciách (dlhej perióde) treba použiť elektrolytické kondenzátory tak v schéme je tiež naznačená jeho polarita (C1), platí pre všetky výpočty.

Ak zadáte periódu=0 tak sa sa vrátite do menu.

 

Prajem príjemnú zábavu !

(Nech je čím prevetrať 8-bit ...)

_________________________________________________________________________________

21.11.2022

Dnes som dostal od Stana Havrana zaujímavý mail:

 

Ahoj, Igor,

videl som na Tvojich stránkach o ATARI program na výpočet obvodu 555 pre SBC6502. Mal som chvíľu čas, a tak som ho prepísal pre PC ako batch. Zbúchal som to za jeden večer, možno sú tam aj nejaké chyby, ale je to funkčné.

Zachoval som celú štruktúru programu aj s odkazmi na riadky v basicu, aby sa v tom dalo lepšie orientovať, hoci by sa dal aj optimalizovať a zdokonaliť, výsledky, premenné atď. ukladať na disk (čítať z disku) a podobné parádičky. Viac sa tomu nemienim venovať. Je to len taká sranda.

Súbor 555.txt treba premenovať na 555.cmd

Z príkazového riadku treba spustiť 555.cmd (stačí aj 555)

Stano


 

Program:


@rem Stanislav Havran
@rem date nov-20-2022

@echo off

title Astable 555 TIMER CALCULATION PROGRAMM
color e0

::begin
cls
call :starline
echo  *                 Astable 555 TIMER CALCULATION PROGRAMM                    *
echo  *            original idea by James E. Tarchinski PE/1989/03                       *
echo  *              modify programm by SBC6502 - Igi 14/09/2022                     *
echo  *     second modify for command line PC as batch by (Sh) 20/11/2022       *
call :starline

:menu
    echo.
    echo.
    set G=0
    set C2=0
    set C3=0
    echo (1) - Calculate circuit data from component values
    echo (2) - Calculate component values from circuit data
    echo (3) - view to circuit
    echo (4) - Exit the programm
    echo.
    choice /C 1234 /M "Would you like to:" /N
    if %errorlevel% equ 4 goto :eof           
    if %errorlevel% equ 3 (
        call :line690
        call :line700
        goto :menu
        )
    if %errorlevel% equ 2 goto :line440
    if %errorlevel% equ 1 (
        echo.
        goto :line280
        )
    goto :menu

:line280
    echo     ************ CALCULATE CIRCUITS DATA ******************
    call :line670
    set G=1
    set C2=10
    set C3=100
:loop
    echo  (NOTE: R1 should be greater than 1000 ohms)
    set /P P=" R1 (ohms): ? "
    call :line610
    set R1=%V%
    if %R1% lss 1000 goto :loop
    set /P P=" R2 (ohms): ? "
    call :line610
    set R2=%V%
    set /P P=" C1 (nF): ? "
    call :line610
    set /A C1=%V%/1000
    echo.
    if %R1% equ 0 (
        echo ERROR: Ilegal value R1
        goto :menu
        )
    if %R2% equ 0 (
        echo ERROR: Ilegal value R2
        goto :menu
        )
    if %C1% equ 0 (
        echo ERROR: Ilegal value C1
        goto :menu
        )
    SET /A TH=693*%C1%*(%R1%+%R2%)/1000
    echo High time = %TH% msec
    set /A TL=693*%C1%*%R2%/1000
    echo Low time  = %TL% msec
    set /A DC=(100*%TH%)/(%TH%+%TL%)
    echo Duty cycle = %DC% %%
    set /A PERIOD=%TH%+%TL%
    echo Period   = %PERIOD% usec
    set /A F=1000000/%PERIOD%
    echo Frequency = %F% Hz
:line410
    call :line910
    if /I %Q%==N goto :menu
    if /I %Q%==Y call :line700 && goto :menu

:line440
    rem -- CALCULATE COMPONENT VALUES ---
    call :line670
    set G=2
    set C2=10
    set C3=100
    set /P P=" Frequency (Hz): "
    call :line610
    set /A F=%V%
    if %F% neq 0 goto :line510
    if /P P=" Period (seconds): "
    call :line610
    set /A T=%V%
        if %F%==0 (
        if %T%==0 (
            echo ???
            goto :menu
            )
        )
    if %F%==0 set /A F=1/%T%
:line510
    set /P P=" Duty cycle (in %%, must be >50 %% and not be =<100 %%): "
    call :line610
    set /A DC=%V%
    if %DC% leq 50 echo  Error duty cycle range ! && goto :line510
    if %DC% geq 100 echo  Error duty cycle range ! && goto :line510
    set /P P=" Value of R2 (ohms): "
    call :line610
    set /A R2=%V%
    if %R2% lss 1000 echo Note: R2 should be greater than 1000 ohms)
    set /A R1=(%R2%*2*%DC%-100*%R2%)/(100-%DC%)
    echo  R1 = %R1% ohms
    set /A C1=1440000000/(%F%*(%R1%+2*%R2%))
    echo  C1 = %C1% nF
    goto :line410

:line610
    rem --- INPUt SUBROUTINE ---
    set /A V=%P%
    exit /B

:line670
    echo.
    echo  Enter the following components:
    exit /B

:line690
    cls
    exit /B

:line700
    rem --- CIRCUIT ---
    call :line690
    if %G% equ 2 goto :jump
    set /A C1=%C1%*1000000
:jump
    echo NE555/5-15V   ^^ +Vcc              ASTABLE 555 TIMER
    echo 7555 /3-18V   ^|                       R1=%R1% ohms
    echo   +--------+--+-------+               R2=%R2% ohms
    echo   ^|        ^|  ^|       ^|               F =%F% Hertz
    echo  R1      -------      ^|               C1=%C1% nF
    echo   +-----^|7 8  4 ^|     ^|               C2=%C2% uF
      echo   ^|  +--^|6      ^|     ^| Output        C3=%C3% nF
    echo  R2  ^|  ^|  555 3^|-------------^>
    echo   +--+--^|       ^|     ^|
    echo  +^|     ^|2  1  5^|--+  ^|
    echo  C1      -------   ^|  ^|
    echo  -^|         ^|     C2 C3
    echo   +---------+------+--+
    echo             ^|
    echo        Gnd ===
    echo.
    if %G%==0 echo           No active input data ...
::    if %G% equ 1 echo ?
::    if %G% equ 2 echo ?
    pause >null
    exit /B

:line910
    echo.
    set /P Q="  Circuit - (Y)es or (N)o: "
    exit /B

:starline
    echo  *****************************************************************************
exit /b


Je to tu priamo aj ako txt súbor:

555.txt (4,22 kb)

Stano, vďaka za túto zrealizovanú "srandu" !!! Batchfile je to skutočne šikovný - teda ak niekto s ním vie poriadne narábať.

______________________________________________________

Vaše hodnotenie, Rate post:

Procesory a ich spotreba.

By Administrator at septembra 12, 2022 11:11
Filed Under: Non-Atari

 

má plno rečí o zelených technológiách a znižovaní spotreby el.energie, tak sa teda krátko obzriem na oblasť počítačovú.

Pred mnohými rokmi som mal tú "česť" mať v práci v miestnosti 5 x 5m jeden počítač s procesorom P4 Prescott (takt 3GHz). Celková spotreba hodne vysoká (tipujem 300W), po 8 hodinách bolo v miestnosti skutočne nepríjemne teplo - výstupný vzduch zo zdroja mal teplotu fénu - a to mašina bežala denne len tých 8 hodín, pri nepretržitej prevádzke by sme tam mohli ako vedľajší produkt trebárs sušiť ovocie, radšej sme (teda keď sa dalo) ostatné 3 počítače vypínali pretože toto naozaj bola silná káva. A radi sme robili mimo kancelárie ... netburst proste bola slepá cesta, nakoniec to uznal aj samotný Intel a tak sme si na chvíľu vydýchli. Aj ja, keď sme počítač po roku konečne dali preč. Viem, asi to málokto zažil na vlastnej koži (ja áno), je to už dávno, ale hovorím - od tohoto ruky preč !

Teraz máme (Intel) zase procesory s podobným príkonom a k tomu budú videokarty s príkonom - ešte dvojnásobným, ak nie viac. Tak na toto bude naozaj už treba klimatizácia, jedna vec vyvoláva priamu závislosť na veci druhej, inak sa to neuchladí - teda ak nechcete sedieť v miestnosti s nohami ponorenými v lavóre zo studenou vodou, inak biedne zahyniete.

Teraz si dovolím odskočíť na malé 8-bit Atari, na atariage urobili pre disketovú jednotku Atari 1050 zobrazovač (2x sedemsegmentový displej) pre zobrazenie čísla stopy. Všetko O.K. - až na to že k tomu použili výkonný 32-bitový procesor na mini doske - zobrazovanie stopy beží na 600MHz procesore ..., pritom samotný procesor disketovej jednotky beží na 1MHz, teda na hodnote 600x menšej. Dôvod ? Načo optimalizovať keď to takáto doska hravo zmákne, ale takéto riešenie sa mi skutočne nepozdáva. (Je to také niečo ako s dynamitom na komára ...)

Tak isto chápem ak si niekto postaví simulátor disketovky, ale už aj tu idú procesory niekde na hodnote 16MHz /Arduino/, to ešte ako tak chápem, ale používať na to Malinu s taktom 800MHz (a vyššie) mi pripadá už naozaj hodne uletené (a netýka sa to iba Atari, sú aj iné značky starších počítačov).

Niečo je v takto nastavených systémoch zle a to v prvom, druhom a aj treťom príklade - buď na riešenie "nejsou lidi", alebo je všade príliš ľudí typu nášho podareného "ministra" financií ... a potom sa ide sa cestou ľahšieho odporu (alebo nekompetentných rozhodnutí).

Mne skôr vychádza že používaním starších mašín v niektorých prípadoch v dnešnej dobe skôr vo výsledku elektrinu šetríme, nemáte ten dojem ? (Nemyslím tým samozrejme dnes používať Prescott ..., tomu je dobre tam kde je, t.j. niekde vo vitríne.)

A postoj k neúmernému nárastu spotreby el.energie ? Je pštrosí, mám známeho ktorý tomu hovorí: "Škoda mlčať ..."

Všeobecne sa teraz nakupujú priamotopy, takže toto je asi cesta do budúcnosti.

Alebo príde zákaz zapínať tieto žravé počítače v rámi v párne, alebo nepárne dni ?

(Ešteže máme stále k dispozícii 8-bity ...)Foot in mouth

____________________________________________________________

Vaše hodnotenie, Rate post:

09_2022 Blog, Notes.

By Administrator at septembra 04, 2022 11:13
Filed Under: Blog

04.09.2022

Tak si počkáme čo do zajtra "vymyslí" strana "múdrosráčov" (OĽaNO). A že to zase bude hovadina je viac ako isté - proste na viac nemá nikto z nich. Strana amatérov a katolibancov.

__________

Ľavicoví "intelektuáli" v Nemecku zbroja proti K-Mayovi a neprijateľný je pre nich Winnetou. Ohromné, akurát na celom mi vadí to že s tým čo sa deje na Ukrajine pritom zjavne nemajú najmenší problém. Pos...ný svet.

__________

Urobil som dnes drobotinu - program pre výpočet nezaťaženého odporového deliča pre 3 odpory v sérii, občas treba mať k dispozícii aj takéto veci, hlavne ak potrebujeme nastaviť nejaké komparátory ktoré používajú nielen hornú ale aj spodnú hranicu nastavenia, ak pripojíme na takýto delič oepračný zosilňovač tak podmienky nezaťaženého výstupu takéhoto deliča sú splnené. Program som vložil do pôvodného článku deliča s 2 odpormi, je umiestnený na konci článku. Veľa zábavy !

SBC6502 - 22 - software-Basic-programs. Odporový delič - Resistance divider.

_____________________________________________________

05.09.2022

Manipulátorom a vydieračom sa jednoducho neustupuje, napísal na sociálnej sieti predseda výboru pre hospodárske záležitosti Peter Kremský z OĽaNO na adresu strany SaS. Súhlas, až na tú malú drobnosť že vydieračom je IM spolu s OĽaNO ...

___________________________________________________________

08.09.2022

V poslednej dobe krátko za sebou dve milé stretnutia, jedno s človekom ktorému som v marci 1993 predal môj komplet Atari /vydržal u neho len rok/, ale napriek tomu si to vtedy užil. Druhé stretnutie bola skutočná náhoda, objednal som si niečo na bazoši a aha! vykľul sa tu bývalý kolega z inej firmy, kedysi sme úzko pracovne spolupracovali.

___________________________________________________________

12.09.2022

Maličký pokec na danú tému, niečo je zle nastavené:

Procesory a ich spotreba.

_____________________________________________________

14.09.2022

Oddychový basic program pre SBC6502 /dtto UK101/, výpočet - astabilný 555 timer:

SBC6502 - 57 - basic programs - Astable 555 timer calculator.

_____________________________________________________

20.09.2022

Dnes "trhám" nový rekord, prišlo (odchytených) 640 spamových mailov (sic !) za jeden deň ..., všetky smerovali na text z 12.09.2022.

____________________________________________________________

26.09.2022

Fourierova analýza - na SBC6502:

SBC6502 - 58 - basic programs - Fourier analyze.

_____________________________________________________

27.09.2022

Prevedená oprava programu v článku z 26.09.2022.

_____________________________________________________

Vaše hodnotenie, Rate post:

Info o autorovi

Volám sa Igor Gramblička, bydlisko: Bratislava, Slovakia. Môj nick: Igi. Blog je o mojich záujmoch, predtým som pracoval ako IT špecialista na počítačové siete a redakčné systémy pre viaceré denníky - až som pred rokmi nakoniec v jednom z nich zakotvil a kde som to potiahol až do konca mojej profesnej kariéry.

Rok, mesiac, počet článkov: